sorka Posted March 6, 2019 Author Posted March 6, 2019 13 hours ago, io_guy said: Thanks. I did find that thread a few days ago. Was hoping it would be more obvious given that every other interface that talks to the IT-100 or EVL boards already support virtual keypad commands. Even if nodelink only supported it via a an http request with a simple json format that takes a string of consisting of the typical keypad characters. Is this something we can add to the dsc module in nodelink? Is it open source?
io_guy Posted March 6, 2019 Posted March 6, 2019 You're the 3rd person to ask for it in 8 years so I wouldn't say it's a demanded feature. I'll look into it for a future version.
sorka Posted March 8, 2019 Author Posted March 8, 2019 On 3/6/2019 at 1:50 PM, io_guy said: You're the 3rd person to ask for it in 8 years so I wouldn't say it's a demanded feature. I'll look into it for a future version. I suspect most people just work around it when they figure out it isn't supported. It's not a make or break feature. All I really need it for is auto bypassing certain windows that I open when the alarm is not armed.
io_guy Posted March 8, 2019 Posted March 8, 2019 It's not clean to implement as only the EVL API gives feedback on what zones are bypassed and it's only at specific times it does that. I've never actually used bypass myself - how do you "unbypass" a zone?
sorka Posted March 8, 2019 Author Posted March 8, 2019 1 hour ago, io_guy said: It's not clean to implement as only the EVL API gives feedback on what zones are bypassed and it's only at specific times it does that. I've never actually used bypass myself - how do you "unbypass" a zone? It's done through the keypad. *1<zone># So to bypass zone 5, enter *105#. It works as a toggle, so to undo the bypass, you just enter the same key sequence.
sorka Posted March 8, 2019 Author Posted March 8, 2019 http://forum.eyez-on.com/FORUM/download/file.php?id=224&sid=f1711254504d00145a1d907011272b5a Section 3.1 simple ascii protocol with no checksum. Could I enable repeater and send this out through a network resource? Would this be an http send and what would the header look like?
io_guy Posted March 8, 2019 Posted March 8, 2019 I have the APIs, that's what I wrote against. The API you have there is not correct, it's for Ademco. I'm not sure what's different from the link I sent you. That's what you'd do there. A network resource to the DSC repeater port with payload 0711*191#B1\r\n
sorka Posted March 8, 2019 Author Posted March 8, 2019 I tried a network resource using TCP raw text pointed at the ip address of nodelink using port 4025 (repeater is enabled). That didn't work.
io_guy Posted March 8, 2019 Posted March 8, 2019 What was the string you sent? Should be c-escaped, not raw.
sorka Posted March 8, 2019 Author Posted March 8, 2019 I treated it with the following rule from section 3.1: "When a character is transmitted outside of the ^$ sentinels, it will be interpreted as a keystroke if it is within the set <0..9,#,*> and ignored otherwise." So I didn't encapsulate it within %$. I changed it to c escaped from raw but it made no difference. I'm probably still doing something wrong. The IP address in the network resource is the IP of the synology on my network running the container containing nodelink
sorka Posted March 8, 2019 Author Posted March 8, 2019 For kicks, I shutdown nodelink and redirected the request directly to the EVL4 at 192.168.1.134:4025 which made no difference, so I don't believe it's an issue with nodelink relaying the request.
io_guy Posted March 8, 2019 Posted March 8, 2019 I think you ignored my last post. You're reading the wrong API - that's for Honeywell/Ademco. Follow the topic I posted.
sorka Posted March 8, 2019 Author Posted March 8, 2019 Whoops. OK, here's the updated one but still not working.
sorka Posted March 8, 2019 Author Posted March 8, 2019 Also, I guess that connecting directly to the EVL4 would require me to do the session handshake which nodelink is already doing, so there's no point in me trying that. The last screen shot above is the latest request being sent to nodelink with repeater enabled.
sorka Posted March 8, 2019 Author Posted March 8, 2019 I don't see any logging on the nodelink when I run this. I have it set to debug level. Does nodelink log anything that I should be able to see?
sorka Posted March 8, 2019 Author Posted March 8, 2019 Tried a bunch of other commands. Arming partition for example: 0301C4\r\n So it's not specific to keypad. Nothing seems to make it. Pressing arm on the Partition 1 from the ISY works. Really not sure why this isn't working. Correct IP, correct port, repeater enabled, TCP, C-Escaped. What am I missing?
sorka Posted March 8, 2019 Author Posted March 8, 2019 So if I turn off nodelink and connect directly to the EVL4 (192.168.1.134:4025) and send a login request (obscured my password with #s), I get a login accepted. Then I sent an arm away command and that succeeded. At this point I believe I've done everything right. When nodelink is running, I can control the DSC via the partition buttons on the ISY so I know it's all connected, but nodelink seems to not accept the "0301C4\r\n" directed at 192.168.1.104(the nas running nodelink) at 4025. I'd just send it directly the EVL4 if it wasn't for the fact that the EVL4 won't allow more than 1 session at at time. io_guy, I think the repeater on Nodelink is broken. It may have worked on DSCLink, but I don't think it works on Nodelink. Direct TCP connection to EVL4 via tcp terminal. 5053CD 005######6E <--- Login request with password 5000052A 5051CB <--- login accepted here. 50202029 0301C4 <--- Sending arm request here. 50003028 5108301 6561D2 60900837 60900736 51081FF 6551D1 6100082F 6100072E 6531CF
sorka Posted March 8, 2019 Author Posted March 8, 2019 Ugh! Such a stupid mistake. Needed to add port 4025 to the docker container's bridge. All working now.
Recommended Posts
Archived
This topic is now archived and is closed to further replies.