Trouble Receiving from Keypad
jason_the_adams
Posts: 108
Hey all,
I'm using the following code to call a keypad:
Then here is my string handler for the panels:
Now I've placed breaks in the String event, but it's as if it's simply receiving nothing from the panel; the STRING event is never engaging, and therefore nothing is happening... I'm straight up confused, and certain there's likely something small or simple I'm forgetting. Please help.
Thanks all!
I'm using the following code to call a keypad:
SEND_COMMAND dvTPANELS[nLAST_PANEL],"'@AKB-;Enter Name:'" WAIT_UNTIL (!nPROPERTY_WAITING_ON_INPUT[nLAST_PANEL]) { sTEMP_LUTRON_INFO[nLAST_PANEL].cTITLE_OFF = sUSER_INPUT[nLAST_PANEL] sTEMP_LUTRON_INFO[nLAST_PANEL].cTITLE_ON = sUSER_INPUT[nLAST_PANEL] } }
Then here is my string handler for the panels:
STRING: { STACK_VAR INTEGER nLAST_PANEL nLAST_PANEL = GET_LAST(dvTPANELS) IF(nPROPERTY_WAITING_ON_INPUT[nLAST_PANEL]) { sUSER_INPUT[nLAST_PANEL] = "sUSER_INPUT[nLAST_PANEL],DATA.TEXT" SELECT { ACTIVE(FIND_STRING(sUSER_INPUT[nLAST_PANEL],'KEYB-',1)): REMOVE_STRING(sUSER_INPUT[nLAST_PANEL],'KEYB-',1) ACTIVE(FIND_STRING(sUSER_INPUT[nLAST_PANEL],'KEYP-',1)): REMOVE_STRING(sUSER_INPUT[nLAST_PANEL],'KEYP-',1) } OFF[nPROPERTY_WAITING_ON_INPUT[nLAST_PANEL]] } }
Now I've placed breaks in the String event, but it's as if it's simply receiving nothing from the panel; the STRING event is never engaging, and therefore nothing is happening... I'm straight up confused, and certain there's likely something small or simple I'm forgetting. Please help.
Thanks all!
0
Comments
As part of my STRING events on panels, I do a "SEND_STRING 0, DATA.TEXT" while debugging just to see exactly what is coming in. If you get nothing, it's going to the wrong port. If you get something besides "KEYP-", the text field is misnamed.
It's quite frustrating, however, as I'm pretty sure the STRING event of DATA_EVENT[dvTPANELS] is not happening at all. I know the DATA_EVENT is fine, though, as the ONLINE events within the same DATA_EVENT are working just fine.
Any ideas on potential reasons why the keyboard would be displaying, yet nothing is getting to the Panel? I can show more code if it would help.
Is there a clever way to do a Data Event on the different port of the same device, without creating a whole new Device? For example, checking port 1 of a Device address of 10109:3:1?
If not, then suck. But thanks!
dvPanelBase.NUMBER = dvPanel.NUMBER
dvPanelBase.PORT = 1
dvPanelBase.SYSTEM = dvPanel.SYSTEM
Then trap the STRING event for dvPanelBase.