97成人免费视频,97视频免费公开成人福利,免费视频99,99婷婷,国产伊人久久,亚洲视频欧美,国产精品福利久久

 首頁 > 新聞 > 專家觀點(diǎn) >

FreeSWITCH小結(jié):關(guān)于export的原理介紹

2014-11-12 09:06:43   作者:   來源:CTI論壇   評(píng)論:0  點(diǎn)擊:


 Export原理

  普通export用法

  在dialplan中經(jīng)常會(huì)用到export,如下所示:
  <action application="export" data="myvar=test"/>

  上面的xml在執(zhí)行后,會(huì)在本地通道中修改如下:
  >myvar=test   
  >export_vars=<other_export_vars>,myvar

  在本地變量中增加myvar,同時(shí)修改export _ vars變量,將export指定的變量附加到后面。

  這樣,在bridge時(shí)候,系統(tǒng)會(huì)將export _ vars指定的變量從a腿導(dǎo)入到b腿上。

  帶nolocal的export用法

  有時(shí)候,僅僅需要將變量設(shè)置到b腿,而不需要設(shè)置到a腿,所以這里就需要參數(shù)nolocal。用法如下:
  <action application="export" data="nolocal:myvar=test"/>

  上面的命令在執(zhí)行后,會(huì)在本地增加的變量如下:
  >nolocal:myvar=test
  >export_vars=<other_export_vars>,nolocal:myvar

  也就是說增加的變量名稱就是nolocal:myvar, 由于有nolocal前綴,就可以跟本地變量很好的區(qū)別開。

  同樣,在bridge的時(shí)候,系統(tǒng)也會(huì)將export_vars指定的變量從a腿導(dǎo)出到b腿。

  巧妙的是,在導(dǎo)出nolocal:myvar的時(shí)候,會(huì)自動(dòng)將nolocal:前綴去掉,從而達(dá)到將變量只設(shè)置到b腿的目的。

  而如果留意就會(huì)發(fā)現(xiàn),使用下面的命令還是可以獲取到值的:
  uuid_getvar <a_leg_uuid> nolocal:myvar

  而使用下面的命令是獲取不到任何值的:
  uuid_getvar <a_leg_uuid> myvar

  Export用法

  知道了export的原理之后,即使api命令中沒有uuid_export,我們也可以模擬出來。如下:

  用法1:只將指定的變量導(dǎo)出到b腿
  originate {nolocal:sip_h_X-AutoAccept=true,export_vars='nolocal:sip_h_X-AutoAccept'}user/60400 60401

  用法2:只將指定的變量設(shè)置到a腿
  originate {sip_h_X-AutoAccept=true}user/60400 60401

  用法3:同時(shí)將變量設(shè)置到a腿和b腿
  originate {sip_h_X-AutoAccept=true,nolocal:sip_h_X-AutoAccept=true,export_vars='nolocal:sip_h_X-AutoAccept'}user/60400 60401
注意事項(xiàng)

  這里所說的設(shè)置到b腿,是指bridge之后設(shè)置到b腿

  Export示例
  示例1:在呼叫前,同時(shí)設(shè)置a腿和b腿的uuid,以便后期跟蹤
  originate    {origination_uuid=xxxxx,nolocal:origination_uuid=yyyyy,export_vars='nolocal:origination_uuid'}user/60401 60402

分享到: 收藏

專題

丰宁| 基隆市| 贵溪市| 清远市| 林州市| 泾阳县| 北辰区| 界首市| 集安市| 宁化县| 上林县| 紫阳县| 新沂市| 土默特左旗| 酒泉市| 探索| 浏阳市| 新巴尔虎左旗| 竹山县| 民权县| 丰顺县| 九台市| 兰溪市| 林西县| 若尔盖县| 宁晋县| 巴彦淖尔市| 道真| 柳河县| 梨树县| 长汀县| 马关县| 卫辉市| 永仁县| 三亚市| 布尔津县| 玉树县| 东港市| 镇原县| 伊川县| 双牌县|