xap dialer
avi_dave
Junior Member
Anybody can gimmi a few pointers on how to handle a xap dialerf system? as in syntax variables and so forth and dunno how to umm store pressed buttons until the call button is executed
Comments
-
First you have to create a string from a keypad, then send it.
Check out:
cKEYPAD_ENTRY = ITOA(BUTTON.INPUT.CHANNEL - 100)
the buttons on the keypad are 100-110
so subtract 100 and assign that value to a keypad variable, then update the cPHONE_NUMBER. Then send the value to the touch panel in the dial button event.
You can also delete and clear the phone number.DEFINE_CONSTANT // ATC Functions atcDEV_XAP800 = '#5' //XAP 800 atcDEV_XAP400 = '#7' //XAP 400 atcDEV_ID = '0' atc0 = 100 atc1 = 101 atc2 = 102 atc3 = 103 atc4 = 104 atc5 = 105 atc6 = 106 atc7 = 107 atc8 = 108 atc9 = 109 atcSTAR = 110 atcPOUND = 111 atcCALL_ANSWER = 112 atcHANG_UP = 113 atcFLASH = 114 atcCLEAR = 115 atcBACKSPACE = 116 atcANSWER = 118 DEFINE_VARIABLE VOLATILE CHAR cXAP_RX[50] VOLATILE INTEGER iPHONE_OFF_HOOK VOLATILE CHAR cKEYPAD_ENTRY[1] VOLATILE CHAR cPHONE_NUMBER[255] DEVCHAN devATC_KEYPAD[] = {{vdvTPd,atc0},{vdvTPd,atc1},{vdvTPd,atc2},{vdvTPd,atc3},{vdvTPd,atc4}, {vdvTPd,atc5},{vdvTPd,atc6},{vdvTPd,atc7},{vdvTPd,atc8},{vdvTPd,atc9}, {vdvTPd,atcSTAR},{vdvTPd,atcPOUND}} BUTTON_EVENT[devATC_KEYPAD] { PUSH: { TO[vdvTPd,BUTTON.INPUT.CHANNEL] IF(BUTTON.INPUT.CHANNEL = atcSTAR) { cKEYPAD_ENTRY = '*' } ELSE IF(BUTTON.INPUT.CHANNEL = atcPOUND) { cKEYPAD_ENTRY = '#' } ELSE { cKEYPAD_ENTRY = ITOA(BUTTON.INPUT.CHANNEL - 100) } IF(iPHONE_OFF_HOOK = 1) { SEND_STRING dvXAP,"atcDEV_XAP400,atcDEV_ID,' DIAL 1 ',cKEYPAD_ENTRY,$0D" cPHONE_NUMBER = "cPHONE_NUMBER,cKEYPAD_ENTRY" SEND_COMMAND vdvTPa,"'TEXT11-',cPHONE_NUMBER" } ELSE { cPHONE_NUMBER = "cPHONE_NUMBER,cKEYPAD_ENTRY" SEND_COMMAND vdvTPa,"'TEXT11-',cPHONE_NUMBER" } } } BUTTON_EVENT[vdvTPd,atcFLASH] // Flash { PUSH: { TO[vdvTPd,BUTTON.INPUT.CHANNEL] SEND_STRING dvXAP,"atcDEV_XAP400,atcDEV_ID,' HOOK 1',$0D" } } BUTTON_EVENT[vdvTPd,atcCALL_ANSWER] // Call / Answer { PUSH: { TO[vdvTPd,BUTTON.INPUT.CHANNEL] IF(LENGTH_STRING(cPHONE_NUMBER) > 0) { SEND_STRING dvXAP,"atcDEV_XAP400,atcDEV_ID,' DIAL 1 ',cPHONE_NUMBER,$0D" } ELSE { SEND_STRING dvXAP,"atcDEV_XAP400,atcDEV_ID,' TE 1 1',$0D" } } } BUTTON_EVENT[vdvTPd,atcANSWER] // Answer { PUSH: { TO[vdvTPd,BUTTON.INPUT.CHANNEL] SEND_STRING dvXAP,"atcDEV_XAP400,atcDEV_ID,' TE 1 1',$0D" SEND_COMMAND vdvTPa,'@PPF-Incoming Call' IF(!iSYSTEM_POWER) { CALL 'SYSTEM ON' (* REV0 *) DO_PUSH(vdvTPa,14) (* SELECT ATC MODE *) } } } BUTTON_EVENT[vdvTPd,atcCLEAR] // Clear { PUSH: { cPHONE_NUMBER = '' cKEYPAD_ENTRY = '' SEND_COMMAND vdvTPa,"'TEXT11-',cPHONE_NUMBER" } } BUTTON_EVENT[vdvTPd,atcBACKSPACE] // Backspace { PUSH: { IF(LENGTH_STRING(cPHONE_NUMBER) > 0) { SET_LENGTH_STRING(cPHONE_NUMBER,(LENGTH_STRING(cPHONE_NUMBER) - 1)) } SEND_COMMAND vdvTPa,"'TEXT11-',cPHONE_NUMBER" } } BUTTON_EVENT[vdvTPd,atcHANG_UP] // Hang Up { PUSH: { TO[vdvTPd,BUTTON.INPUT.CHANNEL] cPHONE_NUMBER = '' cKEYPAD_ENTRY = '' SEND_COMMAND vdvTPa,"'TEXT11-',cPHONE_NUMBER" SEND_STRING dvXAP,"atcDEV_XAP400,atcDEV_ID,' TE 1 0',$0D" } } -
much appreciate it boss, much appreciated
-
Although the above code is for XAP units and for G4 panels, is there any reason for the phone number not to appear in the variable text box on a G5 panel, i have replaced the Text11 command with ^TXT-11,0 and when i put in a manual test string for a button event like SEND_COMMAND vdvTPa,"'^TXT-11,0, 123456'" it works and shows 123456 in the variable text box 11, but using the above code the CHAR cPHONE_NUMBER does not appear in the variable text box 11 but the code works and the unit dials and connects etc, what any i missing here any help greatly appreciated, i know it will be something simple, the code and variable text box both work on a TP4 touchscreens as i just copied and pasted previous working examples and changed the TEXT11- where ever it was used.
Categories
- All Categories
- 2.5K AMX General Discussion
- 922 AMX Technical Discussion
- 514 AMX Hardware
- 502 AMX Control Products
- 3 AMX Video Distribution Products
- 9 AMX Networked AV (SVSI) Products
- AMX Workspace & Collaboration Products
- 3.4K AMX Software
- 151 AMX Resource Management Suite Software
- 386 AMX Design Tools
- 2.4K NetLinx Studio
- 135 Duet/Cafe Duet
- 248 NetLinx Modules & Duet Modules
- 57 AMX RPM Forum
- 228 MODPEDIA - The Public Repository of Modules for Everyone
- 943 AMX Specialty Forums
- 2.6K AMXForums Archive
- 2.6K AMXForums Archive Threads
- 1.5K AMX Hardware
- 432 AMX Applications and Solutions
- 249 Residential Forum
- 182 Tips and Tricks
- 146 AMX Website/Forums