Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Serialization of CQC SMS Serial Interface Driver
#41
Dean, still having issues with the SMS driver, particularly with any Triggered Event or Scheduled Event.

Here is a Scheduled Event that I have that sends out the weather, daily. The event runs fine, however, only the first SMS message is sent, the second is never sent. As with above, running the Test on the action, the SMS is sent to both numbers. Additionally, if I have a test IV that has a button that sends two messages, both are sent.
[Image: Screen-Shot-2019-09-17-at-08-23-36.jpg]
Here is one of my Triggered Events that fires when the Garage OH door zone is opened. As with the above, only the first message is sent.

[Image: Screen-Shot-2019-09-17-at-08-25-08.jpg]

Here is the action:
[Image: Screen-Shot-2019-09-17-at-08-26-15.jpg]
Reply
#42
We may need to make it longer than 5 seconds. Ultimately, without some sort of indicator of when it's legal to send another, it's going to be hard to do this accurately.

One other thing to consider is that if events go off near each other, they can both be sending msgs. In theory, as long as we have a long enough wait in the driver, that should still work though.

I'll post another here in a bit with a nice long time, and let's see if this is really timing related or maybe something else. Maybe ten seconds between messages.

Of course, for the short term, set all these events up to log invocations, so that you can go back later and see how often they are triggering and such, so we can be sure they aren't doing anything crazy.
Dean Roddey
Explorans limites defectum
Reply
#43
As an FYI.. SMS driver is logging numerous events even with debugging disabled.

[Image: Screen-Shot-2019-09-17-at-18-27-08.jpg]
Reply
#44
Seeing these errors

[Image: Screen-Shot-2019-09-17-at-19-22-36.jpg]


[Image: Screen-Shot-2019-09-17-at-19-23-39.jpg]
Reply
#45
If you saw that, then the Busy field still must have been set. Though somewhat unrelated, you probably should do it like:

[codpe]
If Devices::WaitFieldVvalue(....)
// Send the message
Else
System::LogMsg(....., "Could not send SMS message");
EndIf;
[/code]

Or something along those lines, so that if it doesn't ever get the false busy, it will log something instead of trying to send the message anyway.

But, anyhoo, if you waited 30 seconds and still got that error that it's busy, that's not sounding right. I can't see how the busy flag could be left True, but I'll take another look at it.

If you want to set up the serial port server, and give me some temporary info I need to send some messages, then I can debug the driver form here against the actual hardware and see what's happening.
Dean Roddey
Explorans limites defectum
Reply
#46
(09-17-2019, 05:27 PM)Dean Roddey Wrote: If you saw that, then the Busy field still must have been set. Though somewhat unrelated, you probably should do it like:

[codpe]
If Devices::WaitFieldVvalue(....)
    // Send the message
Else
    System::LogMsg(....., "Could not send SMS message");
EndIf;
[/code]

Or something along those lines, so that if it doesn't ever get the false busy, it will log something instead of trying to send the message anyway.

But, anyhoo, if you waited 30 seconds and still got that error that it's busy, that's not sounding right. I can't see how the busy flag could be left True, but I'll take another look at it.

If you want to set up the serial port server, and give me some temporary info I need to send some messages, then I can debug the driver form here against the actual hardware and see what's happening.

Thanks, I'll PM you the details.
Reply
#47
As an FYI, WaitFieldValue is only available from the Cmd action.

[Image: Screen-Shot-2019-09-18-at-14-03-44.jpg]

WaitFieldValue is not available from the If/Else or If actions.

[Image: Screen-Shot-2019-09-18-at-14-03-56.jpg]


[Image: Screen-Shot-2019-09-18-at-14-04-08.jpg]
Reply
#48
Oh sorry. SafeWaitFieldValue is the version that returns a result. So use that guy. It should be the same otherwise I think. I had to create a separate one because there wasn't a parameter left for a 'fail if not' type flag.
Dean Roddey
Explorans limites defectum
Reply
#49
(09-18-2019, 02:10 PM)Dean Roddey Wrote: Oh sorry. SafeWaitFieldValue is the version that returns a result. So use that guy. It should be the same otherwise I think. I had to create a separate one because there wasn't a parameter left for a 'fail if not' type flag.

Hey Dean, any update on troubleshooting this driver?
Reply
#50
I need to get some changes done before I have a working system again, then we can do it. Tomorrow should be OK if you are around.
Dean Roddey
Explorans limites defectum
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  6.0.0 Interface Viewer - Action Trace Mark Stega 1 116 03-09-2021, 06:39 PM
Last Post: Dean Roddey
  Cannot Bind Interface to 80 gReatAutomation 1 455 11-05-2020, 04:18 PM
Last Post: Dean Roddey
  ClickPLC driver now failing after upgrade znelbok 2 408 09-21-2020, 10:48 PM
Last Post: znelbok
  Pentair driver tom 5 1,045 08-02-2020, 11:29 PM
Last Post: kblagron
  Marantz receiver driver (IP) dlmorgan999 6 1,036 05-15-2020, 03:32 PM
Last Post: dlmorgan999
  Variables Driver Client gReatAutomation 4 842 04-25-2020, 12:46 PM
Last Post: gReatAutomation
  Check Box widget on WebRIVA vs Interface Viewer bryanb 1 545 04-23-2020, 06:15 AM
Last Post: bryanb
  Reconfig of Driver Causes Built In Triggers to Fire gReatAutomation 2 644 03-25-2020, 04:09 PM
Last Post: gReatAutomation
  Lutron RadioRA2 Driver and Lutron Visor Control gReatAutomation 29 7,739 03-19-2020, 01:03 PM
Last Post: gReatAutomation
  Timers Driver / Field Time Image / Seconds gReatAutomation 1 615 03-16-2020, 05:48 PM
Last Post: Dean Roddey

Forum Jump:


Users browsing this thread: 1 Guest(s)