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

您當(dāng)前的位置是:  首頁 > 新聞 > 國內(nèi) >
 首頁 > 新聞 > 國內(nèi) >

Kamailio/OpenSIPS學(xué)習(xí)筆記-如何使用dialog模塊對呼叫計數(shù)

2018-04-23 13:29:22   作者:james.zhu    來源:Asterisk開源派   評論:0  點擊:


  作為軟交換平臺,很多時候管理員平臺需要對呼叫進行實時監(jiān)控,或者對某些正在進行的呼叫進行統(tǒng)計,以便方便系統(tǒng)管理。在本期的講座中,我們使用開源軟交換的dialog 模塊對已經(jīng)接聽的呼叫和正在進行的呼叫做一個實時輸出。通過系統(tǒng)輸出日志,我們可以看到呼叫的狀態(tài)信息,對呼叫進行計數(shù)處理。
  1、在本講座中,我們會使用dialog 模塊推廣不同的參數(shù)配置支持不同的呼叫狀態(tài)打印。用戶需要配置和加載dialog 模塊,使用分機對其其他分機進行呼叫測試。
  2、配置此示例,用戶需要修改幾個配置文件的內(nèi)容。首先需要加載dialog模塊:
  loadmodule "dialog.so"
  modparam("dialog", "profiles_with_value", "caller ; domain")
  modparam("dialog", "profiles_no_value", "progress ; active")
  modparam("dialog", "db_mode", 2)
  modparam("dialog", "db_url",
  "mysql://opensips:opensipsrw@localhost/opensips")  // 注意修改到客戶自己的IP 地址。
  然后創(chuàng)建一個dialog 會話處理流程,并且啟動計數(shù)器設(shè)置
  create_dialog();
  # 設(shè)置 profile
  if($DLG_status!=NULL && is_method("INVITE")) {
  set_dlg_profile("caller","$fU@$fd");
  set_dlg_profile("domain","$fd");
  }
  #啟動呼叫方計數(shù)
  $var(ccaller)=0;
  #啟動從此 domain 計數(shù)
  $var(cdomain)=0;
  $var(ccaller)=get_profile_size("caller","$fU@$fd","$var(ccaller)");
  $var(cdomain)=get_profile_size("caller","$fd","$var(cdomain)");
  # 打印輸出信息
  xlog("L_INFO", "Number of calls from user $fU@$fd is $var(ccaller)");
  xlog("L_INFO", "Number of calls from domain $fd is $var(cdomain)");
  對處理reply 的流程進行處理,并且對已接通呼叫和正在進行的呼叫進行計數(shù)處理:
  onreply_route[handle_nat] {
  if($DLG_status!=NULL) {
  if($rs=~"18[0-9]") {
  set_dlg_profile("progress");
  } else {
  if(is_in_profile("progress")) unset_dlg_profile("progress");
  }
  if($rs=~"2[0-9][0-9]") {
  set_dlg_profile("active");
  } else {
  if(is_in_profile("active")) unset_dlg_profile("active");
  }
  }
  if(is_method("INVITE")) {
  #激活已呼叫的計數(shù)器
  $var(cactive)=0;
  #處理正在呼叫的計數(shù)
  $var(cprogress)=0;
  get_profile_size("active","$var(cactive)");
  get_profile_size("progress","$var(inprogress)");
  # 進行l(wèi)og打印
  xlog("L_INFO","There are $var(cactive) active calls and $var(inprogress) calls in progress");
  }
  3、保存以上配置文件,重新加載cfg文件。用戶可以分別通過兩種方式進行呼叫測試:
  • 通過軟電話A對另外一個分機B進行呼叫,B接聽, 然后置于等待狀態(tài)
  • 通過另外一個軟電話對B進行呼叫
  通過以上兩種方式的呼叫,用戶就可以看到系統(tǒng)后臺對其呼叫進行的計數(shù)處理和打印日志信息,tail /var/log/syslog –f 可以顯示當(dāng)前dialog中用戶,domain, 活動呼叫和正在進行的呼叫的日志信息。
  4、在本章節(jié)中,我們提供dialog模塊對系統(tǒng)呼叫進行計數(shù)處理。這里,用戶需要根據(jù)dialog加載所需參數(shù),在cfg文件中需要創(chuàng)建dialog,然后啟動對已接聽呼叫和正在進行的呼叫進行計數(shù),最后通過xlog輸出呼叫日志信息。另外,還要對reply進行計數(shù)處理。此示例可以幫助用戶實時監(jiān)控呼叫狀態(tài),它提供了非常方便的監(jiān)控排查方式,用戶可以在實際測試環(huán)境中進行排查測試。
  關(guān)注微信公眾號:asterisk-cn,獲得有價值的行業(yè)分享
  freepbx 技術(shù)論壇:www.ippbx.org.cn
  Asterisk, freepbx技術(shù)文檔: www.freepbx.org.cn
  歐米(Omni)智能客服解決方案
  融合通信商業(yè)解決方案,協(xié)同解決方案首選產(chǎn)品:www.hiastar.com
【免責(zé)聲明】本文僅代表作者本人觀點,與CTI論壇無關(guān)。CTI論壇對文中陳述、觀點判斷保持中立,不對所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔(dān)全部責(zé)任。

專題

榆林市| 兴海县| 龙胜| 会东县| 澳门| 郎溪县| 简阳市| 闽清县| 商南县| 吐鲁番市| 高台县| 绥棱县| 云浮市| 通榆县| 霍城县| 象山县| 伊川县| 濮阳市| 永城市| 营口市| 佛教| 乌鲁木齐县| 铁力市| 浮山县| 阳谷县| 怀安县| 广饶县| 芦山县| 牡丹江市| 安多县| 邮箱| 南澳县| 景洪市| 昂仁县| 禄丰县| 岐山县| 久治县| 嘉善县| 通辽市| 永胜县| 巴林右旗|