我的编程空间,编程开发者的网络收藏夹
学习永远不晚

理解dial-peer part 3

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

理解dial-peer part 3

    我觉得part 3非常重要,所以尽量多写点,写得更详细点。下面开始。
三. 理解inbound call和outbound call的匹配规则
     1. Match inbound Dial Peers
     1)Inbound Dial Peers的参数和特性
      呼叫建立需要三种参数,有四个可配置的dial peer命令特性来匹配这三个参数。
      对源路由器来说,从POTS进入的 call leg 关联Inbound POTS dail peers ;
      对终端路由器来说,从Voice-Network 进入的call leg 关联Inbound Voice-Network  dail peers 。
     四种配置命令对应呼叫建立元素的关系表:
 dial-peer属性
描述 
 呼叫建立元素
gwy(config dial-peer)#
incoming called-number
DNIS_string 
  该命令定义被叫号,dialed number identification service (DNIS)。通常该命令使用被叫号来匹配inbound call leg对应的inbound call dial peer
被叫号
DNIS 
gwy(config dial-peer)#
 answer address
ANI_string
   该命令定义主叫号 ,automatic number identification (ANI) string。通常该命令使用主叫号来匹配inbound call leg对应的inbound call dial peer
 主叫号
ANI
 gwy(configdial-
peer)#
destination-pattern
string
    当该命令对应outbound call leg时,使用的是被叫号来匹配   outbound call dial peer
    当该命令对应inbound call leg时,使用的是主叫号来匹配inbound call dial peer
 
inbound时,是ANI;
outbound时,是DNIS 
 gwy(configdial-
peer)#
port port
该命令用于定义通过POTS port的呼叫
Voice Port 
 
     呼叫建立的三个元素
 呼叫建立的元素  描述
 called number (DNIS)  呼叫的被叫号码字符串。一般起来自ISDN的建立信息或者CAS的DNIS。
 calling number 
(ANI)
 代表呼叫起源的字符串。一般来自ISDN的建立信息或者CAS的ANI
 Voice Port  代表POTS的物理语音接口
 
  2.inbound 呼叫的匹配规则
     当cisco 网关接到一个呼叫建立的请求时,dial-peer 用于匹配进入的呼叫,并将呼叫路由到不同的进程和应用上。dial-peer不会逐位匹配字符串,相反,它会接受所有的字符串后再来匹配。
     路由器或者是网关用dial-peer匹配inbound call时,规则如下:
     1)Called number (DNIS) with incoming called-number
     首先,如果dial-peer配置了incoming called- number 命令,那么dial-peer都会去尝试匹配呼叫建立时的called number参数。一般的呼叫都会有called number ,所以推荐用这个命令来做inbound dial peer。这个属性的优先级高于answer-address和destination-pattern
     2)Calling Number (ANI) with answer-address
     如果没有配置 incoming called-number命令。那么,配置了answer-address 的dial-peer会尝试匹配calling number参数。这个命令可以用来匹配基于calling number的呼叫
     3)Calling Number (ANI) with destination-pattern
     如果没有匹配answer-number这条命令。那么,配置了destination-pattern的dial-peer会尝试匹配calling number参数。这个在后面详解!
     4)Voice-port
     如果第3条还没匹配,那么网关或者路由器会用dial-peer port去关联来自voice-port呼叫的calling-number参数
     5)最后如果都没有匹配的那么会默认调用default dial-peer 0 (PID 0)
     如果没有一个命令能匹配呼叫建立,那么网关会调用default dial-peer 0 来匹配呼叫。
     default dial-peer 0 (PID 0)的参数不能修改。并且default dial-peer 0 (PID 0)不能去协商非默认的服务参数,例如:
          Non-default Voice-Network capabilities: dtmf-relay, no vad
          Direct Inward Dial (DID)
          TCL Applications
   dial-peer 0 对于inbound call 默认的配置有:
     any codec
      vad enabled
      no rsvp support
      fax-rate voice
   dial-peer 0 对于outbound call 默认的配置有:
         no ivr application
    在每个阶段最长字符匹配规则仍然适用。
 
    3.Matching Outbound Dial Peers
    网关或者路由器会使用destination-pattern called_number来匹配outbound call
    1)对于POTS dial peer,port命令用于路由呼叫
    2)对于Voice-Network dial peers,session target命令用于路由呼叫。
另外,当outbound peer被匹配时需要考虑两种情况,DID的或non-DID。
    对于DID的情况:
    一个incoming dial peer被配置为下面的命令:
                       dial-peer voice 1 pots
                           incoming called-number 81690
                           voice-port 0:D
                           direct-inward-dial
    对于DID calls,呼叫建立时,必须包含所有的号码才会路由。当网关或者路由器选择outbound dial peer时,会将号码一起发给outbound dial-peer。
    例如,下面的配置:
                      dial-peer voice 3 voip
                         destination-pattern 816
                         session target ipv4:172.22.10.1
                      dial-peer voice 4 voip
                         destination-pattern 81690
                         session target ipv4:172.22.10.1
outbound会匹配 dial-peer 4!
       对于non-DID的情况:
       outbound call会逐位匹配号码,所以上面的例子会匹配dial-peer 3,但是出去的被叫号码是816.
 
 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

理解dial-peer part 3

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

理解dial-peer part 3

我觉得part 3非常重要,所以尽量多写点,写得更详细点。下面开始。三. 理解inbound call和outbound call的匹配规则     1. Match inbound Dial Peers     1)Inbound Dia
2023-01-31

【3】iptables理解 - filt

filter表是默认表,功能是对数据包做过滤。此表有三条链(iptables -t filter -L -n,用此命令查看),分别是:INPUT、FORWARD、OUTPUT。INPUT链:数据流向iptables主机本身的数据包经过inp
2023-01-31

理解VMwawe的3种网络模型

大纲内容一、文档术语约定二、虚拟网卡与虚拟交换机三、VMware的三种网络模型四、VMware  NAT 网络模型 端口映射文档版本更新时间备注v12016-02-10版本更新信息环境操作系统版本软件版本Win 7 x64VMware wo
2023-01-31

如何理解ASP.NET MVC 3 Beta中的Chart

这篇文章给大家介绍如何理解ASP.NET MVC 3 Beta中的Chart,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。小编将介绍Chart的使用。包括Chart数据源的配置、Chart的显示、Chart保存三个方面
2023-06-17

linux信号解释(3)--信号处理机制

如果需要进程捕获某个信号,并作出相应的处理,就需要注册信号处理函数(其实就是内核里需要识别信号函数,类似C语言里的include某函数库)。    处理信号就类似软中断,内核为每个进程准备了一段信号向量表,记录信号的处理机制。当某个信号发生
2023-01-31

解析PHP中8%3等于0的原理

PHP中8%-3等于0的原理解析在PHP中,进行数学计算是非常常见的操作。有时候,我们会遇到一些奇怪的结果,比如8%3的结果是0。为什么会有这样的结果呢?这篇文章将会解析PHP中8%-3等于0的原理。在解析这个问题之前,我们需要明确一下
解析PHP中8%3等于0的原理
2024-01-26

只要3分钟,Python生成器原理详解

翻译:你逗比segmentfault.com/a/1190000011330511这篇文章是对 500 Lines or Less 一书中高效爬虫一章的部分翻译,原文:How Python Generators Work。建议结合《流畅的
2023-01-31

深入理解NumPy简明教程---数组3(组合)

前两篇文章对NumPy数组做了基本的介绍,本篇文章对NumPy数组进行较深入的探讨。首先介绍自定义类型的数组,接着数组的组合,最后介绍数组复制方面的问题。 自定义结构数组通过NumPy也可以定义像C语言那样的结构类型。在NumPy中定义结构
2022-06-04

ASP.NET MVC 3中如何理解控制器与视图

本篇文章给大家分享的是有关ASP.NET MVC 3中如何理解控制器与视图,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。I:控制器和视图的基础概念1.控制器的概念控制器在ASP
2023-06-17

JS字符串分割方法整理汇总示例讲解(3种截取方法和6个辅助方法)

JavaScript在开发中常常会需要截取字符串,而JS提供了slice()、substring()、substr()3种方法实现截取操作。另外还有字符串相关的6种辅助方法:indexOf()、lastIndexOf()、split()、join()、concat()、charAt()。
2023-02-11

Node.js CommonJS 规范的学习资源大放送:5本好书,3个教程,带你深入理解模块化开发

Node.js CommonJS 规范是构建模块化应用程序的基础,帮助开发者轻松创建模块、实现代码复用。本文提供了 5 本好书和 3 个教程资源,帮助你深入理解 CommonJS 规范,掌握模块化开发技巧。
Node.js CommonJS 规范的学习资源大放送:5本好书,3个教程,带你深入理解模块化开发
2024-02-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录