[asterisk-users] Polycom 601 and Paging

Brian Vincent (C) VincentB at coppercolorado.com
Tue Jul 18 14:09:12 MST 2006


I have these instructions on the wiki in the comments section.  I had a hard time following the directions too, but I finally got it to work:

We've got 3 things going on with setting up Auto Answer and Ring Answer. Let's detail this process from beginning to end using Ring Answer as our example. (Auto Answer isn't much different except you want to make sure step #2 below goes to class 3 rather than 4, and that class 3 is set up as described elsewhere which is the same as the one in the ipmid.cfg file from krisk.org.) 

1. First, use the SIPAddHeader() directive in Asterisk to properly alert the phone. In my situation, I have 10 phones with 2-digit extensions. I want to call each phone by prefixing the extension with a "1" in order to activate the intercom. For example, if I dial 126 I want it to put extension 26 on speakerphone. So go into extensions.conf and make sure you create a new section like this: 
  <a  href='icm-auto-answer'>icm-auto-answer </a  href='icm-auto-answer'>
  ;intercom 
  exten => _12x,1,SIPAddHeader(Alert-Info: Ring Answer) 
  exten => _12x,2,Dial(sip/${EXTEN:1:3}) 
  exten => _12x,3,Hangup 
  exten => _12x,102,Hangup 

Then make sure in your from-internal section of extensions.conf you have a include => icm-auto-answer 

2. Okay, see how the SIPAddHeader includes "Ring Answer"? That word or words will be matched by alertInfo in sip.cfg in order to figure out what to do. You are using the config files from krisk.org listed above, right? If not, go get them now. I'll wait. So in sip.cfg in the <voIpProt><SIP> section you need a line like: 

  <alertInfo voIpProt.SIP.alertInfo.2.value="Ring Answer" voIpProt.SIP.alertInfo.2.class="4"/> 

The value parameter must match whatever you use in the SIPAddHeader string. In this case they're both "Ring Answer". You could just as easily replace both with the word "Foo" or "RA". 

3. Now, the alertInfo tag will match that value and then go to the "class" value to figure out what to do. Se we need to make sure class="4" is set up properly. You could probably set up class 4 in sip.cfg, but mine lives in ipmid.cfg. So go into ipmid.cfg and locate the <ringtypes> section. Below that tag (and before it's corresponding </ringtype> closing tag) you need to make sure class 4 is set up right. You should have this line: 
 <RING_ANSWER se.rt.4.name="Ring Answer" se.rt.4.type="ring-answer" se.rt.4.timeout="1000" se.rt.4.ringer="2" se.rt.4.callWait="6" se.rt.4.mod="1"/> 

The notes above describe that line. The key is that this is class 4 as noted by the 3rd part of the value names - se.rt.4.name. I'd like to add that the keyword "RING_ANSWER" is meaningless, it's just a human-readable tag. 

Got all that? The SIPAddHeader of "Ring Answer" hits the <alertInfo> tag to figure out which class to go to. Then the class in ipmid.cfg says, "Oh, I'm a "ring-answer" type and my firmware knows what to do with that type." 

One test you can do is to connect to asterisk ($ asterisk -r), bump your verbosity up (<tt>set verbose 6</tt>), and try to place a call using that context from step #1. You'll see one phone calling another and within the Asterisk CLI you should see the following message appear: 
   - Executing SIPAddHeader("SIP/20-86bc", "Alert-Info: Ring Answer") in new stack<br /> 
Extension Changed 20 new state InUse for Notify User 26<br /> 
   - Executing Dial("SIP/20-86bc", "sip/26") in new stack<br /> 
   - Called 26<br /> 
   - SIP/26-0448 is ringing<br /> 
   - SIP/26-0448 answered SIP/20-86bc<br /> 
   - Attempting native bridge of SIP/20-86bc and SIP/26-0448 

If you don't see that Alert-Info: Ring Answer being sent, then you know you haven't gotten the first step right. 

Also, I made the mistake of putting some comments into the .cfg files and the comments seemed to screw up the parser. It ignored seemingly random lines (i.e. non-comment ones). I'm not a complete moron since I've been writing XML for 6 years (and HTML for 11) but it goes to show how careful you should be. Anyway, I use "xmllint" on config files now before rebooting the phones to make sure I didn't make a dumb typo.
-------------------
Brian Vincent
Copper Mountain Telecom
vincentb at coppercolorado.com 

______________________________________________________________________________________________________________

Confidentiality Warning: This message and any attachments are intended only for the use of the intended recipient(s), 
are confidential, and may be privileged. If you are not the intended recipient, you are hereby notified that any review, 
retransmission, conversion to hard copy, copying, circulation or other use of this message and any attachments is strictly 
prohibited. If you are not the intended recipient, please notify the sender immediately by return e-mail, and delete this 
message and any attachments from your system. Thank you.
______________________________________________________________________________________________________________





More information about the asterisk-users mailing list