<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">I have done this successfully in 2 ways depending on your requirements.&nbsp; Usually, I just set the callerid number right in the SIP, this is the easiest and cleanest
 in my opinion.&nbsp; Worth mentioning that I always set the callerid in the SIP regardless, this way I know that internal calls, trunk calls, whatever are clean when it rings on any phone (including internal).&nbsp; In this case my DID number (block of 100) are easily
 mapped to my extensions (forward planning during setup) because the extension is the last 4 digits of the DID.&nbsp; This way in the default context I can say exten =&gt; _12345XX,1,Goto(default,${EXTEN:3},1) where the extension would be 45XX.&nbsp;
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">The second way that I have done this is by using the Asterisk internal database (no API or outside DB to worry about).&nbsp; Then just simply do a DB lookup for
 the proper callerid before routing the call out.&nbsp; Where I have had to use this is when multiple phones are grouped (multiple groups) to share a DID number for their callerid.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">***********************************************<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Sam Lutgring<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Director of Informational Technology Services<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D">Calhoun Intermediate school district<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"><a href="mailto:lutgrins@calhounisd.org"><span style="color:blue">lutgrins@calhounisd.org</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:#1F497D"><a href="http://www.calhounisd.org"><span style="color:blue">www.calhounisd.org</span></a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> asterisk-users-bounces@lists.digium.com [mailto:asterisk-users-bounces@lists.digium.com]
<b>On Behalf Of </b>Roland<br>
<b>Sent:</b> Tuesday, March 27, 2012 4:59 AM<br>
<b>To:</b> asterisk-users@lists.digium.com<br>
<b>Subject:</b> [asterisk-users] Outbound DID: in sip.conf or dialplan or db?<o:p></o:p></span></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">I am setting up my dialplan with quite some outbound numbers. We have a block of 100 DID's, for which some of them will go direct to specific phones. I am struggling how to solve this, so I am searching for a little advice. These are my
 concerns.<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">I could set the DID in the sip.conf using something like:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">callerid=&quot;137-Roland&quot; &lt;31229253137&gt;<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">137 would be my extention number here.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">I think the downside of this is, that I should configure this for each SIP account. I could specify a default callerid, which our main DID, in a template, but then people will see this general ID when I call internal extentions as well.
 This way the receiver cannot see my extention number.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">Other solution would be to specify my DID in the dailplan. I tried this solution, which works:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">exten =&gt; _00Z.,1,NoOp(Call Received from ${CALLERID(num)} to ${EXTEN:1})<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">exten =&gt; _00Z./Jeroen_S,2,Set(CALLERID(num)=31229700210)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">exten =&gt; _00Z./Roland_odA,2,Set(CALLERID(num)=31852013900)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">exten =&gt; _00Z./Schoolshopper,2,Set(CALLERID(num)=31852013900)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">exten =&gt; _00Z.,2,Set(CALLERID(num)=31229700203)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; same =&gt; n,GotoIf($[${CALLERID(num)}=31852013900]?otconnect:voys)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; same =&gt; n(otconnect),Set(OUT=999210485)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; same =&gt; n,Goto(dodial)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; same =&gt; n(voys),Set(OUT=143810001)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">&nbsp; same =&gt; n(dodial),Dial(SIP/${EXTEN:1}@${OUT})<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">Upside is that I can be more specific in routing. The same handset could have different DID's, but I think usually the DID is bound to a SIP account. So I would probably create a second SIP account if a user needs an extra DID anyways.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">The downside in my opinion is that my Dialplan will be filled with around 30 extra lines with account specific stuff. I would rather keep my dialplan code clean. Also when I would have more patterns that can be matched, I have to specify
 them for this pattern as well. That would already take around 60 lines of extra code.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">I have considered an AGI call to fetch the data from a database. But wouldn't this be a higher risk? When the database fails or is too slow, it will not work? I would rather use mysql than the asterisk db, because i can manage mysql easy
 with phpmyadmin.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal">Any suggestions would &nbsp;be appreciated! Am I missing any options here?<o:p></o:p></p>
</div>
</div>
<br>
<hr>
<font face="Arial" color="Black" size="1">This email is intended only for the use of the addressee(s) named herein. It may contain legally privileged and confidential information. If you are not the intended recipient, or an authorized representative of the
 intended recipient, you are hereby notified that any review, copying or distribution of this email and its attachments, if any, is strictly prohibited. If you have received this email in error, please immediately notify the sender by return email and delete
 this email from your system. Thank you.<br>
</font>
</body>
</html>