<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    <br>
    <blockquote
cite="mid:CAH+1EB8JXgORO7VrYNqNZEAXyFX8AMePJE1AeVOnCc=Q98b2gQ@mail.gmail.com"
      type="cite"><br>
      <div class="gmail_quote">On Tue, Aug 16, 2011 at 4:42 AM, john
        Millican <span dir="ltr">&lt;<a moz-do-not-send="true"
            href="mailto:john@millican.us">john@millican.us</a>&gt;</span>
        wrote:<br>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          <div>
            <div class="h5">On 8/15/2011 5:48 PM, john Millican wrote:<br>
              <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
                0.8ex; border-left: 1px solid rgb(204, 204, 204);
                padding-left: 1ex;">
                Hello,<br>
                Asterisk 1.4.38<br>
                Linux version 2.6.9-89.31.1.EL &nbsp; CentOS<br>
                <br>
                Trying to get variables into a dial plan from AMI. &nbsp;I
                have tried all sorts of combinations,entering them after
                making a connection to ami through telnet, of the many
                available examples on <a moz-do-not-send="true"
                  href="http://voip-info.org" target="_blank">voip-info.org</a>
                such as:<br>
                Action: Originate<br>
                Channel: sip/xxxxxxxxxx@xxxxxxx<br>
                MaxRetries: 2<br>
                RetryTime: 60<br>
                WaitTime: 30<br>
                Context: test1<br>
                Exten: acs1<br>
                Priority: 1<br>
                CallerID: xxxxxxxxxx<br>
                Account: MyTest<br>
                Command: Set(var1=123456)<br>
                Command: Set(var2=54321)<br>
                <br>
                also tried:<br>
                Var:<br>
                Variable:<br>
                SetVar:<br>
                <br>
                Each individually for the two variables I need and both
                on the same line separated by a | or a ,<br>
                Always when I hit return twice to give the \r\n\r\n &nbsp;The
                call is successful but where I have<br>
                exten =&gt; acs1,n,NoOp(Vars = ${var1}, ${var2});<br>
                in my dialplan what I get is:<br>
                [2011-08-15 17:20:28] &nbsp; &nbsp; -- Executing [acs1@test1:2]
                NoOp("SIP/xxxxxxx-00000451", "Vars = | ") in new stack<br>
                Obviously not what I was hoping for.<br>
                <br>
                Any help would be greatly appreciated.<br>
                <br>
                TIA,<br>
                JohnM<br>
                <br>
                <br>
              </blockquote>
            </div>
          </div>
          Ok so I figured it out, It was me being dumb!<br>
          Proper format is indeed:<br>
          Variable: var1=23456|var2=246810<br>
          which I would have sworn I tried and it failed but, I started
          at the beginning again and voila!
          <div>
            <div class="h5"><br>
              <br>
              JohnM<br>
              <br>
            </div>
          </div>
        </blockquote>
      </div>
    </blockquote>
    Un top posting for readability<br>
    On 8/16/2011 8:33 AM, Amol Vedak wrote:
    <blockquote
cite="mid:CAH+1EB8JXgORO7VrYNqNZEAXyFX8AMePJE1AeVOnCc=Q98b2gQ@mail.gmail.com"
      type="cite">Hi John,<br>
      <br>
      I kind of facing the same problem that you were facing.<br>
      I am using similar configuration as you are for asterisk.<br>
      I am using java-asterisk library to communicate with asterisk.<br>
      In my code I am setting two variables (PIN, MREQID) and trying to
      access them in dialplan (dialplan shown below).<br>
      When I send command to Asterisk to orginate, I get following
      result (result shown below). I am wondering how should get access
      to individual variable data. I was wondering if I should use
      Set(var,x,y) method to pull out the part which is necessary for
      me. But wasnt sure if thats the right way.<br>
      <br>
      RESULT<br>
      &nbsp;-- Executing [login@authcheckrohan:5]
      Set("SIP/softphonerohan-00000060", "PIN=3408|MREQID=1") in new
      stack<br>
      [Aug 16 17:53:06] WARNING[15739]: pbx.c:1344 pbx_exec: The
      application delimiter is now the comma, not the pipe.&nbsp; Did you
      forget to convert your dialplan?&nbsp; (Set(PIN=3408|MREQID=1))<br>
      &nbsp;&nbsp;&nbsp; -- Executing [login@authcheckrohan:6]
      Set("SIP/softphonerohan-00000060", "MREQID=") in new stack<br>
      <br>
      <br>
      DIALPLAN<br>
      exten =&gt; login,1,NoOp();<br>
      ;exten =&gt; login,n,SayNumber(${PIN})<br>
      exten =&gt; login,n,Set(E=${PIN})<br>
      exten =&gt; login,n,Verbose(${${E}_PIN})<br>
      exten =&gt; login,n,Verbose(${E})<br>
      exten =&gt; login,n,Set(PIN=${PIN})<br>
      exten =&gt; login,n,Set(MREQID=${MREQID})<br>
      exten =&gt; login,n,SayNumber(${MREQID})<br>
      <br>
      Have you done it differently?<br>
      <br>
      Thanks &amp; Regards,<br>
      Amol</blockquote>
    <br>
    I am connecting to the AMI from a C# app that was built by others
    but I am using the same information and format as is used for a
    standard telnet connection.&nbsp; What eneded up working is sending
    Variable: var1=xxxx|var2=xxxxx|var3=xxxx as the last element(I do
    not think it is important that it be last though).&nbsp; This is how it
    ended up in C# after having established the connection:<br>
    //Tell asterisk who to call and to connect them to the IVR<br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    clientSocket.Send(Encoding.ASCII.GetBytes("Action:
    Originate\r\nChannel: sip/" + phoneNum1 +
    "@&lt;provider&gt;\r\nMaxRetries: 2\r\nRetryTime: 60\r\nWaitTime:
    30\r\nContext: &lt;the context&gt;l\r\nExten: &lt;the
    exten&gt;\r\nPriority: 1\r\nCallerid: XXXXXXXXXX\r\nAccount: &lt;CDR
    Accountcode&gt;\r\nVariable: var1=" + memberNum +"|var2=" +
    phoneNum1 + "|var3=" + phoneNum2 + "\r\n\r\n"));<br>
    <br>
    Then in my Dialplan I just use ${var1} ,${var2} , and ${var3}&nbsp; where
    I need them.<br>
    <br>
    Hope this helps.<br>
    JohnM<br>
  </body>
</html>