首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用Perl释放集合变量

用Perl释放集合变量
EN

Stack Overflow用户
提问于 2014-04-11 15:53:34
回答 1查看 819关注 0票数 1

有一个拨号计划,将来电以循环的方式连接到三个用户。

它使用curl发出webservice请求,如下所示:

代码语言:javascript
运行
复制
<action application="curl" data ="http://10.0.0.90:3081/routecall?number='${caller_id_number}' " inline="true" />

curl服务将调用方的数目添加为get param,并返回以下参数,这些参数由一个特殊字符"-“分隔:

例:汤尼·斯塔克-1002-1003-1005

  • 显示呼叫者名称(Tonny_Stark)
  • 要桥接的第一个客户端(1002)
  • 要桥接的第二个客户端(1003)
  • 要桥接的第三个客户端(1005)

我必须将此响应解析为不同的变量,并将其传递给桥操作。我编写了用于解析的Perl脚本如下:

代码语言:javascript
运行
复制
#!/usr/bin/perl5.8.8

$curl_response= $ARGV[0]; // The response from webservice.
$param_name = $ARGV[1] ;  // The parameter that is needed.

@params = split(/-/, $curl_response);


print  getParamValue();



sub getParamValue(){

if($param_name eq  "display_name")
{

  return $params[0];
}
elsif($param_name eq "first_cce")
{

  return $params[1];
}
elsif($param_name eq "second_cce")
{

  return $params[2];
}


}

对这个perl脚本的调用如下:

代码语言:javascript
运行
复制
  <action application ="perl" data= "firstcce.pl '${curl_response_data}' 'first_cce'}" />

需要perl脚本对桥操作的响应:

代码语言:javascript
运行
复制
<action application="bridge" data="{sip_contact_user ='${display_name_from_perl}'} [myid=bridge1]user/${first_cce_from_perl} | [myid=bridge2]user/${second_cce_from_perl}"/>

**但不知道perl脚本将如何返回值并将其赋值给变量,这些变量可以在桥操作中使用。**

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-14 16:56:46

明白了。回答我自己的问题。

在拨号计划中声明一个变量.

代码语言:javascript
运行
复制
<variable name="var_name" value =""/>

从Perl脚本访问它:

代码语言:javascript
运行
复制
 $session->setVariable("var_name",  $value);

修改Perl脚本如下:

代码语言:javascript
运行
复制
#!/usr/bin/perl5.8.8

$curl_response= $ARGV[0];

@params = split(/-/, $curl_response);

getParamValue();


sub getParamValue(){

 $session->setVariable("display_name",  $params[0]);

 $session->setVariable("first_cce", $params[1]);

 $session->setVariable("second_cce",$params[2]);

 $session->setVariable("third_cce" , $params[3]);   


}
1;

谢谢。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23017232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档