INAP协议基础

更新时间:2024-01-25 00:13:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

中国智能网应用协议C-INAP详解(CS1部分)

目 录

1

绪论 ......................................................................................................................................... 1 1.1 智能网简介 ................................................................................................................. 1 1.2 INAP简介 .................................................................................................................. 1 1.3 INAP协议结构 .......................................................................................................... 2 1.4 简单的例子 ................................................................................................................. 3

2

ASN.1基础 ............................................................................................................................. 5 2.1 ASN.1简介 ................................................................................................................. 5 2.2 ASN.1的语法 ............................................................................................................. 6 2.3 ASN.1的基本编码规则 ............................................................................................. 8 2.4

INAP中常用的ASN.1宏 ....................................................................................... 11

3 操作,应用服务单元和应用上下文 ................................................................................... 14 3.1 概述........................................................................................................................... 14 3.2 操作的定义 ............................................................................................................... 15 3.3 应用服务单元(ASE)的定义 ............................................................................... 23 3.4

应用上下文定义 ....................................................................................................... 28

4 操作的参数 ........................................................................................................................... 33 4.1 操作及返回结果的参数定义 ................................................................................... 33 4.2 数据类型定义 ........................................................................................................... 41 4.3

ERROR的定义 ........................................................................................................ 57

5 INAP与TACP的配合 ........................................................................................................ 59 5.1 TCAP简介 ............................................................................................................... 59 5.2 TCAP的服务原语 ................................................................................................... 60 5.3 INAP对TCAP原语的应用 .................................................................................... 61 5.4 对话建立 ................................................................................................................... 64 5.5 对话继续 ................................................................................................................... 65 5.6 对话结束 ................................................................................................................... 65 5.7 用户放弃 ................................................................................................................... 66 5.8 提供者放弃 ............................................................................................................... 66 5.9

INAP使用TCAP原语的例子 ................................................................................ 66

6 300业务主流程INAP交互信息详解 ................................................................................. 67

欣方智能通信系统有限公司 1

中国智能网应用协议C-INAP详解(CS1部分)

1 绪论

1.1 智能网简介

智能网是一个网络体系,它为了增强通信网的智能化程度而在现有的网上设置一些特殊的网络单元(新的硬件设备或新的软件功能),使得网络能够方便,快速的提供新的业务来满足用户的需求。

智能网从产生到现在已经有了很大的发展,他容纳了越来越多的新技术,按照能力集分为CS1,CS2,CS3,CS4等几个阶段。目前在网上应用最为广泛的就是CS1,他的大体结构如图1-1所示:

SCE SMAP SCP SMP SMAP 7号信令网 SMAP SSP SSP SSP IP 图1-1:CS1智能网系统结构图

简单的说CS1智能网系统的运行方式如下:

? 业务提供者用SCE(业务创建环境)开发业务,将业务逻辑通过SMP(业务管理点)加

载到SCP(业务控制点),将业务用户管理程序安装至SMAP(业务管理接入点)。 ? 业务运营者通过SMAP设置业务用户数据,将用户数据加载到SMP,SCP。 ? 业务用户通过话机拨打智能业务,端局分析业务接入码,将呼叫路由至SSP(业务交换点),

SSP通过7号信令网(SCCP/TCAP)将业务触发事件报告给SCP,SCP根据业务流程和业务用户的数据控制SSP或IP(智能外设)为用户提供这个业务的服务。

1.2 INAP简介

智能网是一个分布式系统。它通过智能网结点中的各功能实体(FE)之间互相传递消息来协调完成任务。前面1.1节中所述的智能网运行过程中,SCP和SSP,IP要交换一些信息来完成一个业务流程,这些信息流程的不同,就形成了不同的业务。实际上这些信息的集合就是INAP的内容。这些信息一般主要包括:

? SSP将业务触发信息报告给SCP;

? SCP请求SSP设置一些事件检测点(如挂机,忙等); ? SCP控制SSP或IP播放提示音或通过DTMF收号;

欣方智能通信系统有限公司

1

? SCP向SSP设置一些计费控制信息; ? SCP控制SSP连接某个被叫号码;

? SSP向SCP报告一些检测出的事件(如挂机、忙等); ? SSP向SCP报告计费的结果。

ITU-T将智能网各功能实体之间的消息做一些总结归纳,形成一组与业务无关的操作,并用一种高层通信协议的形式加以规范定义,即为智能网应用协议,称为INAP ( Intelligent Network Application Protocol ) 。所谓INAP“与业务无关”就是这些操作可以实现所有的业务,也就是说,业务的改变只需要改变操作的流程和操作的参数值,而不需要增加操作或改变操作的参数结构。

有了INAP,新增加一个业务就变得很简单了,网上众多的SSP只需要设置一下业务触发数据(主要是业务接入码和业务关键字的对应关系),SCP的工作是描述一个业务流程通过INAP来控制SSP或IP。

智能网系统中的各个设备往往是各个不同的厂家提供的,INAP定义的精确和无二义性就变得非常重要。目前INAP的语法的定义使用的是ASN.1(抽象文法记法一)。ASN.1是描述应用层协议最常用的一种工具。

在智能网的规范中INAP是最重要的一部分,INAP以OSI为基础,定义了SACF/MACF规则、各功能实体间的操作和差错、各功能实体发送和接收INAP操作时必须遵守的操作程序以及所使用的低层业务等,即采用某种信息模型来描述实体之间通信的交互规则。

ITU-T的Q1218定义了CS1-INAP的国际标准。中国信息产业部传输所根据中国电信网络的具体情况,抽取Q.1218的一个子集,对有关计费的操作参数做了细化,形成了中国智能网应用协议,即C-INAP国标CS1部分(以下简称C-INAP)。C-INAP支持以下4个功能实体间的接口程序:

? 业务交换功能(SSF); ? 业务控制功能(SCF); ? 业务数据功能(SDF); ? 专用资源功能(SRF);

即,包括了SCF-SSF、SCF-SRF、SCF-SDF间的接口协议。由于目前绝大多数厂家的SCF和SDF集成在SCP一个物理实体中,采用内部接口。因此,在此仅对SCF-SSF和SCF-SRF的接口进行介绍。

C-INAP包含了27个操作,它们分为20个ASE(应用服务单元,每个应用服务单元包含一个操作,或者功能相关的几个操作)。C-INAP规定了7种应用上下文,每种应用上下文对应一组INAP-ASE的集合,以及它们的一种使用方式。

1.3 INAP协议结构

OSI的第七层为应用层,提供上层应用所需的通信支持,并从下层的表示层获得服务。对等的应用层间的通信协议称为应用协议,例如智能网应用协议(即INAP)。ISO-9545定义了应用层结构(Application Layer Structure, ALS),该结构主要包括应用进程、应用实体、应用服务对象、应用服务单元、控制功能等部分。

一个应用进程(Application Process, AP)通常是指所有的与一个应用有关的资源,用于完成特定的信息处理活动。

在概念上,应用进程分为通信对象和非通信对象,其中的通信对象称为应用实体(AE)。一个应用进程可包括一个或多个应用实体。

应用实体可能很复杂,为了说明AE间的通信,需要将AE细分为多个组成对象,再分析这些对象如何与他们的对等对象进行通信。这样,两个通信AE间的应用协议的设计就可简化为不太复杂的多对通信对象间应用协议的设计。一个AE可以分成一个或多个应用服务对象(Application

2

中国智能网应用协议C-INAP详解(CS1部分)

Service Object, ASO),以及一个或多个应用服务单元(Application Service Element, ASE)。AE本身是最大的ASO,一个ASO可以是多个ASE的集合。

ASE是ASO不可再分的基本部件,提供给用户一组服务原语或操作,一般分为公用和专用两种。公用的是指能为若干应用提供通信能力的ASE,例如TCAP等,专用的是指为某个应用提供特定服务的ASE, 如INAP自定义的ASE。

在ASO中,除了包含若干ASE和ASO外,还可含有控制功能(Control Function, CF), 他负责协调ASO中多个ASE和ASO的活动。

INAP的协议结构可用图1-2来表示。一个物理实体可以与其他的物理实体进行单个交互(情况a)或多个协调交互(情况b)。

情况a中,SACF提供了使用ASE’s的协调控制功能,包括ASEs所支持的操作顺序。SAO表示SACF加上与其他物理实体进行单个交互时所用的一些ASE’s。

情况b中,MACF提供了对多个SAO的协调控制功能,其中每一个SAO与远端物理实体的SAO交互。

MTP MTP SCCP SCCP SACF SAO ASE’s TCAP SACF SAO ASE’s TCAP SACF 应用进程 应用进程 MACF SAO ASE’s TCAP (a)

SACF SAO

单联系控制功能 MACF

(b)

多联系控制功能

单联系对象 ASE 应用服务单元

图1-2:INAP的协议结构

C-INAP共定义了20个ASE,它们属于专用的ASE,此外,还有七号信令提供的公用TCAP ASE。前者是后者的用户,后者为前者提供服务。

1.4 简单的例子

例如一个简单的800业务,业务用户拨800xxxxxxx(xxxxxxx时800的形式号码),经过SSP,SCP翻译成一个实际的被叫号码接通。图1-3所示这个流程所使用的INAP操作。

主叫用户 SCP SSP InitialDP操作,包含参数:业务键(8),拨8001234567 所拨号码(8001234567) 调用业务键8所对应的

800业务逻辑,根据形式

被叫用户 Connect操作,包含参数:实际被叫号码

号码得到实际的被叫号

(01062073412)

码01062073412

通话

图1-3:最简单的800业务的INAP消息流程示意图

欣方智能通信系统有限公司

3

图1-3中的InitialDP和Connect是INAP中的两个比较重要的操作。InitialDP操作负责将业务触发的信息报告给SCP,Connect操作则是SCP控制SSP接续一个被叫号码。

当然图1-3只是一个很简化流程,实际的800业务的流程要复杂的多。例如,如果800业务号码需要输入密码,则需要使用

ConnectToResource,PromptAndCollectUserInformation和DisconnectForwardConnection操作来连接语音资源、播放提示音并收集用户所拨的号码、断开语音资源;

则上面的流程就要变为图1-4:

图1-4的流程虽然复杂了很多,但是它也不是非常完整的。

一般的SCP在连接资源之前应该使用RequestReportBCSMEvent来请求SSP设置一些事件检测点。如果这些事件发生(例如主叫或被叫挂机),SSP要使用EventReportBCSM操作来通知SCP。

如果需要实时计费,SCP应该在Connect操作之前发送ApplyCharging操作来设置计费有关的信息给SSP,SSP在呼叫结束后硬发送ApplyChargingReport操作将计费的结果报告给SCP。

主叫用户 SCP SSP

InitialDP操作,包含参数:业务键(8),拨8001234567 所拨号码(8001234567) ConnectToResource操作来连接语音资源 P romptAndCollectUserInformation操作来播放提示音并收号(包含提示语音号,听“请输入密码” 拨密码1111 收号位数等参数) PromptAndCollectUserInformation操作的 返回结果(包含用户所拨号码参数) 调用业务键8所对应的800业务逻辑,请用户输入密码

主叫和语音资源建立连接

DisconnectForwardConnect语音断开主叫和语音资源的连接 800业务逻辑判断密码正确,根据形式号码得到实际的被叫号码01062073412

被叫用户 Connect操作,包含参数:实际被叫号码(01062073412)

通话 图1-4:带密码的800业务的INAP消息流程图

4

中国智能网应用协议C-INAP详解(CS1部分)

2 ASN.1基础

2.1 ASN.1简介

抽象语法记法1(ASN.1)是一种抽象的描述性语言,它是由CCITT(ITU-T)与ISO联合定义的。ITU-T X.208和ITU-T X.209等相关标准规范了如何描述数据类型和这些数据值如何被转换成数据流进行传输,即ASN.1的抽象语法和传输语法。在此对ASN.1只做简单的介绍。

ASN.1的抽象语法记法只描述数据的结构形式,与具体的编码格式无关。ASN.1语言记法与大多数程序设计语言相似,包括一些固有类型和一套将固有类型构造成复杂类型的方法(即构造类型)。由于ASN.1语言具有的抽象描述特性,它很适合用来描述 PDUs,是目前最常用的一种描述高层协议的工具。它使用一种记法来描述协议所用到的数据类型、数据值,而描述中不必给出具体的编码。因为ASN.1已经为自己的所有支持的数据类型定义了精确的编码规则,协议的实现者根据协议的ASN.1描述文本和ASN.1本身的基本编码规则来确定协议的具体编码。

ASN.1提供了几种基本的数据类型,例如整数(INTEGER),八位组(OCTET STRING),布尔(BOOLEAN)等用来描述协议中的一些基本数据类型。它还提供了用基本数据类型来组合成复杂的数据类型的方式,例如序列(SEQUENCE),选择(CHOICE),集合(SET)等。

ASN.1的编码采用的是可变长的,层层嵌套的方式。如图2-1所示:

最外层的标记:例如05 最外层的长度:0A(1+1+8+1+1+4) 第1部分的标记:例如1 第1部分的长度:08(1+1+1+1+1+3) 第1.1部分的标记:例如03 最外层的内容分为两部分 第1部分的的内容又分为两部分1.1和1.2 第1.2部分的标记:例如04 第1.2部分的长度:03 第1.2部分的内容:例如整数32769,编码为00 80 01 第2部分的标记:例如02 第2部分的长度:04 第2部分的内容:例如八位组‘1234’,编码为31 32 33 34 图2-1:ASN.1编码结构示意图 第1.1部分的长度:例如长度01 第1.1部分的内容:例如整数10,编码为0A 因为编码中的几乎任何要素(包括标记,长度和内容)都是可变长的,所以它的的表示能力很

强大。例如表示一个整数,因为前面有规定了长度,它可以用一个字节表示(如果整数值很小),也可以用多个字节表示(如果整数值很大)。而长度的长度也是可变的,可以说无论内容有多长,它都可以表示出来。

欣方智能通信系统有限公司 5

2.2 ASN.1的语法

2.2.1 模块定义

一个协议一般由几个ASN.1模块定义组成,一个ASN.1模块是对协议的一部分相对独立的内容的完整的描述,例如:

IN-CS1-Errors { ccitt recommendation q 1218 modules(0) cs1-errors(1) version1(0)} DEFINITIONS IMPLICIT TAG::= BEGIN END

模块体中的内容

就是模块定义的一个框架。IN-CS1-Errors是模块的一个有意义的名字,{}括起来的是此模块对应的对象标识,也就是说这个ASN.1模块作为一个对象,它在对象标识树中应该有自己的位置。所谓对象标识树,如图2-2所示:

recommendation ccitt cs1-datatypes(2) a b ... q iso 其它内容 ... z 1218 ac(1) 771 763 modules(0) cs1-errors(1) version(0) 其它 图2-2:对象标识树示意图

树中的每一个节点都对应一个整数,兄弟节点的整数值不重复,这样每一个对象(树中的节点)都对应一个从根开始的路径,这个路径由一串整数构成,这一串整数经过编码就构成了这个对象的标识,例如C-INAP的7种应用上下文都对应一个对象标识(在第4章将有详述)。

模块定义接着对象标识之后的是一个关键字“DEFINITIONS”,关于“IMPLICIT TAG”的意义在2.3节将有详述,“::=”之后是BEGIN和END括起来的模块体。

模块体由引入符号和赋值表构成,其中输入符号部分例如:

IMPORTS

ERROR

FROM TCAPMessages {ccitt recommendation q 773 modules(0) messages(1) version2(2)}

InvokeID,

UnavailableNetworkResource

FROM IN-CS1-DataTypes {ccitt recommendation q 1218 modules(0) cs1-datatypes(2) version1(0)};

表示这个模块所用到的ERROR,InvokeID,UnavailableNetworkResource三个符号在这个模块中没有定义,是从别的模块引入的,其中ERROR是从TCAPMessages模块引入的,另外两个是从IN-CS1-DataTypes模块引入的。

6

中国智能网应用协议C-INAP详解(CS1部分)

模块体的另外一部分是赋值表,由一系列的赋值项目构成,赋值项目分为两类,一类是类型赋值,用于定义新的数据类型,一类是值赋值,用于定义值,例如:

Cost::= INTEGER (0..maxCost)

是一个类型赋值项目,新的类型Cost被定义为一个整数,整数的范围是从0到maxCost

maxCost INTEGER ::= 99,999,999

是一个值赋值项目,maxCost被定义为一个类型为整数的数值(99999999)。

2.2.2 固有类型及其值

ASN.1抽象语法中的重要概念是数据类型和值。值是某个值集合中的一个元素,类型是值集合的名字。

类型的说明用样板 typereference::=Type 定义, 这里 typereference 是类型 Type 的名字或引用。例如:

CourseLimit::=INTEGER 定义了INTEGER类型的一个数据类型名CourseLimit。

ASN.1有几种简单固有类型,常用的是INTEGER,BOOLEAN,REAL,BITSTRING,ANY,OCTETSTRING,ENUMERATED,NULL和OBJECT IDENIFIER类型。

INTEGER 类型包括所有正负整数值和0。整数类型定义例子如下:

NumerOfCustomers::=INTEGER

BOOLEAN 类型包括TRUE或FALSE两种值。 REAL 类型由所有实数值组成。

BITSTRING 类型包括任何有序比特串。它的一个例子是:

UserInteractionModes ::= BIT STRING {

voiceMessage tone display }

(0), (1), (2)

其中,UserInteractionModes 由3位比特串表示,第1位表示 VoiceMessage,第2位表示 Tone,第3位表示 Display。

OCTETSTRING 类型是所有有序八位组(或字符)串的集合。一个OCTET STRING 的值为 0 ~ 255。

ENUMERATED 类型由类型定义部分所枚举的有限值的集合。它的一个例子是:

ActionIndicator ::= ENUMERATED {

activate deactivate retrieve }

(1) , (2) , (3)

NULL类型只有一个值:空值。

2.2.3 构造类型

ASN.1提供了一些预定义的基本类型,协议模块定义的赋值表中的一系列类型赋值项目就是利用这些基本类型来构造新的类型。每个类型赋值项目“::=”的左边是新类型的名字,右边的类型可

欣方智能通信系统有限公司 7

以是:

? 已定义的类型:就是在本摸块中已经定义了的类型,或者从其它模块引入的类型; ? 基本类型:例如INTEGER,OCTET STRING,BOOLEAN等 ? 序列类型:SEQUENCE和SEQUENCE OF ? 集合类型:SET和SET OF ? 选择类型:CHOICE

? 有标记类型:标记+隐式或显示指示+类型

SEQUENCE把多种要素(component)组合在一起,包括简单和构造类型。一般,可以在SEQUENCE类型的每个要素之后使用关键字OPTIONAL和DEFAULT。OPTIONAL 表明这个要素在使用时可以忽略,而DEFAULT可以给这个要素置初始值。SEQUENCE 类型定义举例如下:

C::=SEQUENCE{ }

a b c

[0]A, B,

[1]IMPLICIT INTEGER

表示C被定义为一个序列类型,这个序列是由a、b、c三项组成的,a是有标记类型,标记为[0],类型为A;b为类型B;c是有标记类型,标记为[1],类型为INTEGER,并且有隐式指示(隐式指示的意思是:在编码的时候INTEGER的标记会被隐含掉, EXPLICIT则是显式指示,意思正好相反,这些在2.3接将会有更详细的描述)。

SEQUENCE OF 包含同一类型的顺序序列,SET OF 定义同一类型值的无序集合。例如:

D::=SEQUENCE SIZE(1..3) OF INTEGER

表示D被定义为1到3个整数的序列。

SET与SEQUENCE相似,把多种要素(component)组合在一起,两者不同仅在于SEQUENCE有序而SET无序。由于SET类型是无序的,所以各要素需要有不同的标记值(Tag)。

E::=SET { }

a b

[0]A, B,

表示E被定义为一个集合,它的定义方式与SEQUENCE类似,实际的区别是SEQUENCE中的各项必须保证次序,而SET中的各项的次序是不要求的。

CHOICE用来从类型集合中定义一个类型,其中每个要素应该有不同的标记值。例如:

F::=CHOICE { }

a b

[0]A, [1]B,

表示F被定义为有标记类型[0]A和有标记类型[1]B中的二者之一,也就是说它的编码或者与[0]A的编码一致,或者与[1]B的编码一致。

上面只是列举了几种比较常用的构造类型定义方式,更详细的内容应参阅ITU-T X.208。

2.3 ASN.1的基本编码规则

ASN.1所定义的所有的类型的值的编码都分为三个部分: ? 此类型的标记的编码 ? 值的内容的长度的编码

8

中国智能网应用协议C-INAP详解(CS1部分)

? 值的内容的编码

2.3.1 标记的编码

每一个类型都有它的标记,如果标记对应的号码小于31,那么它的编码比较简单:

低5位用来表示标记号,因为标记 号小于31,所以11111不会用到 第5位为0表示原编码,1表示构造编码,源编码表示后面的内容部分不可再分,构造编码表示后面的内容部分仍然是由一个或几个完整的编码(标记+长度+内容)构成 高两位表示标记的类型,00表示此标记适用于全局,01表示此标记适用于某个应用,10表示此标记是上下文指定的,11表示此标记是私用的。 图2-3 号码小于31的标记的编码

一般的一些简单类型或序列、集合的标记是固定的,作用于全局,一般前两位用00。例如整数的标记号码为2,整数的内容显然是不可再分的,所以是原编码(0),所以整数标记的编码是00000010(十六进制02)。再如序列类型,标记的号码为16(10000),序列的内容为构造编码(1)所以序列标记的编码是00110000(十六进制30)。

INAP中常用的还有序列类型中的有标记类型,它们的标记是上下文指定的(10),如果标记为[7],又是原编码,那么它的编码用该是10000111(十六进制87)。如果它是构造编码,它的编码应该为10100111(十六进制A7)

如果标记的号码大于或等于31,低5位无法表示,标记的编码将用多个字节表示。第一个字节的表示方法仍然如图2-3,区别在于低5位全为1,11111表示此标记是用多字节表示的。如果标记号小于或等于127,则总共用两个字节就够了,例如有标记类型[32](原编码)将编码为:10011111 00010000(9F 10)。

当然,标记号可以任意的大,所以标记的编码的长度也不是固定的,因此编码的后几个字节都只使用低7位,最高位用来判断标记的编码是否结束(1:没结束,0:结束)。例如:有标记类型[128](原编码)的编码是:10011111 10000001 00000000(9F 81 00),后两个字节的低7位,一共14位,合起来(00000010000000)表示号码128。再例如[32767]的编码应该是10011111 10000001 11111111 01111111,后3个字节的低7位合起来(000000111111111111111)来表示32767。

2.3.2 长度的编码

标记编码之后是长度的编码,如果长度值小于或等于127(用7位可以表示),那么长度用一个字节就可以表示(高位为0),例如长度33的编码为00100001。

如果长度支大于127,那么长度要用多个字节表示,第一个字节的高位位1,低7位表示长度的长度,后续几个字节和起来表示长度值。例如长度值128就必须用两个字节表示:10000001 10000000。再如长度值32767就必须用三个字节表示:10000010 01111111 11111111。

欣方智能通信系统有限公司 9

2.3.3 几种常用的基本类型的编码

布尔类型(BOOLEAN)的编码:标记的编码为01,长度为01,内容为00(如果布尔值为假,FALSE),或FF(如果布尔值为真,TRUE)。

整数类型(INTEGER)的编码:标记的编码为02,内容的长度虽整数值的大小不同而不同,整数的绝对值越大,整数所需要的字结束越多。整数用补码来表示,二进制位数为8的倍数,至少有一个符号位,至多有8个符号位。所以整体来说高9位不全为0,也不全为1。例如整数127的内容的编码为01111111,可以用一个字节,而整数128的内容编码必须要两个字节00000000 10000000。而单字节10000000应该是整数值-128的编码。再如-129的编码为11111111 01111111,129的编码为00000000 10000001。

八位组(OCTET STRING)类型的编码:标记的编码为04,内容的编码就是八位组的具体内容。八位组类型包括几种特殊的类型如主叫号码,被叫号码,通用数字,通用号码等,这些特殊号码内部的编码方式由ITU-T Q.763规定。

空(NULL)类型的编码:标记为5,长度为0,内容无。

枚举(ENUMERATED)类型的编码:标记为0A,玫举的每一个值都是一个整数,内容的编码和它对应的整数的编码相同。

2.3.4 SEQUENCE,SET类型的编码

SEQUENCE的标记的编码为30,SET的标记的编码为31,它们的内容的编码的区别在于内容的各项是否一定保证次序,SEQUENCE内容的各项的次序是要保证的,也就是说编码中的次序必须与ASN.1描述中的次序一致,而SET则没有这个要求。下面以SEQUENCE为例来说明。

例如:

SEQUENCE { }

b INTEGER, c BOOLEAN

此类型的标记为30,内容包括两项,b为一个整数,假设值为10,c为布尔类型,假设值为TRUE,那么对应的这个SEQUENCE类型的值的编码为:30 06 02 01 0A 01 01 FF。

SEQUENCE中的各项可能是可选的,例如

SEQUENCE{ }

b INTEGER OPTIONAL, c BOOLEAN OPTIONAL

如果b不选,c的值为TRUE,那么这个SEQUENCE的值的编码为:30 03 01 01 FF。如果c不选,b的值为10,那么这个SEQUENCE的编码为:30 03 02 01 0A。解码的时候根据标记是01还是02就可以确定SEQUENCE中实际哪一项没有选。

上面的例子是SEQUENCE中的两项的类型不相同的情况,如果两项的类型相同,例如:

SEQUENCE{ }

b INTEGER OPTIONAL, c INTEGER OPTIONAL

b和c都是INTEGER,可以看出这个定义是有问题的。所以SEQUENCE中的各项一般是有标

10

中国智能网应用协议C-INAP详解(CS1部分)

记类型,例如:

SEQUENCE{ }

b [0]INTEGER OPTIONAL, c [1]INTEGER OPTIONAL

如果b和c都选(值为10和5),这个SEQUENCE类型的值的编码为:30 0A A0 03 02 01 0A A1 03 02 01 05。A0是标记[0]的编码(上下文指定,并且为构造编码),A1是标记[1]的编码。如果由某一项不选,解码的时候可以根据A0还是A1来区分到底哪一项没选。

实际上上面的编码中整数的标记和长度已经不重要了,所以可以把SEQUENCE定义为:

SEQUENCE{ }

b [0]IMPLICIT INTEGER OPTIONAL, c [1]IMPLICIT INTEGER OPTIONAL

因为定义中用IMPLICIT修饰了INTEGER,所以编码的时候INTEGER的标记和长度可以隐含,如果b和c都选(值为10和5),这个SEQUENCE类型的值的编码为:30 0A 80 01 0A 81 01 05。注意到标记[0]和标记[1]的编码分别变为80和81,这是因为这两个有标记类型的值的内容已经是不可再分的原编码。

如果一个ASN.1的模块定义中的所有有标记类型的定义都使用IMPLICIT,可以在模块定义的开头使用IMPLICIT TAG(见2.2.1),这样模块体中所有的有标记类型都缺省使用了IMPLICIT。

如果SEQUENCE的各项类型一致,语义上又没有区别,可以这样定义,例如:

SEQUENCE SIZE(1..5) OF INTEGER

如果这个SEQUENCE的实际的值是3个整数(例如3,10和128)的序列,那么他的编码是:30 0A 02 01 03 02 01 0A 02 02 00 80 2.3.5 CHOICE类型的编码

CHOICE类型的定义方式类似于SEQUENCE,不过它没有一个自己的特殊标记,它的编码就是它所定义的各项之一的编码。例如:

CHOICE { }

a [0]INTEGER, b [1]INTEGER

如果CHOICE选的是a,整数值为10,那么这个值的编码就是a的编码:80 01 0A(在这里已经假定它所在的模块定义的开头使用了IMPLICIT TAG)。

2.4 INAP中常用的ASN.1宏

除了使用ASN.1的基本语法规则来定义协议之外,ASN.1还提供了宏定义的手段来描述协议中的更多的概念。下面介绍几种INAP中常用的宏定义。

OPERATION MACRO::= BEGIN

TYPE NOTATION

::= Argument Result Errors LinkedOperations

VALUE NOTATION ::= value(VALUECHOICE{

欣方智能通信系统有限公司 11

localValue INTEGER,

globalValue OBJECT IDENTIFIER})

Argument Result Errors ResultType

::= \::= \::= NamedType | empty

::= \

::= \::= ErrorList | empty

::= Error | ErrorList \::= value (ERROR)

::= OperationList | empty

::= Operation | OperationList \

::= value (OPERATION) - - shall reference an operation value

| type - - shall reference an operation type if no operation value is specified ::= identifier type | type

- - shall reference an error value

| type - - shall reference an error type if no error value is specified

LinkedOperations ErrorNames ErrorList Error

LinkedOperation OperationList Operation END

NamedType

上面是操作(OPERATION)宏的定义,它定义了一个框架,协议定义者用此来定义操作。这个框架说明了定义操作类型的语法和定义操作值的语法。操作的值可以采用一个整数来定义本地值,也可以用一个对象标识来定义它的全局值。操作的类型定义较为复杂,它包括四个部分:参数部分,返回结果部分,返回错误部分,链接操作部分:

? 参数部分可以为空,也可以是ARGUMENT关键字和一个已定义的数据类型。 ? 返回结果部分可以为空也可以是RESULT关键字和返回结果的参数,而返回结果的参数可

以为空,也可以是一个已定义的数据类型。

? 返回错误部分可以为空,也可以是ERROR关键字和用花括号括起来的一些可能的错误名

字的列表。

? 链接操作部分可以为空,也可以是LINKED关键字和用花括号括起来的一些可能的链接操

作名字的列表。

操作的几个要素是否为空决定了操作的类别,使得操作分为4类: ? 1类操作:操作执行正确有返回结果,操作执行错误有返回错误; ? 2类操作:操作执行正确无返回信息,操作执行错误有返回错误; ? 3类操作:操作执行正确有返回结果;操作执行错误无返回信息; ? 4类操作:操作执行正确和错误都无返回信息。

ERROR MACRO::= BEGIN

TYPE NOTATION

::= Parameter

localValue INTEGER,

globalValue OBJECT IDENTIFIER})

VALUE NOTATION ::= value(VALUE CHOICE{

Parameter NamedType END

::= \::= identifier type | type

上面是错误(ERROR)宏的定义,它定义了用于定义错误的一个框架,这个框架说明了定义错

12

中国智能网应用协议C-INAP详解(CS1部分)

误的类型的语法和定义错误值的语法。错误的值可以采用一个整数来定义本地值,也可以用一个对象标识来定义它的全局值。错误的类型定义部分可以为空,也可以是PARAMETER关键字和一个已定义的数据类型。

APPLICATION-SERVICE-ELEMENT MACRO::= BEGIN

TYPE NOTATION ConsumerInvokes SupplierInvokes OperationList Operation END

::= ConsumerInvokes SupplierInvokes ::= value (VALUE OBJECT IDENTIFIER)

::= \::= \::= Operation | OperationList \::= value (OPERATION)

VALUE NOTATION

上面是应用服务单元(APPLICATION-SERVICE-ELEMENT)宏的定义,它定义了用于定义ASE的一个框架,这个框架说明了定义ASE的类型的语法和定义ASE值的语法。ASE的值是一个对象标识。ASE的类型定义部分分为两个部分,消费者调用的操作和提供者调用的操作。两部分分别是CONSUMEZR INVOKES和SUPPLIER INVOKES关键字和用花括号括起来的操作名字的集合。

APPLICATION-CONTEXT MACRO ::= BEGIN

TYPE NOTATION

::= InitiatorConsumerOf ResponderConsumerOf | empty

VALUE NOTATION ::= value(VALUE OBJECT IDENTIFIER)

InitiatorConsumerOf ::= \ResponderConsumerOf ASEList ASE END

::= type

::= \-- shall reference an APPLICATION-SERVICE-ELEMENT type.

::= ASE | ASEList \

上面是应用上下文(APPLICATION-CONTEXT)宏的定义,它定义了用于定义AC的一个框架,这个框架说明了定义AC的类型的语法和定义AC值的语法。AC的值是一个对象标识。AC的类型定义部分分为两个部分,启动方作为消费者的ASE的集合和应答方作为消费者的ASE集合。

欣方智能通信系统有限公司 13

3 操作,应用服务单元和应用上下文

3.1 概述

操作(OPERATION)是INAP中的一个重要的协议内容。因为INAP是基于7号信令的SCCP/TCAP之上的,TCAP用户之间传递消息都是通过操作的调用来实现的,所以INAP将智能网各个功能实体之间的消息定义为一个个的操作。

INAP 操作可有四种类别:

? 类别1 成功和失败都报告 ? 类别2 仅报告失败 ? 类别3 仅报告成功

? 类别4 成功和失败都不报告

C-INAP定义了27个操作,这些操作是: 操作名 操作名(中文) 操作类别 本地值 ActivateServiceFiltering 1 42 激活业务过滤 ActivityTest 3 55 激活测试 ApplyCharging 2 35 申请计费 ApplyChargingReport 2 36 申请计费报告 AssistRequestInstructions 2 16 辅助请求指令 CallGap 4 41 呼叫间隙 CallInformationReport 4 44 呼叫信息报告 CallInformationRequest 2 45 呼叫信息请求 Cancel 2 53 取消 CollectInformation 2 27 收集信息 Connect 2 20 连接 ConnectToResource 2 19 连接到资源 Continue 4 31 继续 DisconnectForwardConnection 2 18 切断前向连接 EstablishTemporaryConnection 2 17 建立临时连接 EventReportBCSM 4 24 BCSM计费事件报告 FurnishChargingInformation 2 34 提供计费信息 InitialDP 2 0 启动DP InitiateCallAttempt 2 32 启动试呼 PlayAnnouncement 2 47 播送通知 PromptAndCollectUserInformatio提示并收集用户信息 1 48 n ReleaseCall 4 22 释放呼叫 RequestReportBCSMEvent 2 23 请求报告BCSM事件 ResetTimer 2 33 重设定时器 SendChargingInformation 2 46 发送计费信息 ServiceFilteringResponse 4 43 业务过滤响应 SpecializedResourceReport 4 49 专用资源报告 这些操作分别被包含在20个ASE中,而这20个ASE又构成了7种应用上下文: 14

中国智能网应用协议C-INAP详解(CS1部分)

IN-CS1-SSP-to-SCP-AC:SSP通过InitialDP操作向SCP发起对话。

IN-CS1-assist-handoff-SSP-to-SCP-AC:辅助SSP通过AssistRequestInstruction操作向SCP发起对话,报告SCP临时连结建立成功。

IN-CS1-IP-to-SCP-AC:IP通过AssistRequestInstruction操作向SCP发起对话,报告SCP临时连结建立成功。

IN-CS1-SCP-to-SSP-AC:SCP通过InitialCallAttempt操作向SSP发起对话

IN-CS1-SCP-to-SSP-traffic-management-AC:SCP通过CallGap操作向SSP发起对话,做流量控制。

IN-CS1-SCP-to-SSP-service-management-AC:SCP通过ActivateServiceFiltering操作向SSP发起对话,做业务过滤。

IN-CS1-SSP-to-SCP-service-management-AC:SSF通过ServiceFilteringResponse操作向SCP发起对话,报告业务过滤的结果。

这7种应用上下文规定了INAP所使用的TCAP对话的几种不同的启动方式,从而完成智能网的几个不同的功能。

3.2 操作的定义

下面是操作定义的ASN.1模块,其中使用了OPERATION宏

IN-CS1-Operations {ccitt recommendation q 1218 modules(0) cs1-operations(0) version1(0)} DEFINITIONS ::= BEGIN IMPORTS

-- 这个模块所用到的OPERATION宏是从q.773引入的

OPERATION

FROM TCAPMessages {ccitt recommendation q 773 modules(0) messages(1) version2(2)}

-- 这个模块所用到的一些ERROR的名字是从INAP的cs1-errors模块引入的

Cancelled, CancelFailed, ETCFailed,

ImproperCallerResponse, MissingCustomerRecord, MissingParameter, ParameterOutOfRange, RequestedInfoError, SystemFailure, TaskRefused, UnavailableResource,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter, UnknownLegID

FROM IN-CS1-Errors {ccitt recommendation q 1218 modules(0) cs1-errors(1) version1(0)}

-- 这个模块所用到的一些关于操作参数的数据类型名字是从INAP的cs1-datatypes模块引入的

ActivateServiceFilteringArg,

欣方智能通信系统有限公司

15

ApplyChargingArg, ApplyChargingReportArg, AssistRequestInstructionsArg, CallGapArg,

CallInformationReportArg, CallInformationRequestArg, CancelArg,

CollectInformationArg, ConnectArg,

ConnectToResourceArg,

EstablishTemporaryConnectionArg, EventReportBCSMArg,

FurnishChargingInformationArg, InitialDPArg,

InitiateCallAttemptArg, PlayAnnouncementArg,

PromptAndCollectUserInformationArg, ReceivedInformationArg, ReleaseCallArg,

RequestReportBCSMEventArg, ResetTimerArg,

SendChargingInformationArg, ServiceFilteringResponseArg, SpecializedResourceReportArg

FROM IN-CS1-DataTypes {ccitt recommendation q 1218 modules(0) cs1-datatypes(2) version1(0)};

-- 下面就是具体的操作的定义

-- ActivateServiceFiltering操作主要是为电子投票,大众呼叫等业务而提供的一个操作,一般在这些业务的某个用户号码开通之前,SCF使用这个操作设置一下要进行业务过滤的业务号码,过滤的方式,被过滤掉的呼叫的处理方式等信息。这样只有少数的呼叫上报给SCF,大量的呼叫在SSF处理掉,呼叫的一些统计数据在SSF纪录,SSF会使用ServiceFilteringResponse操作将统计结果报告给SCF。

-- 接收本操作后, SSF用指定的方式处理到目的地的呼叫而不需要请求SCF的指令。 在业务过滤时, SSF执行规定的业务过滤算法。 业务过滤结果的传送参见ServiceFilteringResponse操作。

ActivateServiceFiltering ARGUMENT

ActivateServiceFilteringArg -- 操作的参数是其它模块定义的数据类型 RESULT -- 操作有结果返回,但是结果中没有参数 ERRORS { -- 操作又可能返回的错误信息 16

MissingParameter, ParameterOutOfRange, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedParameter

::= OPERATION

中国智能网应用协议C-INAP详解(CS1部分)

}

-- ActiviyTest操作用于SCF和SSF之间维持对话的存在,一般的,在呼叫接通后的通话期间SCF每隔几分钟向SSF发送一次,如果收不到返回结果,SCF认为对话已经结束,SCF可以释放针对这个呼叫的资源。

ActivityTest RESULT

::= OPERATION

-- ApplyCharging操作用于SCF将计费有关的信息发给SSF,SSF可以按照ApplyCharging操作的参数所规定的计费方式进行计费,在一个呼叫过程中可以建立多个连接,对于一个连接的每一呼叫方, 都可以在连接开始时调用本操作。ApplyChargingReport操作将计费的结果发给SCF

ApplyCharging ARGUMENT

ApplyChargingArg MissingParameter,

UnexpectedComponentSequence, UnexpectedParameter, UnexpectedDataValue, ParameterOutOfRange, SystemFailure, TaskRefused } ERRORS {

::= OPERATION

-- ApplyChargingReport操作SSF向SCF报告SCF在前面“申请计费”操作中所请求的与计费相关的信息。

-- 在一个连接配置中, ApplyChargingReport操作可以在多个场合被调用。 对于一连接配置的每一呼叫方, ApplyChargingReport操作也可以调用多次。 注:最后的ApplyChargingReport操作用于连接配置结束时的计费处理。

ApplyChargingReport ARGUMENT

ApplyChargingReportArg MissingParameter,

UnexpectedComponentSequence, UnexpectedParameter, UnexpectedDataValue, ParameterOutOfRange, SystemFailure, TaskRefused } ERRORS {

::= OPERATION

-- 如果业务要求在独立IP或辅助SSP提供SRF的功能,SCF必须使用EstablishTemperaryConnection操作让SSP连接独立IP或辅助SSP的语音资源,连接成功后,独立IP或辅助SSP会发送AssistRequestInstruction操作给SCP,SCP就可以直接发送播放提示音或收号有关的操作给独立IP或辅助SSP。

AssistRequestInstructions ARGUMENT 欣方智能通信系统有限公司

17

::= OPERATION

AssistRequestInstructionsArg MissingCustomerRecord, MissingParameter, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

ERRORS {

-- SCP为了限制呼叫的流量发送CallGap操作给SSP,SSP就会根据CallGap的参数的规定限制上报给SCP的呼叫的数量。这个操作一般是网络管理员根据经验定时启动SCP发送,或者SCP检测出话务量很大而自动发送。

CallGap ARGUMENT

CallGapArg

::= OPERATION

-- CallInformationRequest操作用于SSP根据SCP的CallInformationRequest操作的要求报告一些呼叫有关的信息。

-- 以下事件之一可以导致本操作的发送:

-- 呼叫中的A方释放 -- 呼叫中的A方放弃 -- 呼叫中的B方释放 -- 呼叫中的B方忙 -- SSF 的无应答定时器超时 -- 网络指示路由选择故障

-- SCP启动释放呼叫

-- 如果上述事件由EDP-R检测出, 则先发送“呼叫信息报告”,再发送“BCSM事件报告”。如果上述事件由EDP-N检出, 则先发送“BCSM事件报告”,再发送“呼叫信息报告”。

CallInformationReport ARGUMENT

CallInformationReportArg

::= OPERATION

::= OPERATION

-- CallInformationRequest操作用于SCP向SSP请求一些呼叫有关的信息。

CallInformationRequest ARGUMENT 18

CallInformationRequestArg MissingParameter, ParameterOutOfRange, RequestedInfoError, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter ERRORS {

中国智能网应用协议C-INAP详解(CS1部分)

}

-- SCP用Candel操作请求SSF/SRF取消先前请求的一个操作。SRF中可被取消的操作是PlayAnouncement或PromptAndCollectUserInformation,SSF中任何操作均可被取消。

Cancel

::= OPERATION

ARGUMENT

CancelArg CancelFailed, MissingParameter, TaskRefuse } ERRORS {

-- SCP发送CollectInformation操作给SSP,请求SSP的呼叫处理返回到“收集信息”PIC,并使用SSF/CCF的资源收集用户信息,本操作只能处于呼叫建立阶段的呼叫才能使用。

-- 当用户提供“被叫用户号码”时, “收集信息”PIC的处理包括从主叫方收集目的地信息。当“被叫用户号码”(所拨数字)包括在“收集信息”操作中时, 不收集进一步信息(例如: SSF/CCF根据提供编号计划检查提供的“被叫用户号码”)。

CollectInformation ARGUMENT

CollectInformationArg MissingParameter, ParameterOutOfRange, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter } ERRORS {

::= OPERATION

-- SCP发送Connect操作给SSP将呼叫连接一个被叫,为此,SSF可使用从主叫方获得的目的地信息(例如:所拨号码)和SCP提供的已有的呼叫建立的信息(例如:到中继群表的路由索引)。

-- 一般情况下,“连接”操作中提供给SSF的所有参数将替代CCF中已接收的相应信令参数,并用于后续的呼叫处理。“连接”操作中没有提供的参数将保留CCF中原来的值,用于后续的呼叫处理。

Connect ARGUMENT

ConnectArg MissingParameter, ParameterOutOfRange, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter

19

ERRORS {

::= OPERATION

欣方智能通信系统有限公司

}

::= OPERATION

-- SCP发送ConnectToResource操作连接一个语音资源,准备播放提示音或收号

ConnectToResource ARGUMENT

ConnectToResourceArg MissingParameter, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

::= OPERATION

::= OPERATION

ERRORS {

-- SCP使用Continue操作给SSP让等待SCP指令的呼叫继续进行

Continue

-- SCP发送DisconnectForwardConnection操作切断与语音资源的连接

DisconnectForwardConnection ERRORS {

SystemFailure, TaskRefused,

UnexpectedComponentSequence }

-- 如果业务要求在独立IP或辅助SSP提供SRF的功能,SCP使用EstablishTemperaryConnection操作让SSP连接独立IP或辅助SSP的语音资源

EstablishTemporaryConnection ARGUMENT

EstablishTemporaryConnectionArg ETCFailed, MissingParameter, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

::= OPERATION

ERRORS {

::= OPERATION

-- SSP 发送EventReportBCSM操作给SCP将挂机,被叫忙等事件报告给SCP

EventReportBCSM ARGUMENT

EventReportBCSMArg

-- SCP发送FurnishChargingInformation给SSP让SSP产生话单或者在话单中加入一些信息,这些话单只用于脱机计费

FurnishChargingInformation ARGUMENT 20

::= OPERATION

中国智能网应用协议C-INAP详解(CS1部分)

FurnishChargingInformationArg MissingParameter, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

ERRORS {

-- 在BCSM中检测到一个TDP-R后, SSF 发送InitialDP操作以请求SCP给出完成呼叫的指令,例如:SSP分析到智能业务接入码,使用InitialDP操作将业务键,主叫号码,被叫号码等信息报告给SCP,让SCP启动一个业务逻辑。

InitialDP ARGUMENT

InitialDPArg

MissingCustomerRecord, MissingParameter, ParameterOutOfRange, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

::= OPERATION

ERRORS {

::= OPERATION

-- SCP主动启动一个业务逻辑发送InitiateCallAttempt操作给SSP开始一个智能呼叫

InitiateCallAttempt ARGUMENT

InitiateCallAttemptArg MissingParameter, ParameterOutOfRange, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

::= OPERATION

ERRORS {

-- SCF发送ReleaseCall给SSF来终止在任何呼叫阶段的任何呼叫方

ReleaseCall ARGUMENT

ReleaseCallArg

-- SCP发送RequestReportBCSMEvent请求SSP检测一些事件,如果这些事件发生,SSP就用EventReportBCSM操作将事件报告给SCP

RequestReportBCSMEvent 欣方智能通信系统有限公司

::= OPERATION

21

ARGUMENT

RequestReportBCSMEventArg MissingParameter, ParameterOutOfRange, SystemFailure, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter } ERRORS {

-- SSP在呼叫处理过程中设置了一个较短的计时器,如果SCP要求播放一个较长时间的提示音,一般在此之前要发送ResetTimer操作给SSP设置一个较长的计时器,以防止SSP超时

ResetTimer ARGUMENT

ResetTimerArg MissingParameter, ParameterOutOfRange, TaskRefused,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

::= OPERATION

ERRORS {

::= OPERATION

-- 目前C-INAP中虽然包含了此操作,但是没有定义它的具体参数,所以尚未使用

SendChargingInformation ARGUMENT

SendChargingInformationArg MissingParameter,

UnexpectedComponentSequence, UnexpectedParameter, ParameterOutOfRange, SystemFailure, TaskRefused, UnknownLegID }

::= OPERATION

ERRORS {

-- SSP发送ServiceFilteringResponse给SCP报告业务过滤的结果

ServiceFilteringResponse ARGUMENT

ServiceFilteringResponseArg

::= OPERATION

-- SCP发送PlayAnnouncement操作给SSP或IP请求播放语音

PlayAnnouncement ARGUMENT 22

中国智能网应用协议C-INAP详解(CS1部分)

PlayAnnouncementArg Cancelled, MissingParameter, ParameterOutOfRange, SystemFailure, TaskRefuse,

UnavailableResource,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

SpecializedResourceReport }

::= OPERATION

ERRORS {

LINKED {

-- SCP发送PromptAndCollectUserInformation操作给SSP或IP请求播放语音并收号

PromptAndCollectUserInformation ARGUMENT

PromptAndCollectUserInformationArg ReceivedInformationArg Cancelled,

ImproperCallerResponse, MissingParameter, ParameterOutOfRange, SystemFailure, TaskRefused, UnavailableResource,

UnexpectedComponentSequence, UnexpectedDataValue, UnexpectedParameter }

::= OPERATION

RESULT ERRORS {

-- SSP或IP在语音播放完毕之后发送SpecializedResourceReport通知SCP

SpecializedResourceReport ARGUMENT END

SpecializedResourceReportArg

3.3 应用服务单元(ASE)的定义

C-INAP在SCF、SSF和SRF间定义了20个ASE。一个ASE提供给用户一组操作接口。ASE在对等的应用实体内的实现是一致的,并且是应用对应的。对一个ASE来说,这两个对等实体一个

欣方智能通信系统有限公司

23

是提供者,一个是消费者。提供者调用的ASE操作在消费者中实现,并由消费者返回操作的结果。反之,消费者调用的ASE操作在提供者中实现,并由提供者返回操作的结果。

在此仅将IN-CS1-Codes模块定义的片断列出,说明操作与ASE的对应关系: 1) SCF激活ASE

SCF-Activation-ASE -- consumer is SSF CONSUMER INVOKES {

initialDP }

::= APPLICATION-SERVICE-ELEMENT

-- supplier is SCF SUPPLIER INVOKES

2) SCF-SRF激活辅助ASE

SCF-SRF-activation-of-assist-ASE -- consumer is SSF/SRF CONSUMER INVOKES {

assistRequestInstructions }

::= APPLICATION-SERVICE-ELEMENT

-- supplier is SCF SUPPLIER INVOKES

3) 建立辅助连接ASE

Assist-connection-establishment-ASE -- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES {

4)

establishTemporaryConnection }

::= APPLICATION-SERVICE-ELEMENT

基本切断资源ASE

::= APPLICATION-SERVICE-ELEMENT

Generic-disconnect-resource-ASE -- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES {

disconnectForwardConnection }

5) 非辅助连接建立ASE

Non-assisted-connection-establishment-ASE ::= APPLICATION-SERVICE-ELEMENT -- consumer is SSF CONSUMER INVOKES -- supplier is SCF 24

中国智能网应用协议C-INAP详解(CS1部分)

SUPPLIER INVOKES { connectToResource }

6) 连接ASE

Connect-ASE

-- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES { connect

}

7) 呼叫处理ASE

Call-handling-ASE

-- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES { releaseCall }

8) BCSM 事件处理ASE

BCSM-event-handling-ASE

-- consumer is SSF CONSUMER INVOKES { eventReportBCSM

}

-- supplier is SCF SUPPLIER INVOKES { requestReportBCSMEvent }

9) SSF呼叫处理ASE

SSF-call-processing-ASE

-- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES { collectInformation, continue }

10) SCF呼叫启动ASE

欣方智能通信系统有限公司

::= APPLICATION-SERVICE-ELEMENT

::= APPLICATION-SERVICE-ELEMENT

::= APPLICATION-SERVICE-ELEMENT

::= APPLICATION-SERVICE-ELEMENT

25

SCF-call-initiation-ASE -- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES {

initiateCallAttempt }

::= APPLICATION-SERVICE-ELEMENT

11) 定时器ASE

Timer-ASE

::= APPLICATION-SERVICE-ELEMENT

-- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES {

resetTimer }

12) 帐单ASE

Billing-ASE

::= APPLICATION-SERVICE-ELEMENT

-- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES {

furnishChargingInformation }

13) 计费ASE

Charging-ASE -- consumer is SSF CONSUMER INVOKES {

applyChargingReport }

::= APPLICATION-SERVICE-ELEMENT

-- supplier is SCF SUPPLIER INVOKES {

applyCharging }

14) 流量管理ASE

Traffic-management-ASE -- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES { 26

callGap

::= APPLICATION-SERVICE-ELEMENT

中国智能网应用协议C-INAP详解(CS1部分)

}

15) 业务管理ASE

Service-management-ASE ::= APPLICATION-SERVICE-ELEMENT

-- consumer is SSF CONSUMER INVOKES { serviceFilteringResponse,

}

-- supplier is SCF SUPPLIER INVOKES { activateServiceFiltering }

16) 呼叫报告ASE

Call-report-ASE

::= APPLICATION-SERVICE-ELEMENT

-- consumer is SSF CONSUMER INVOKES { callInformationReport

}

-- supplier is SCF SUPPLIER INVOKES { callInformationRequest }

17) 信令控制ASE

Signalling-control-ASE

::= APPLICATION-SERVICE-ELEMENT

-- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES { sendChargingInformation

}

18) 专用资源控制ASE Specialized-resource-control-ASE ::= APPLICATION-SERVICE-ELEMENT

-- consumer is SSF/SRF

CONSUMER INVOKES { specializedResourceReport

}

-- supplier is SCF SUPPLIER INVOKES { playAnnouncement,

promptAndCollectUserInformation

}

欣方智能通信系统有限公司

27

19) 取消ASE

Cancel-ASE

::= APPLICATION-SERVICE-ELEMENT

-- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES {

cancel }

20) 活跃测试ASE

Activity-test-ASE -- consumer is SSF CONSUMER INVOKES -- supplier is SCF SUPPLIER INVOKES {

activityTest }

::= APPLICATION-SERVICE-ELEMENT

3.4 应用上下文定义

应用上下文协商机制允许两个通信实体准确地识别他们自身的能力和接口所需的能力。应用上下文协商机制可以对不同版本进行协商,从而支持智能网能力集的不断演进。

当一个智能网结点向另一结点发起对话时,要在第一个TCAP消息中包含应用上下文名称。如果对端结点支持该应用上下文,则在第一个响应消息中包含相同的应用上下文;如果对端结点不支持该应用上下文,可返回其所支持的应用上下文名称,以重新发起新的对话。

TCAP应用上下文协商机制只适用于 SCF 接口。

TCAP应用上下文协商机制的详细情况参见ITU-T建议Q.770系列。

C-INAP共定义了7种应用上下文,每种应用上下文对应一组INAP-ASE的集合,以及它们的一种使用方式。下面分别介绍这些应用上下文的定义。

IN-CS1-SSP-to-SCP-AC APPLICATION-CONTEXT

INITIATOR CONSUMER OF {

SCF-activation-ASE,

Assist-connection-establishment-ASE, Generic-disconnect-resource-ASE,

Non-assisted-connection-establishment-ASE, Connect-ASE Call-handling-ASE, BCSM-event-handling-ASE, SSF-call-processing-ASE, Timer-ASE, Billing-ASE, Charging-ASE,

Traffic-management-ASE,

28

中国智能网应用协议C-INAP详解(CS1部分)

Call-report-ASE, Signalling-control-ASE,

Specialized-resource-control-ASE, Cancel-ASE, Activity-test-ASE,

}

::= {ccitt recommendation q 1218 ac(1) cs1-ssp-to-scp(0) version1(0)};

上面是IN-CS1-SSP-to-SCP-AC的定义,这个应用上下文是INAP中最基本的也是最常用的应用上下文,图1-2和图1-3所使得INAP流程就是这个应用上下文应用的例子。这个应用上下文所包含的仅仅是在SSP用InitialDP操作发起对话,此后SSP与SCP之间的操作的交互,下面再给出一个较为完整的例子:

SSP SCP 主叫用户

拨业务接入码 被叫用户 接续 应答 InitialDP,发起对话,启动SCP的业务逻辑 RequestReportBCSMEvent操作设置一些事件的检测点 ApplyCharging操作设置记费有关的一些信息 Connect操作连接实际被叫号码 EventReportBCSM操作报告应答(oAnswer)事件 ActivityTest操作 挂机 ActivityTest操作的返回结果 EventReportBCSM操作报告挂机(oDisconnect)事件 ApplyChargingReport操作报告记费的结果 图3-1:IN-CS1-SSP-to-SCP-AC的一个INAP消息流程示例

IN-CS1-assist-handoff-SSP-to-SCP-AC APPLICATION-CONTEXT

INITIATOR CONSUMER OF {

SCF-SRF-activation-of-assist-ASE, Generic-disconnect-resource-ASE,

Non-assisted-connection-establishment-ASE, Call-handling-ASE, Timer-ASE, Billing-ASE, Charging-ASE,

Specialized-resource-control-ASE, Cancel-ASE, Activity-test-ASE

}

::= {ccitt recommendation q 1218 ac(1) cs1-assist-handoff-ssp-to-scp(2) version1(0)};

图3-1 是使用IN-CS1-SSP-to-SCP-AC应用上下文的一个例子,启动对话的SSP自己可以提供

语音资源。如果启动对话的SSP不能提供语音资源,SCP也许需要一个辅助SSP来提供语音资源,图3-2是这个流程的示意:

图3-2中SCP与启动SSP之间的INAP消息流程仍然是IN-CS1-SSP-to-SCP-AC应用上下文的

欣方智能通信系统有限公司

29

内容,而SCP与辅助SSP之间的一段交互流程就是IN-CS1-assist-handoff-SSP-to-SCP-AC应用上下文的内容。

主叫用户

拨业务接入码 启动SSP

InitialDP,发起对话,启动SCP的业务逻辑 RequestReportBCSMEvent操作设置一些事件的检测点 EstablishTemperaryConnection与辅助SSP建立临时连结 辅助SSP Setup Req Setup Rep AssistRequestInstruction操作指示连接成功 ConnectToResource操作连接资源 主叫用户听到语音 PlayAnouncement操作播放语音 SpecializeResourceReport操作报告语音结束 DisconnectForwardConnect操作断开与辅助SSP的连接 Disconnect 挂机 EventReportBCSM操作报告挂机(oDisconnect)事件 图3-2:使用辅助SSP的一个INAP消息流程示例

SCP

IN-CS1-assist-handoff-SSP-to-SCP-AC就是辅助SSP用AssistRequestInstruction操作启动对话,SCP控制辅助SSP使用辅助SSP所提供的特殊资源。

IN-CS1-IP-to-SCP-AC APPLICATION-CONTEXT

INITIATOR CONSUMER OF {

SCF-SRF-activation-of-assist-ASE, Specialized-resource-control-ASE, Cancel-ASE,

}

::= {ccitt recommendation q 1218 ac(1) cs1-ip-to-scp(3) version1(0)};

与IN-CS1-assist-handoff-SSP-to-SCP-AC类似的是IN-CS1-IP-to-SCP-AC,同样是因为启动SSP不能提供特殊资源功能,而SCP直接使用独立IP的特殊资源。如图3-3所示:

图3-3中SCP与启动SSP之间的INAP消息流程仍然是IN-CS1-SSP-to-SCP-AC应用上下文的内容,而SCP与独立IP之间的一段交互流程就是IN-CS1-IP-to-SCP-AC应用上下文的内容。IN-CS1-IP-to-SCP-AC就是独立IP用AssistRequestInstruction操作启动对话,SCP控制独立IP和使用独立IP所提供的特殊资源。

30

中国智能网应用协议C-INAP详解(CS1部分)

主叫用户 拨业务接入码 启动SSP InitialDP,发起对话,启动SCP的业务逻辑 RequestReportBCSMEvent操作设置一些事件的检测点 EstablishTemperaryConnection与独立IP建立临时连结 独立IP Setup Req Setup Rep AssistRequestInstruction操作指示连接成功 主叫用户听到语音 PlayAnouncement操作播放语音 SCP SpecializeResourceReport操作报告语音结束 DisconnectForwardConnect操作断开与独立IP的连接 Disconnect 挂机 EventReportBCSM操作报告挂机(oDisconnect)事件 图3-3:使用独立IP的一个INAP消息流程示例

IN-CS1-SCP-to-SSP-AC APPLICATION-CONTEXT

RESPONDER CONSUMER OF {

Assist-connection-establishment-ASE, Generic-disconnect-resource-ASE,

Non-assisted-connection-establishment-ASE, Connect-ASE Call-handling-ASE, BCSM-event-handling-ASE, SSF-call-processing-ASE, SCF-call-initiation-ASE, Timer-ASE, Billing-ASE, Charging-ASE, Call-report-ASE, Signalling-control-ASE,

Specialized-resource-control-ASE, Cancel-ASE, Activity-test-ASE

}

::= {ccitt recommendation q 1218 ac(1) cs1-scp-to-ssp(4) version1(0)};

如果智能业务要求由SCP启动一个呼叫,就需要使用应用上下文IN-CS1-SCP-to-SSP-AC来实现,这个应用上下文是SCP使用InitialCallAttmpt操作来启动一个呼叫如图3-4所示:

IN-CS1-SCP-to-SSP-traffic-management-AC APPLICATION-CONTEXT

RESPONDER CONSUMER OF {

欣方智能通信系统有限公司

31

电话用户 SSP InitialCallAttmpt操作启动一个对话 RequestReportBCSMEvent操作设置一些事件的检测点 Continue操作让SSP继续 EventReportBCSM操作报告应答(oAnswer)事件 ConnectToResource操作连接资源 PlayAnouncement操作播放音 SpecializeResourceReport操作报告语音播放结束 SCP 接续 应答 断开 ReleaseCall操作释放呼叫 图3-4:IN-CS1-SCP-to-SSP-AC 的INAP消息流程示例

}

traffic-management-ASE

::= {ccitt recommendation q 1218 ac(1) cs1-scp-to-ssp-traffic-management(6) version1(0)};

当SCP检测出话务量很大,或者由SMP启动,SCP使用应用上下文IN-CS1-SCP-to-SSP-traffic-management-AC发送CallGap操作启动一个对话,这个对话只有一个操作,然后SCP和SSP自行结束对话

IN-CS1-SCP-to-SSP-service-management-AC APPLICATION-CONTEXT

RESPONDER CONSUMER OF {

}

service-management-ASE

::= {ccitt recommendation q 1218 ac(1) cs1-scp-to-ssp-service-management(7) version1(0)};

当SCP的某个业务需要业务过滤,SCP使用应用上下文IN-CS1-SCP-to-SSP-service-management-AC发送ActevateServiceFiltering操作启动一个对话,SSP回送操作的返回结果。

IN-CS1-SSP-to-SCP-service-management-AC APPLICATION-CONTEXT

INITIATOR CONSUMER OF {

}

service-management-ASE

::= {ccitt recommendation q 1218 ac(1) cs1-ssp-to-scp-service-management(8) version1(0)};

业务过滤执行了一段时间,要有通过过滤的呼叫上报SCP的时候,SSP会使用应用上下文IN-CS1-SSP-to-SCP-service-management-AC发送ServiceFilteringResponse操作启动一个对话,将这个阶段被过滤掉的呼叫的统计信息报告给SCP。

32

中国智能网应用协议C-INAP详解(CS1部分)

4 操作的参数

模块IN-CS1-DataTypes操作及返回结果的参数所用到的数据类型,模块体的前半部分带Arg后缀的类型是操作的参数,后半部分是操作的参数所用到的数据类型的进一步定义,前半部分和后半部分都是按字母顺序排列的。为了清楚起见,将这个模块的两部分分成了4.1节和4.2节,正文中的粗体字是模块定义的内容,其它(包括标题)不属于模块定义。

DEFINITIONS IMPLICIT TAGS ::= BEGIN IMPORTS

InvokeIdType -- 数据类型InvokeIdType是从q.773引入的

FROM TCAPMessages {ccitt recommendation q 773 modules(2) messages(1) version2(2)};

4.1 操作及返回结果的参数定义

4.1.1 ActivateServiceFiltering操作的参数

ActivateServiceFilteringArg

filteredCallTreatment filteringCharacteristics filteringTimeOut filteringCriteria startTime }

::= SEQUENCE {

[0] FilteredCallTreatment, [1] FilteringCharacteristics, [2] FilteringTimeOut, [3] FilteringCriteria, [4] DateAndTime

OPTIONAL,

ActivateServiceFiltering操作的参数,包括:

? 过滤掉的呼叫处理:规定如何处理被过滤掉的呼叫,包括要播送的通知、计费模式、使用

的计数器的个数、被过滤掉的呼叫的释放原因。

? 过滤特性:指明业务过滤的严格程度和发送 “ServiceFilteringResponse”的时间点,并决定

过滤法方法(“时间间隙”或“呼叫次数”)。

? 过滤迂限:指明业务过滤的持续时间,可使用持续时间或停止时间。当定时器超时时,SSP

将给SCF发送“业务过滤响应”, 停止业务过滤,: ? 过滤标准:规定要过滤的呼叫,可基于“业务键”、“主叫地址值”、“被叫地址值”或“位

置号码”。

? 开始时间: 规定业务过滤的开始时间。 如果没有提供“开始时间”或已经满足开始时间,

SSP立即启动业务过滤。

4.1.2 ApplyCharging操作的参数

ApplyChargingArg

::= SEQUENCE {

[0] AChBillingChargingCharacteristics, [1] BOOLEAN DEFAULT TRUE,

aChBillingChargingCharacteristics sendCalculationToSCPIndication

欣方智能通信系统有限公司 33

partyToCharge }

[2] LegID

OPTIONAL,

ApplyCharging操作的参数包括:

? ACH帐单计费特性:规定了要提供给SSP的与计费相关的信息和通过“申请计费报告”

向SCF报告计费结果的条件。

? 发送结果给SCP:指示计费处理结束后,SSP是否向SCP报告计费结果

“ApplyChargingReport”。 ? 计费方:给出“申请计费”操作要加到呼叫的哪一方, 如果不提供本参数的话, 隐含加到A

方。

4.1.3 ApplyChargingReport操作的参数

ApplyChargingReportArg

::= CallResult

ApplyChargingReport操作的参数被定义为CallResult类型,包括呼叫各种结果数据。

4.1.4 AssistRequestInstruction操作的参数

AssistRequestInstructionsArg

correlationID iPAvailable }

::= SEQUENCE {

OPTIONAL, OPTIONAL,

[0] CorrelationID, -- Q.763的通用号码编码,参见Digits [1] IPAvailable [2] IPSSPCapabilities

iPSSPCapabilities

AssistRequestInstruction操作的参数包括:

? 相关ID:相关ID是很关键的一个参数,在图3-2或3-3中,SCF在发送

EstablishTemperaryConnection操作给SSP时将自己的相关ID发给SSP,SSP在连接辅助SSP或独立IP时再将这个相关ID传给辅助SSP或独立IP,辅助SSP或独立IP用AssistRequestInstructionsArg操作发起新的对话时,再将相关ID回送个SCF。SCF根据这个相关ID分别由启动SSP发起的对话和由辅助SSP或IP发起的对话关联起来。

? 可用IP资源:表示IP的资源是否可用,见Q.1290。仅在中继辅助或HAND-OFF 物理方

案时使用本参数。

? IPSSP能力: IP的能力,仅在中继或HAND-OFF 物理方案时使用本参数。

4.1.5 CallGap操作的参数

CallGapArg

::= SEQUENCE {

gapCriteria controlType }

[0] GapCriteria, [2] ControlType

OPTIONAL, OPTIONAL,

gapIndicators [1] GapIndicators, gapTreatment [3] GapTreatment

CallGap操作的参数包括:

? 呼叫阻截准则:指明阻截掉的呼叫的识别标准,可根据主、被叫号码、业务类别等进行识

别。

34

中国智能网应用协议C-INAP详解(CS1部分)

? 阻截指示:指明呼叫阻截机制的特性,包括阻截过程的时长,阻截间隔(例如每多少毫秒

放过一个呼叫)等。 ? 控制类型:表示本次呼叫阻截是如何引起的,一是SCP过负荷时由其拥塞检测机制自动发

现过负荷情况,二是由业务或网络管理者发现拥塞情况时人工启动,其中,“人工启动”的优先级高于“SCP过负荷”引起的呼叫阻截。 ? 阻截呼叫的处理:指明对被阻截的呼叫的处理方式,包括向该呼叫的主叫用户发送的通知,

以及呼叫释放的原因等。

4.1.6 CallInformationReport操作的参数

CallInformationReportArg }

::= SEQUENCE {

requestedInformationList [0] RequestedInformationList,

CallInformationReport操作的参数,是所请求的信息的结果列表,主要包括:被叫号码、呼叫试呼时长时间、呼叫连接时长、呼叫终止时间、呼叫释放原因等。

4.1.7 CallInformationRequest操作的参数

CallInformationRequestArg }

::= SEQUENCE {

requestedInformationTypeList [0] RequestedInformationTypeList,

CallInformationRequest操作的参数,是所请求的信息类型的列表,主要包括:被叫号码、呼叫试呼时长时间、呼叫连接时长、呼叫终止时间、呼叫释放原因等。

4.1.8 Cancel操作的参数

CancelArg

::= CHOICE {

invokeID allRequests }

[0] InvokeID, [1] NULL

Cancel操作的参数包括:

? 调用ID:规定将要被取消的前面所发送的某一操作,例如: “播送通知”或“提示并收集

用户信息”操作。

? 所有请求:表示所有悬置的操作,例如,“BCSM 事件报告”、“申请计费报告”、“呼叫信

息报告”都将被取消。

4.1.9 CollectInformation操作

CollectInformationArg

::= NULL

CollectInformation操作的参数定义为NULL

欣方智能通信系统有限公司 35

4.1.10 Connect操作

ConnectArg

::= SEQUENCE {

[0] DestinationRoutingAddress, [1] AlertingPattern [2] CorrelationID [3] CutAndPaste [8] ScfID

OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL,

destinationRoutingAddress alertingPattern correlationID cutAndPaste scfID

-- Q.763的通用数字编码,参见Digits

originalCalledPartyID

[6] OriginalCalledPartyID

serviceInteractionIndicators callingPartyNumber callingPartysCategory redirectingPartyID }

redirectionInformation

[26] ServiceInteractionIndicators [27] CallingPartyNumber [28] CallingPartysCategory [29] RedirectingPartyID

[30] RedirectionInformation

Connect操作的参数包括:

? 目的地路由地址:包括被叫用户号码。

? 振铃模式:仅用于网路信令支持本参数或SSP是带用户的终端本地局的情况下。

? 相关ID:SCF使用本参数将辅助SSP来的“辅助请求指令”和启动SSP来的“启动DP”

联系起来。 只有在HAND-OFF 程序上下文中, 且“相关ID”不包括在“目的地路由地址”中时使用本参数。

? 剪切和粘贴:SCF使用本参数指示SSP删除从主叫用户收到数字的引示数字, 并将其余号

码补充在SCF提供的“目的地路由地址”的后面。是一个整数(假设为n),SSP将用户所拨的号码删去前面n位,将余下的几位粘接到被叫号码之后

? 原被叫用户ID:见Q.762的原被叫号码信令信息。初始拨叫的号码 ? Scf ID:“Scf ID”仅用于HAND-OFF 程序上下文, 且当“Scf ID”参数没有包括在“目的

地路由地址”信息中时。用于辅助SSP识别SCP

? 业务相互作用指示:本参数由SCF发送给SSP, 用于在发端局和终端局间控制网路基本业

务。

? 主叫用户号码:本参数如果存在, 用于识别呼叫中的主叫方(见Q.762主叫用户号码)。还可

用于如UPT之类需要SCF进行主叫标识验证的业务。规定被叫设备(如移动电话)所显示的主叫号码

? 主叫用户类别:见Q.762 主叫用户类别信令信息。

? 改向用户ID:本参数如果存在, 指示呼叫由哪一个号码最后被改向。 ? 改向信息:见Q.763。 改向信息的信令信息。

4.1.11 ConnectToResource操作

ConnectToResourceArg 36

resourceAddress

none

::= SEQUENCE { CHOICE {

ipRoutingAddress [0] IPRoutingAddress, [3] NULL

中国智能网应用协议C-INAP详解(CS1部分)

}

},

serviceInteractionIndicators

[30] ServiceInteractionIndicators

OPTIONAL

ConnectToResource操作的参数包括:

? 资源地址:指明SRF的物理位置,可显式指明,也可使用预定义的SRF。一般只使用参数

[3]。

? 业务相互作用指示:本参数由SCP 发送给SSP,用于在发端局和终端局控制基于网络的

业务。

4.1.12 EstablishTemperaryConnection操作

EstablishTemporaryConnectionArg

correlationID legID scfID }

::= SEQUENCE {

OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL

assistingSSPIPRoutingAddress [0] AssistingSSPIPRoutingAddress,

[1] CorrelationID [2] LegID [3] ScfID

-- Q.763的通用数字编码,参见Digits

serviceInteractionIndicators [30] ServiceInteractionIndicators

? 辅助SSPIP路由地址:本参数用于指示辅助程序中SRF的路由地址。

? 相关ID:SCF 使用本参数使从辅助SSP(或SRF) 来的“辅助请求指令”和启动SSP来的

请求向关联。

? LegID:一般不用。 ? ScfID:SCF的标识,如果多个SCP都是用一个IP,用于IP决定将AssistRequestInstruction

操作发给那个SCP

? 业务相互作用指示: 本参数由SCP 发送给SSP, 用于在发端局和终端局控制基于网络的

业务,一般不用。

4.1.13 EventReportBCSM操作

EventReportBCSMArg

eventTypeBCSM

::= SEQUENCE { [0] EventTypeBCSM, [1] CorrelationID

OPTIONAL,

bcsmEventCorrelationID }

-- Q.763的通用数字编码,参见Digits

eventSpecificInformationBCSM [2] EventSpecificInformationBCSM OPTIONAL, legID

[3] LegID

OPTIONAL,

{messageType request}

miscCallInfo

[4] MiscCallInfo

DEFAULT

EventReportBCSM操作的参数包括:

? BCSM事件类型:本参数用于规定报告的事件类型。

? BCSM事件相关ID:SCF使用本参数与前面的操作相对应,在此一般不用。

? BCSM事件规定的信息:与这个事件相关的一些信息,例如,收集或分析的被叫号码、事

件发生的原因、连接时间等。

欣方智能通信系统有限公司

37

? LegID:指明呼叫哪一方的事件上报给SSP。

? 杂项呼叫信息:本参数用于指示与检测点相关的信息,表示上报事件是请求SCP指示还是

仅仅通知SCP。

4.1.14 FurnishChargingInformation操作

FurnishChargingInformationArg

::= FCIBillingChargingCharacteristics

FurnishChargingInformation操作的参数定义为FCIBillingChargingCharacteristics

4.1.15 InitialDP操作

InitialDPArg

::= SEQUENCE {

[0] ServiceKey, [2] CalledPartyNumber [3] CallingPartyNumber

OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL,

serviceKey

calledPartyNumber callingPartyNumber callingPartysCategory callingPartySubAddress cGEncountered iPSSPCapabilities iPAvailable miscCallInfo

locationNumber

callingPartyBussinessGroupID [4] CallingPartyBussinessGroupID

[5] CallingPartysCategory [6] CallingPartySubAddress [7] CGEncountered [8] IPSSPCapabilities [9] IPAvailable [11] MiscCallInfo

[10] LocationNumber

originalCalledPartyID highLayerCompatibility

[12] OriginalCalledPartyID [23] HighLayerCompatibility

serviceInteractionIndicators forwardCallIndicators bearerCapability eventTypeBCSM redirectingPartyID }

[24] ServiceInteractionIndicators [26] ForwardCallIndicators [27] BearerCapability [28] EventTypeBCSM [29] RedirectingPartyID

additionalCallingPartyNumber [25] AdditionalCallingPartyNumber OPTIONAL,

redirectionInformation [30] RedirectionInformation

InitialDP操作的参数包括:

? 业务关键字:唯一地标识一个IN业务,指示将调用SCP的哪个业务逻辑。 ? 被叫用户号码:用户拨打智能业务时所拨的号码, 见Q.763。 ? 主叫用户号码:拨打智能业务的用户的主叫号码,见Q.763。 ? 主叫用户在商务通信集团中的标识

? 主叫用户类别:例如是话务员,收费电话还是其他的一般用户,见Q.763。 ? 主叫用户的子地址

? 遇到呼叫间隙: 是否为通过了呼叫阻截(CallGap)的呼叫,见Q.1290。 ? PSSP能力:启动呼叫的SSP提供什么样的特殊资源功能。 ? IP可用性:启动呼叫的SSP是否提供特殊资源。

38

中国智能网应用协议C-INAP详解(CS1部分)

? 位置号码:本参数用于在移动业务中传送主叫用户的地理位置信息,见Q.763。

? 原被叫用户ID: 原始被叫号码信令信息,如果呼叫被前转,这个号码就是最初的号码。

见Q.763。

? 高层一致性:给出高层一致性的类型, 用于决定所连接的ISDN终端的ISDN电信业务。 ? 业务交互表示语:本参数由SSP 发送给SCF,用于在发端局和终端局控制基于网络的业

务。

? 附加主叫用户号码:主叫用户号码由主叫用户接入信令系统提供, 例如PBX提供。

? 前向呼叫指示:指示呼叫是国内还是国际呼叫。它还可用于指示网路接入的信令能力、前

面的网路连接、随后网路连接及希望的的信令能力。

? 承载能力:指明连接至用户的承载能力类型。该参数只有在SSP中有DSS1”Bearer

Capability”参数或ISUP”User Service information”参数时, “承载能力”才可包括在“启动DP”操作中。

? BCSM事件类型:本参数指示由哪一个配置的BCSM检测点事件导致发送“启动DP”操

作。触发事件的类型,一般为3(分析到号码信息)

? 重定向用户ID:本参数指示重定向前的地址号码,即本呼叫是从哪个号码前转过来的。 ? 重定向信息:包含重定向的相关信息,例如前转的次数,见Q.763。

4.1.16 InitiateCallAttempt操作

InitiateCallAttemptArg

alertingPattern

::= SEQUENCE {

[0] DestinationRoutingAddress, [1] AlertingPattern

OPTIONAL, OPTIONAL, OPTIONAL

[29] ServiceInteractionIndicators [30] CallingPartyNumber

destinationRoutingAddress serviceInteractionIndicators callingPartyNumber }

InitiateCallAttempt操作的参数包括:

? 目的地路由地址:要接续到的被叫用户号码,见Q.763。

? 振铃模式:只有在网络信令支持本参数或SSP是用户所在终端交换局时使用。 ? 业务交互指示语:本参数由SCF发送给SSP, 用于在发端局和终端局间控制基本网路业务。 ? 主叫用户号码:本参数指示建立呼叫时假定的主叫用户号码。

4.1.17 PlayAnnouncement操作

PlayAnnouncementArg

::= SEQUENCE { [0] InformationToSend,

[1] BOOLEAN DEFAULT TRUE,

informationToSend

disconnectFromIPForbidden }

requestAnnouncementComplete [2] BOOLEAN DEFAULT TRUE,

? ? ? ?

PlayAnnouncement操作的参数包括:

发送的信息:SRF要发送给主叫用户的通知或信号音或显示信息。

禁止由IP启动拆线:本参数指明当所有提示信息发送完后,是否允许由SRF启动拆线。 请求通知完成:本参数指示当所有信息发送完成后,是否给SCF 发送SpecializeResourceReport操作。

39

欣方智能通信系统有限公司

4.1.18 PromptAndCollectUserInformation操作

PromptAndCollectUserInformationArg

collectedInfo

disconnectFromIPForbidden informationToSend }

::= SEQUENCE {

DEFAULT TRUE, OPTIONAL,

[0] CollectedInfo, [1] BOOLEAN [2] InformationToSend

PromptAndCollectUserInformation操作的参数包括:

? 收集信息:与收集号码有关的一些规定,例如,最小数字个数、最大数字个数、结束数字、

取消数字、开始数字、首位超时、位间超时等。

? 禁止由IP启动拆线:本参数指示当交互作用完成后是否由SRF启动拆除到SSP/CCF的

连接。

? 发送的信息:本参数指示SRF要发送给主叫用户的通知或信号音或显示信息。

ReceivedInformationArg }

digitsResponse

::= CHOICE {

[0] Digits, -- Q.763的通用数字编码,参见Digits

PromptAndCollectUserInformation操作的返回结果的参数包括: ? 数字响应:收到的号码。

4.1.19 ReleaseCall操作

ReleaseCallArg

::= Cause

ReleaseCall操作的参数为呼叫释放原因。

4.1.20 RequestReportBCSMEvent操作

RequestReportBCSMEventArg

bcsmEvents

::= SEQUENCE {

OPTIONAL

[0] SEQUENCE SIZE (1..numOfBCSMEvents) OF BCSMEvent,

bcsmEventCorrelationID [1] CorrelationID

-- Q.763的通用数字编码,参见Digits

}

RequestReportBCSMEvent操作的参数包括:

? BCSM事件:请求设置的检测事件的列表,包括BCSM事件类型、事件监视模式,事件发

生的呼叫方等信息。

? BCSM事件相关ID:SCF用来与先前的操作对应。

4.1.21 ResetTimer操作

ResetTimerArg ::= SEQUENCE {

timerID

[0] TimerID [1] TimerValue,

DEFAULT tssf,

timervalue

40

中国智能网应用协议C-INAP详解(CS1部分)

}

ResetTimer操作的参数包括: ? 计时器标识:一般用tssf。

? 计时值:指明设置的定时器的值,以秒为单位。

4.1.22 ServiceFilteringResponse操作

ServiceFilteringResponseArg

countersValue filteringCriteria responseCondition }

::= SEQUENCE {

[0] CountersValue, [1] FilteringCriteria , [3] ResponseCondition

OPTIONAL

? ServiceFilteringResponse操作的参数,参数[0]是在前一阶段业务过滤中被过滤掉的呼叫的

统计数据,[1]是过滤的准则,根据这个参数SCP可以知道这个操作对应前面发送的哪个ActivateServiceFiltering操作,[3]是这次报告的条件(过滤期间报告,还是过滤结束报告) ? 计数器值:在前一阶段业务过滤中被过滤掉的呼叫的统计数据。

? 过滤标准:根据这个参数SCP可以知道这个操作对应前面发送的哪个

ActivateServiceFiltering操作。

? 响应条件:本参数表示“业务过滤响应”发送的原因,是“立即响应”( 过滤期间报告),

还是“最后响应”( 过滤结束报告)。

4.1.23 SpecializedResourceReport操作

SpecializedResourceReportArg

::= NULL

SpecializedResourceReport操作的参数定义为NULL

4.2 数据类型定义

本节是以上操作的参数所用到的数据类型的定义。

AChBillingChargingCharacteristics :: = SEQUENCE{

chargeMode

[0] OCTET STRING (SIZE(1)) DEFAULT(1) [1] INTEGER(1..127) DEFAULT (1),

-- 计费方式:0 为免费,1为计费

chargeRecordIdentifier

-- 当同一个呼叫需要对多个呼叫方计费时,第一个计费方的\计费纪录标识\为1,第二个计费方的\计费纪录标识\为2

chargeAction

[2] ENUMERATED{

networkChargeRecordGenerationRequest(1), serviceChargeRecordGenerationRequest(2), chargeChange(3), suspendCharging(4), resume charging(5), stop charging(6)

41

欣方智能通信系统有限公司

}

DEFAULT (1),

[4] ENUMERATED{

-- 一般使用2,业务的计费纪录产生请求

callPartToBeCharged

callingSSP(1), sSPCalled(2), callingCalled(3) }

DEFAULT (2),

-- 表示呼叫中要计费的部分,取值1表示呼叫中计费的部分是从主叫到SSP,取值2表示从SSP到被叫,取值3表示从主叫到被叫

chargeRecordTreatment

[5] OCTET STRING (SIZE(1)) DEFAULT(1),

-- 计费纪录(话单)的处理方法。一个字节共8位,第0位置1表示由传输网络相关的计费来决定,第1位置1表示业务相关的计费来决定,第2位置1表示传输网络相关的话单产生,第3位置1表示业务相关的话单产生,第4位置1表示传输网络相关的话单记录,第5位置16表示业务相关的话单记录,第6位置1表示呼叫结束后要求SSP送话单。目前一般使用将第3,5,6位置1,表示产生并记录业务相关的话单,呼叫结束后要求SSP送话单。

callingPartyNumber calledPartyNumber translatedPartyNumber locationNumber

[6] CallingPartyNumber OPTIONAL, [7] CalledPartyNumber [8] CalledPartyNumber [9] LocationNumber

OPTIONAL, OPTIONAL, OPTIONAL, DEFAULT (2),

chargedPartyIdentityIndicator [10] INTEGER (1..127)

-- 计费方的标识。1表示callingPartyNumber所指主叫号码计费,2表示对calledPartyNumber所指的被叫号码计费,3表示对translatedPartyNumber所指的翻译出来的号码计费,127表示对后面specifiedChargedPartyNumber所指定的特定号码计费

specifiedChargedPartyNumber

surcharge

[11] OCTET STRING (SIZE(11)),OPTIONAL [12] SEQUENCE{

surchargeValue [1] INTEGER( 0..32767),

-- 附加费的值,根据下述的附加费类型的不同有不同的含义 surchargeType [2] INTEGER(1..127)

-- 可以取值1或2。1表示附加费的值是钱数,以分为单位。2表示附加费的值是附加的费率,如果计费是以分钟为单位,附加费率也是以分钟为单位,如果计费是以3分钟为单位,附加费率也是以3分钟为单位。

}

OPTIONAL, OPTIONAL,

chargeClass

[13] INTEGER(1..1000) [14] SEQUENCE {

[1] IMPLICIT INTEGER (0..255), [2] IMPLICIT INTEGER (1..3)

OPTIONAL,

-- 计费类别,SSP中对应一个计费类别是一种计费的方式,包括费率和打折方式

chargeRateModulator

chargeRateModulaterValue chargeModulatorType }

-- 折扣的值,是一个百分比。根据下述的折扣类型的不同有不同的含义

-- 1表示折扣值是对费率打折。2表示折扣值是对总费用打折

[15] ENUMERATED{

startChargePattern

immediately(1),

answerReceived(2) }

DEFAULT(2),

42

中国智能网应用协议C-INAP详解(CS1部分)

-- 计费开始的条件,收到ApplyCharging操作立即开始,或者被叫应答开始

stopChargingPattern

[16] ENUMERATED{

callingPartyHooksOn(0), calledPartyHooksOn(1),

callingPartyOrCalledPartyHooksOn(2) }

DEFAULT (0), DEFAULT (1),

-- 结束计费的条件,主叫挂机结束,被叫挂机结束,或者二者任何一个挂机便结束

detailedBillingChargeRecordType sendingOfChargeMessage

[17] INTEGER (1..32) [18] ENUMERATED{

-- SSP存储计费信息所使用的话单类型。目前填3,表示IN呼叫帐单。

DetailMessageNeedToBeSentToBillingCenter (1), DetailMessageNeedNotToBeSentToBilling Center(2), }

DEFAULT (1),

-- 是否要在SSP中生成详细话单

-- 下面是16个透明参数,意思是SSP收到此参数不作处理,直接放在话单中。它针对不同的业务有不同的格式(参见相应的业务规范)。虽然定义了16个参数,实际上一般只使用一个[19]。

transparentChargeParameter1 transparentChargeParameter2 transparentChargeParameter3 transparentChargeParameter4 transparentChargeParameter5 transparentChargeParameter6 transparentChargeParameter7 transparentChargeParameter8 transparentChargeParameter9 transparentChargeParameter10 transparentChargeParameter11 transparentChargeParameter12 transparentChargeParameter13 transparentChargeParameter14 transparentChargeParameter15 transparentChargeParameter16 callSuspervision

[19] OCTET STRING (SIZE(1..20)) OPTIONAL, [20] OCTET STRING (SIZE(1..20)) OPTIONAL, [21] OCTET STRING (SIZE(1..20)) OPTIONAL, [22] OCTET STRING (SIZE(1..20)) OPTIONAL, [23] OCTET STRING (SIZE(1..20)) OPTIONAL, [24] OCTET STRING (SIZE(1..20)) OPTIONAL, [25] OCTET STRING (SIZE(1..20)) OPTIONAL, [26] OCTET STRING (SIZE(1..20)) OPTIONAL, [27] OCTET STRING (SIZE(1..20)) OPTIONAL,

[28] OCTET STRING (SIZE(1..20)) OPTIONAL, [29] OCTET STRING (SIZE(1..20)) OPTIONAL, [30] OCTET STRING (SIZE(1..20)) OPTIONAL, [31] OCTET STRING (SIZE(1..20)) OPTIONAL, [32] OCTET STRING (SIZE(1..20)) OPTIONAL, [33] OCTET STRING (SIZE(1..20)) OPTIONAL, [34] OCTET STRING (SIZE(1..20)) OPTIONAL,

[35] SEQUENCE{

supervisionMethod [1] CHOICE{

costGranted timeGranted },

[1]Cost, [2]Time

-- 呼叫监视的类型,CostGranted是给出用户还可使用的金额让SSP进行限制。

TimeGranted是给出用户还可通话的时间让SSP进行限制,这个时间一般由SCP根据余额和费率计算出来,以秒为单位。

warningBeforeLimit [2] SEQUENCE{

timeBeforeLimit warningIndicator

[0] INTEGER,

[1] InformationToSend

43

欣方智能通信系统有限公司

}

OPTIONAL ,

-- 提前告警的时间及告警方式,timeBeforeLimit以秒为单位,指出提前多长时间进行

告警,warningIndicator是告警的方式(给主叫用户播放什么提示音)

forceReleaseCause heartbeat Time

[3] Cause

OPTIONAL, OPTIONAL

-- 当限制的余额或时间用完,SSP强制切断呼叫时所使用的原因值

[4] HeartBeatTime

-- 以秒为单位。给SSP这个时间,在通话过程中每当这个时间到达时,SSP就生成一

张话单,并回送ApplyChargingReport

}

}

OPTIONAL

-- AdditionalCallingPartyNumber的编码是Q.763通用号码(Generic Number)的一种

AdditionalCallingPartyNumber

::= Digits

-- AlertingPattern的编码方式参见Q.931

AlertingPattern

ApplicationTimer

::= INTEGER (0..2047)

::= OCTET STRING (SIZE (3))

-- AssistingSSPIPRoutingAddress的编码是Q.763通用号码(Generic Number)的一种

AssistingSSPIPRoutingAddress

BackwardChargeIndicator

noIndication(0), noCharge(1), charge(2) }

::= ENUMERATED { ::= Digits

-- BCSMEvent是要请求SSP检测的事件,包括事件的类型,监视的方式,主叫侧还是被叫侧,事件的一些特定参数(例如无人应答的秒数)

BCSMEvent

::= SEQUENCE {

eventTypeBCSM monitorMode legID }

dPSpecificCriteria

[0] EventTypeBCSM, [1] MonitorMode, [2] LegID

OPTIONAL, OPTIONAL

[30] DPSpecificCriteria

-- 承载能力的编码参见Q.931和Q.763

BearerCapability }

bearerCap

::= CHOICE {

[0] OCTET STRING (SIZE (2..maxBearerCapabilityLength))

-- CalledPartyNumber的编码在Q.763中详细定义,它的大体格式如下:

-- 第一个字节是奇偶位(最高位)和地执行制表示语(低7位,区别国内电话号码,国际电话号码,市内电话号码等)

44

中国智能网应用协议C-INAP详解(CS1部分)

-- 第二个字节是编码方案等信息

-- 第三个字节开始用BCD码来表示具体的号码,一个字节表示两位,如果号码位数为奇数(奇偶位为1),最后一个字节的高四位添0

CalledPartyNumber

::= OCTET STRING (SIZE (minCalledPartyNumberLength ..

maxCalledPartyNumberLength))

-- CallingPartyBussinessGroupID的编码格式由网络操作者定义,INAP中不做规定

CallingPartyBussinessGroupID

::= OCTET STRING

-- CallingPartyNumber的编码在Q.763定义,它的大体格式与CalledPartyNumber类似

CallingPartyNumber

::= OCTET STRING (SIZE (minCallingPartyNumberLength..

maxCallingPartyNumberLength))

-- CallingPartySubaddress的编码在Q.763详细定义

CallingPartySubaddress

::= OCTET STRING

-- CallingPartysCategory的编码在Q.763详细定义

CallingPartysCategory

::= OCTET STRING (SIZE (1))

-- ApplyChargingReportArg被定义为CallResult,实际上,CallResult中的大部分的项目都是ApplyCharging操作的参数中的项目原样传回SCP,此外还有一些呼叫结果的信息,例如[13]是通话开始的时间,[14]是通话结束的时间,[15]是通话的持续时间,四个字节的格式为:HHHMMSST,第一个字节是小时的百位和十位,第二个字节是小时的个位和分钟的十位,第三个字节是分钟的各位和秒的十位,第四个字节是秒的个位和1/10秒数,[16]话费,分为单位,[17]是承载能力,[19]是报告ApplyChargingReport的原因(计费限制到达,通话中间的报告,通话结束的报告,时间限制到)[21]呼叫监视的结果。

CallResult

::= SEQUENCE{ [0] ServiceKey

[1] OCTET STRING(SIZE(1)), [5] INTEGER (SIZE(1..127))

DEFAULT 1, OPTIONAL,

OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL,

OPTIONAL, OPTIONAL,

service Key chargeMode

chargeRecordIdentifier

chargedPartyIdentityIndicator [7] IMPLICIT INTEGER(1..127) callingPartyNumber calledPartyNumber locationNumber startDateAndTime stopDateAndTime duration callCost

[9] CallingPartyNumber

specificChargedPartyNumber [8] IMPLICIT OCTET STRING(SIZE(11))

[10] CalledPartyNumber [11] CalledPartyNumber [12] LocationNumber, [13] DateAndTime [14] DateAndTime [16] Integer4 [17] CHOICE {

translatedPartyNumber

[15] OCTET STRING( SIZE(4))

bearerCapability

bearerCap }

[0] OCTET STRING(SIZE(2..16))

OPTIONAL, OPTIONAL,

45

[18] INTEGER (1..1000)

chargeClass

欣方智能通信系统有限公司

reasonForReport }

[19] ENUMERATED{

chargeLimitReached(1), recordClosedNotFinal(2), recordCloseFinal(3), timeLimitReached(4) }

OPTIONAL,

[21] SEQUENCE {

[0]CHOICE {

[0] Cost,

[1] INTEGER(0..maximumCallDuration)

OPTIONAL

supervisionResult }

surpervisionMethod

usedCost usedTime

}OPTIONAL,

-- Cause的编码的基本格式定义在Q763和Q.850,一般为两个字节,第一个字节的高位为1,接下来两位是编码标准(00:CCITT,01:ISO/IEC,10:国家标准),接下来一位不用,低四位是位置信息;第二个字节高位为1,余下7位是具体的原因值(详见Q.850,在此不做详述)

Cause

::= OCTET STRING (SIZE (minCauseLength .. maxCauseLength)) ::= ENUMERATED {

CGEncountered

-- 没有呼叫阻截

manualCGencountered(1), -- 通过了手动的呼叫阻截 scpOverload(2) -- 通过了因为SCP过负荷引起的呼叫阻截

noCGencountered(0), }

CollectedDigits

::= SEQUENCE {

DEFAULT 1,

46

-- 收集号码的最小位数

minimumNbOfDigits [0] INTEGER (1..127)

-- 收集号码的最大位数

maximumNbOfDigits [1] INTEGER (1..127),

-- 收集号码的结束键

endOfReplyDigit cancelDigit startDigit

[2] OCTET STRING (SIZE (1..2)) [3] OCTET STRING (SIZE (1..2)) [4] OCTET STRING (SIZE (1..2)) [5] INTEGER (1..127) [6] INTEGER (1..127) [7] ErrorTreatment

OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL, OPTIONAL,

DEFAULT reportErrorToSCF, DEFAULT TRUE,

-- 收集号码的取消键,用户按此键,重新播放语音 -- 收集号码的开始键 -- 首码超时

firstDigitTimeOut

-- 码间超时

interDigitTimeOut errortreatment

-- 发生错误是否报告SCP

-- 用户拨第一个号码时,是否中断语音

interruptableAnnInd [8] BOOLEAN

-- 是否识别语音拨号

中国智能网应用协议C-INAP详解(CS1部分)

voiceInformation

[9] BOOLEAN [10] BOOLEAN

DEFAULT FALSE, DEFAULT FALSE

}

-- 拨号后,是否有语音确认

voiceBack

CollectedInfo }

ControlType

::= CHOICE {

collectedDigits [0] CollectedDigits,

::= ENUMERATED {

sCPOverloaded(0), manuallyInitiated(1), }

CorrelationID Cost

CounterAndValue

counterID counterValue }

CounterID

CountersValue

CutAndPaste

::= INTEGER (0..22)

::= SEQUENCE SIZE(0..numOfCounters) OF CounterAndValue

::= INTEGER (0..99)

::= SEQUENCE {

[0] CounterID, [1] Integer4

::= INTEGER (0..maxCost)

::= Digits

-- 日期和时间类型在很多参数中用到。它用BCD码来表示年月日时分秒,格式为YYMMDDHHmmSS,例如2000/5/8:23:19:20将编码为:00 50 80 32 91 02

DateAndTime

DestinationRoutingAddress

::= SEQUENCE SIZE (1) OF CalledPartyNumber

::= OCTET STRING (SIZE(6))

-- Digits在Q.763中分为两种编码类型:Generic Digits(通用数字)和Generic Number(通用号码)两种。

-- 通用数字的编码:第一个字节的高三位时编码的方式(000:偶数BCD码,001:奇数BCD码,010:IA5串,011:二进制编码),低5位是数字的类别;第二字节以后是具体的数字,根据第一个字节的高三位的规定由不同的格式

-- 通用号码的编码:第一个字节是号码的类型(语义上);第二个字节以后类似于CalledPartyNumber的编码(两个字节的头,接下来是实际号码的BCD编码)

Digits

欣方智能通信系统有限公司

47

::= OCTET STRING (SIZE (minDigitsLength .. maxDigitsLength))

DisplayInformation ::= IA5String (SIZE (minDisplayInformationLength ..

DPSpecificCriteria

::= CHOICE {

numberOfDigits applicationTimer }

Duration

ErrorTreatment }

EventSpecificInformationBCSM }

EventTypeBCSM

::= ENUMERATED {

origAttemptAuthorized(1),

48

collectedInfoSpecificInfo

},

[1] SEQUENCE {

calledPartyNumber [0] CalledPartyNumber },

failureCause },

[3] SEQUENCE {

busyCause },

[4] SEQUENCE {}, [5] SEQUENCE {}, [7] SEQUENCE {

[0] Cause OPTIONAL

[0] Cause OPTIONAL

::= CHOICE { [0] SEQUENCE {

::= ENUMERATED {

reportErrorToScf(0),

::= INTEGER (-2..86400) [0] NumberOfDigits, [1] ApplicationTimer

maxDisplayInformationLength))

calledPartyNumber [0] CalledPartyNumber

analyzedInfoSpecificInfo

routeSelectFailureSpecificInfo [2] SEQUENCE {

oCalledPartyBusySpecificInfo

oNoAnswerSpecificInfo oAnswerSpecificInfo oDisconnectSpecificInfo

releaseCause },

[0] Cause OPTIONAL,

[8] SEQUENCE {

tCalledPartyBusySpecificInfo

busyCause },

[0] Cause OPTIONAL

[9] SEQUENCE {}, [10] SEQUENCE {}, [12] SEQUENCE {

tNoAnswerSpecificInfo tAnswerSpecificInfo tDisconnectSpecificInfo

releaseCause }

[0] Cause OPTIONAL,

本文来源:https://www.bwwdw.com/article/qbyw.html

Top