sdg.marinusvz
2024-08-29 16:12
So how it works is we put in an order (to the Kamstrup server, via http), and then we return, and you see the message that it is an attempt. And then if you do the same switch again (off or on AGAIN, like the first time), then we see there is an order and we get the result and return it. So it looks to you as if it comes back immediately, but actually it's just that we check how the order is doing and because the order has returned on the kamstrup server, we immediately give the message that the server gives us (failed)
What we normally do, is wait up to a minute and get the status of the order repeatedly and see if it finishes. If not, we return and say we have waited for the order to complete and timed out. But in the background, the order is still in the Kamstrup server. When you switch it to the same state again, we will not create a new order, but check on the status of the old order, until it finishes, whether that is successfully or with some error message.
sdg.marinusvz
2024-08-29 16:27
Ok, the reason for that was found.
sdg.marinusvz
2024-08-29 16:33
Right. So because there are 2 possible Digital Outputs on a Kamstrup meter and your bulk upload does not specify which one to choose, it defaulted to the first row of a select statement. However, the select statement was not ordered, so it didn't choose the inline contactor like it should have, but the relay.
sdg.marinusvz
2024-08-29 16:37
<MeterResults ref='http://xx.xx.xx.x0/utilidriver/api/orders/Ve7H7MEhCkyMPLHbAOIMvQ/executions/Uk8fFzcjH0GSyANMXO1wSQ/completed/' total='0' count='0'/>
sdg.marinusvz
2024-08-29 16:40
No, it doesn't just time out. It says specifically in the timeout message that he is waiting for the order to complete, and it didn't complete, so he returns.
sdg.marinusvz
2024-08-29 16:42
Last Edited 2024-08-29 16:43