Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.
Access Control IP Monitor
-
Hi,
I am having a access control. which is available on my local IP and using tcp/IP communication.
I would like to monitor that IP using Mango.
Can you please suggest me which protocol will be used to monitor the ip address.
(i Have tried with Backnet IP and tcp ip data source.)
Backnet ip giving error as "Cannot assign requested address (Bind failed)"
on BACnet discovery->Send Whols..
Is it possible to monitor an IP address(like ping) ? -
Hi Naresh,
It would take more work to get it to behave like a ping (I think there's some funny network layering to that), but you could check if a host is up using the TCP/IP data source.
I would put a Set Point Event Handler on a TCP/IP Data Source's "Data source exception" and then point it at a closed port on the host. That way when the host is down, we'll get a socket timeout exception instead of a connection refused. We'll point our set point handler at a virtual boolean data point, and perhaps lower the TCP/IP's Data Source Exception alarm level to Do not log (since this is a normal event for this data source and we'll keep the history in the virtual point). Lower the data sources retries to 0.
For the active action of the script, set point to scripted value:
//We need to return the event to normal so that it raises again next poll var dsEventType = new com.serotonin.m2m2.rt.event.type.DataSourceEventType(event.getReferenceId1(), 3); //<-- I found a bug in event.getReferenceId2() so I hardcoded for now com.serotonin.m2m2.Common.eventManager.returnToNormal(dsEventType, CONTEXT.getRuntime()); return event.getMessage().contains("SocketTimeoutException");
You will also need to have a point on the TCP/IP data source that is queryable, but you can have a query command of "".
If you host doesn't refuse connections on closed ports (instead ignores them), you could more simply check for a socket timeout exception event like we are, and use the inactive action to set to the binary point that the host is online again.
-
Hi Phildunlap,
I have received Access control tcp IP port(4370) and added data source and data points.I am able to ping my ip(192.168.0.80)
But each time i am getting value 0 with 4370 port , with different ports and after removing lanwire.
I have attached my data source and data point screens.
Please suggest if there is any issue in configuration?
-
"Queryable" should be checked on the point
-
Hi Phildunlap,
i have checked "Queryable" also but still getting 0 in all cases(right port number , wrong port number and after disconnecting lanwire).
-
Did you set up the event handler on the data source event, as I instructed? I don't see an image of your event handler there.