之前做的项目中,经常会出现这种情况,就是外呼时,显示的主叫号码总是会多了一个0,比如:
主叫是88998877,那么来电显示的结果是 020088998877,这样,如果人家回呼时,如果直接回呼肯定回呼不了。
后来经过监控,分析数据得知,这是由于七号信令在发送IAM信息时,里面除了包括主叫,被叫之外,还有一个叫主叫
性质的参数,在通过七号信令外呼时,电信的程控机会判断这个主叫性质参数。
先来说一下主叫地址性质,一共有三种:用户、国内有效号码及国际号码。
在判断时:
如果是用户号码,就不做任何的修改;
如果是国内有效号码,则会先将主叫修改为加一个前置0.
国际号码没有测试,不知道会做什么操作。
所以现在为什么会出现多加一个0,就是因为发送出去的主叫地址性质为国内有效号码。
我们来看一下这三种地址性质的值是,如下:
0 0 0 0 0 0 1 用户号码
0 0 0 0 0 1 1 国内有效号码
0 0 0 0 1 0 0 国际号码
即 1 为用户号码 ; 3 为国内有效号码; 4 为国际号码
要修改这个主叫地址性质,我们找到七号信令的原码,找到 l4isup.c 这个文件,找到
param[0] = (is_odd << 7) | (is_international ? 4 : 3); //我的文件在1954行。
这里表示是否为国际号码,如果是国际号码,则主叫地址性质为 4. 即是国际号码。
否则定义为3,即是国内有效号码。
现在我们要修改一下,就是如果不是国际号码,则都定义为用户号码,即是要将3改为1,所以我们只需在这里修改为:
param[0] = (is_odd << 7) | (is_international ? 4 : 1);
即可.
修改之后,然后再重新编译,生成 chan_ss7.so ,然后重启一下asterisk的服务使其生效。
会发现,主叫号码再也不加 0.了。
分享到:
相关推荐
在本压缩包文件中,"SS7.rar_protocols ss7_ss7_ss7 协议_七号信令"显然包含了关于SS7协议的详细资料,对于那些正在开发或研究SS7技术的人来说,是非常宝贵的学习资源。 SS7协议的核心是消息传递部分(MTP),它...
《Asterisk中的SS7通道处理模块:chan_ss7详解》 在VoIP通信领域,Asterisk是一款广泛使用的开源PBX系统,它允许用户构建功能丰富的电话系统。Asterisk的强大之处在于其高度可扩展性和灵活性,可以支持多种协议和...
SS7(Signalling System No. 7)是一种全球广泛使用的通信协议栈,主要用于在电信网络中控制呼叫建立、路由选择和计费等操作。ISUP(ISDN User Part)、MAP(Mobile Application Part)和TUP(Trunk Group User Part...
七号信令(Signaling System No.7,简称SS7)是全球电信网络中广泛采用的一种信令协议标准,主要用于交换机之间的通信以及提供各种增值服务。这个标准在1975年由国际电报电话咨询委员会(CCITT,现为ITU-T)制定,...
SS7协议栈,全称Signalling System No.7,是通信行业中用于交换网络的一种关键协议栈,主要用于控制和管理通信网络中的呼叫建立、维护和拆除等过程。它由多个层次的协议组成,主要包括MTP(Message Transfer Part)...
在IT行业的通信领域,SS7(Signaling System No.7)作为全球最广泛使用的公共信道信令系统,其配置与管理是确保网络稳定性和服务质量的关键。SS7平台配置不仅涉及复杂的信号流程,还涵盖了从硬件到软件的全方位设置...
这个“ss7.zip_ss7_ss7 protocol”压缩包包含了一个名为“ss7.pdf”的文件,很显然,这是一份详细阐述SS7协议的文档。下面我们将深入探讨SS7协议的相关知识点。 1. **SS7协议概述**:SS7协议是国际电信联盟(ITU)...
SS7(Signalling System No. 7)信令系统是全球电信网络中广泛采用的一种通信协议,主要用于控制电话网络中的呼叫建立、维护和释放。它不仅应用于固定电话网络,还在移动通信系统,如2G、3G和4G中扮演着重要角色。此...
### SS7协议概述 T-REC-Q.700 #### 一、SS7协议简介 SS7(Signaling System No. 7)是国际电信联盟(ITU)制定的一套用于固定电话网络的信令系统标准,它定义了如何在电话交换网络中传输控制信号的方法。SS7协议的...
**电信通讯协议7号信令(SS7)详解** 7号信令系统(Signaling System No. 7,简称SS7)是国际电联(ITU)制定的一种电信控制协议,用于在公共交换电话网络(PSTN)和移动通信网络中进行信令交换。这个系统在1980...
SS7(Signalling System No. 7)是一种用于电信网络的信令协议,它在通信行业中扮演着至关重要的角色。SS7系统主要负责控制电话网络中的呼叫建立、路由选择、计费以及移动通信中的位置更新等功能。这个压缩包文件"SS...
SS7(Signalling System No. 7)是一种广泛使用的通信协议集,主要用于交换网络中的信令控制,如公共电话交换网(PSTN)和移动通信网络。此协议栈允许不同网络之间的通信,并且在现代4G和5G系统中仍然发挥着重要作用...
很抱歉,但根据您给出的信息,标题、描述和标签中包含的"ss52ss"字符串并不能直接对应到具体的IT知识点。压缩包子文件的名称也是"ss52ss",同样没有提供足够的信息来生成相关的IT知识内容。为了提供一篇详细且丰富的...
标题“chan_ss7_china-0.9”和描述中的“chan_ss7_china-0.9.tar.gz”提到了一个名为“chan_ss7”的软件或模块,版本为0.9,并且它已经被打包成一个tar.gz文件。这种格式是Linux和Unix系统中常见的归档和压缩方式,...
Wireshark数据包,包含各种SS7消息
SS7(Signalling System No. 7)协议栈是通信网络中的一个重要组成部分,主要用于控制电话交换和其他电信服务。七号信令系统是一种基于分层结构的通信协议集,旨在提供高效、灵活的信令功能,它在全球范围内广泛应用...
SS7 7号信令 MTP2 MTP3 SCCP MAP ISUP TUP INAP 电路域 分组域 智能网
《SS7信令系统详解——探索通信网络的中枢神经系统》 7号信令系统(Signaling System No.7,简称SS7),是国际电信联盟(ITU)制定的一种用于电话交换和移动通信网络中的信令协议,是现代通信网络中不可或缺的一...
7,简称SS7)是一种国际电信联盟(ITU)定义的电信网络中的信令系统,用于控制电话网络、数据传输和其他通信服务。它是现代通信网络的核心组成部分,尤其在固定电话网络和移动通信网络中广泛使用。本讲义将深入探讨...
SS7信令系统是全球电信网络中的核心通信协议之一,用于控制电话呼叫和其他数据传输服务。7号信令系统解码涉及到多个层面和技术,其中包括TUP(电话用户部分)、ISUP(综合业务数字网用户部分)以及MAP(移动应用部分...