AXB-DTMF+ caller ID agony
in AMX Hardware
I need help from an expert on this box. AMX replaced the pcb in our AXB-DTMF+ because the thing would never send us any caller ID strings. Ever. Didn't ever get a single one.
Now that it has been replaced I will get a caller ID string from it, but only on rare occasions. Maybe 3 times out of every 10 times that I dial it at most. We have phones with caller ID built in on the same line and they display the caller ID EVERY time a call comes in, so it is not a problem with the phone service.
I have tried sending the ON-HOOK and OFF-HOOK commands. I assume that it needs to be on hook but I have had caller ID info show up after sending the OFF-HOOK command. I have turned auto answer off and that doesn't seem to make a difference either.
The programming examples in the documentation have nothing tricky in them. I have made a bare bones project to rule out any code issues.
Why why why does it only work occasionally?!!
Now that it has been replaced I will get a caller ID string from it, but only on rare occasions. Maybe 3 times out of every 10 times that I dial it at most. We have phones with caller ID built in on the same line and they display the caller ID EVERY time a call comes in, so it is not a problem with the phone service.
I have tried sending the ON-HOOK and OFF-HOOK commands. I assume that it needs to be on hook but I have had caller ID info show up after sending the OFF-HOOK command. I have turned auto answer off and that doesn't seem to make a difference either.
The programming examples in the documentation have nothing tricky in them. I have made a bare bones project to rule out any code issues.
Why why why does it only work occasionally?!!
0
Comments
Kevin D.
Could you provide details on how to do this?
DATA_EVENT[CALLER_ID] { ONLINE: { SEND_COMMAND CALLER_ID,'SET BAUD 9600,N,8,1' //SET BAUD RATE SEND_COMMAND CALLER_ID,'HSOFF' //SET HANDSHAKING WAIT 30 SEND_STRING CALLER_ID, "'AT+VCID=1',13,10" } STRING: { STACK_VAR INTEGER LOOP SEND_STRING 0, "DATA.TEXT" IF (FIND_STRING (DATA.TEXT,'DATE',1)) { FOR (LOOP=9 ; LOOP>=1 ; LOOP--) { CID[LOOP+1]=CID[LOOP] } REMOVE_STRING (DATA.TEXT,'DATE = ',1) CID[1].CID_DATE=LEFT_STRING (DATA.TEXT,(FIND_STRING(DATA.TEXT,"13",1)-1)) REMOVE_STRING (DATA.TEXT,'TIME = ',1) CID[1].CID_TIME=LEFT_STRING (DATA.TEXT,(FIND_STRING(DATA.TEXT,"13",1)-1)) REMOVE_STRING (DATA.TEXT,'NMBR = ',1) CID[1].CID_NUMBER=LEFT_STRING (DATA.TEXT,(FIND_STRING(DATA.TEXT,"13",1)-1)) REMOVE_STRING (DATA.TEXT,'NAME = ',1) CID[1].CID_NAME=LEFT_STRING (DATA.TEXT,(FIND_STRING(DATA.TEXT,"13",1)-1)) SEND_COMMAND TPs, "'WAKE'" SEND_COMMAND TPs, "'@TXT',71,CID[1].CID_DATE[1],CID[1].CID_DATE[2],'/',CID[1].CID_DATE[3],CID[1].CID_DATE[4],' - ',CID[1].CID_TIME[1],CID[1].CID_TIME[2],':',CID[1].CID_TIME[3],CID[1].CID_TIME[4],' - ',CID[1].CID_NAME,' - ',CID[1].CID_NUMBER[1],CID[1].CID_NUMBER[2],CID[1].CID_NUMBER[3],'-',CID[1].CID_NUMBER[4],CID[1].CID_NUMBER[5],CID[1].CID_NUMBER[6],'-',CID[1].CID_NUMBER[7],CID[1].CID_NUMBER[8],CID[1].CID_NUMBER[9],CID[1].CID_NUMBER[10]" SEND_COMMAND TPs, "'@PPN-NEW CALL'" } }No problem.. Of course, this is under the assumption that the caller ID string is a standard AT reply. It's worked on two different brands of modems I've tried it on.
It's a standard AT command to turn called ID on, so I would imagine the reply is standard.
Kevin D.