I need some input on creating a plugin to interface with an HID RFID badge reader system called the HID Edge Solo that?s meant for a single door. It?s a standalone IP based interface that doesn?t have an API that you can call and make web requests, but there are configurable end point URLs that you can configure the unit to call when certain events occur. These events are highly configurable and can pass along additional information such as a Date, Time, Person?s First Name, Person?s Last Name, and the Name of the Door. As an example, when an authenticated user?s RFID card is swiped, it can send an http request (originating at the HID Edge solo) to an endpoint. I?d like that endpoint to be the Vera.
To set the stage, in the past I?ve created a luup plugin (Serial port based) that monitors serial port traffic by using the code block of the implementation (I_*.xml) file and I feel comfortable with that paradigm. I’ve never written any IP based communication plugins. I started looking through existing plugins that use IP based communications instead of serial communications. My observations thus far is that the plugins I?ve looked at originate communication from the Vera and get responses back, which are then processed. However, in my use case, the Vera would be merely an endpoint. What are some techniques I could use to get this data through a plugin? Here?s what I was thinking:
[ul][li]Can I have Vera listen on a certain port for this device?s traffic? How does that work? What I don’t understand is what URL to call or how that information gets routed to my plugin (if that makes sense).
[/li]
[li]
Should I just create a variable associated with my plugin and have the HID reader call the variableset Luup Request URL? Then I could just watch for changes? This method I understand but am wondering if there?s a better way.
http://ip_address:3480/data_request?id=variableset&DeviceNum=6&serviceId=urn:micasaverde-com:serviceId:DoorLock1&Variable=Status&Value=1
[/li][/ul]
Any guidance would be appreciated!
Reference:
EdgeSolo User?s Guide (HTTP Parameter Substitutions, P42)
https://www.hidglobal.com/edge-solo-users-guide-v120-1