三大运营商发布的“5G消息白皮书”说了些什么?
三大运营商发布的“5G消息白皮书”说了些什么?
2020年4月8日,中国移动、中国联通、中国电信三大运营商联合发布“5G消息白皮书”,那这个5G消息白皮书到底说的是什么呢?
- 5G消息到底是什么?
- 运营商为什么要发布“5G消息白皮书”?
- 运营商的优势?
- MaaP (Messaging as a Platform) 简介
- 实现中会用到哪些协议?
一、5G消息到底是什么?
一句话概括:
将基于基站
的短彩信消息
,升级到基于移动网络与WLAN网络
的融合通信消息(Rich Communication Suite)
。
支持的功能:
- 一对一消息方面:
支持文本消息、图片消息、音视频消息、文件传输消息; - A2P (Application to Person) :
企业应用方面引入MaaP(Message as a Platform)概念;
企业接入5G消息提供的MaaP平台后,企业以Chatbot(聊天机器人 AI+人工客服)
的形式与个人用户
通过运营商网络
进行沟通,帮助终端用户实现订餐、订票、购物等操作;
会话窗口显示方面,在一对一消息的基础上增加富媒体卡片消息
类型,同时每条企业下发的消息中还可携带建议操作
(例如:点击打开一个Web地址、点击拨打电话)和建议回复
。
下图为 铁路部门聊天机器人(Chatbot)与用户沟通,帮助用户实现购票操作时,会话窗口实现效果图:
我对于5G消息的理解是:
5G消息客户端就是一个IM软件客户端:可看做是微信一对一消息 + 微信公众号消息;
二、运营商为什么要发布“5G消息白皮书”
- 短信承载能力有限,每条短信最多能发送140个字节的数据(70个汉字);
- 对于用户而言,随着智能手机普及,用户更喜欢图文并茂交互能力强的消息形态;
相比而言短信只能编辑文字,略感乏味;发送彩信成本太高;
图文消息更加直观、承载信息量更大、交互能力强,升级图文消息可以很大程度上提升终端用户的使用体验; - GMSA RCS Universal Profile 2.0引入了MaaP的概念,企业以Chatbot(聊天机器人)与终端用户交互,拓展了企业的业务能力,提升了企业的服务体验。
三、运营商的优势?
- 无需用户安装
5G消息APP应该是对系统Message 应用的更新升级,作为系统出厂内置应用无需用户手动安装却可迅速达到一个很高的安装覆盖率; - 到达率
5G消息APP为系统应用,其后台Service不会被系统杀死,从而保证消息的及时到达;
在弱网环境中,消息可转成短彩信消息进行接收与发送,保证消息及时准确到达;
四、MaaP (Messaging as a Platform)
5G消息白皮书中写道:通信运营商建立的消息能力,使行业客户可以为其用户提供富媒体信息服务。
读起来还是迷糊,其实就是企业端接入5G消息提供的MaaP平台,MaaP平台会为接入的企业提供Chatbot(聊天机器人),企业的聊天机器人
与终端用户
会话沟通帮助用户实现订餐、订票、订酒店等操作。
企业以(Chatbot)聊天机器人(AI 或人工)方式与用户进行交互,完成用户订餐、订票、订酒店等企业相关业务服务。
手机端展示效果:
五、通信过程中会涉及到哪些协议?
接下来一一对以上协议进行简单举例说明
5.1、SIP(Session Initiation Protocol)
多媒体通信协议,支持语音、视频、数据等多媒体业务,用于创建、修改和释放一个或多个参与者的会话。
详细了解SIP协议,可查看我的这篇文章
https://xiaxl.blog.csdn.net/article/details/104661248
SIP类似于HTTP协议:
分为请求行(状态行)、消息Header、消息Body;
消息体举例:
user1给user2发送一条消息:“user2, come here.”
// 请求行(REGISTER、INVITE、ACK、CANCEL、BYE、MESSAGE等)
MESSAGE sip:aaa@qq.com SIP/2.0
// 消息header
Via: SIP/2.0/TCP user1pc.domain.com;branch=z9hG4bK776sgdkse
Max-Forwards: 70
From: sip:aaa@qq.com;tag=49583
To: sip:aaa@qq.com
Call-ID: aaa@qq.com
CSeq: 1 MESSAGE
Content-Type: text/plain //消息body的类型
Content-Length: 18
// 消息body
user2, come here.
user2收到消息后,回应200 ok
// 状态行
SIP/2.0 200 OK
// 消息header
Via: SIP/2.0/TCP user1pc.domain.com;branch=z9hG4bK776sgdkse;
From: sip:aaa@qq.com;;tag=49394
To: sip:aaa@qq.com;tag=ab8asdasd9
Call-ID: aaa@qq.com
CSeq: 1 MESSAGE
Content-Length: 0
SIP有两种会话模式:
在Sip 通信应用过程中,一般存在着两种会话模式:
- Pager Model
- Large Model
Pager Model
在Sip消息中,对于消息体不大于1300字节
时,一般采用Pager Model。
Sip消息通信中采用 MESSAGE
方法不建立Session会话,在多数应用中,每条IM消息都是独立的,颇似分页消息。
- 步骤1:
User1
发送MESSAGE
请求到代理服务器
; - 步骤2:
代理服务器
转发User1
的MESSAGE请求给USER2
; - 步骤3:
User2
收到User1
的消息后,回复200 OK给代理服务器
; - 步骤7~9:
代理服务器
转发200 OK回复给User1
Large Model
对于消息体内容大于1300字节
时,需要建立Session会话。
主叫方A呼叫被叫方B:
- 步骤1:
主叫方A
发送INVITE
请求到代理服务器
; - 步骤2:
代理服务器
发送100 Trying 响应主叫方A
; - 步骤3~6:
代理服务器
搜索被叫方B
的地址,获取地址后转发INVITE请求; - 步骤7~9:
被叫方B
生成的180 振铃响应,返回给主叫方A
; - 步骤10~12:
被叫方B
生成的200 OK响应,返回给主叫方A
; - 步骤13~17:
主叫方A
收到被叫方B
200 OK响应后,向被叫方B
发送一个ACK,会话建立; - 步骤18~20:会话结束后,任何参与者(A或B)都可以发送一个BYE请求来终止会话;
- 步骤21~23:
主叫方A
发送200 OK响应来确认BYE,会话终止。
5.2、SDP(Session Description Protocol)
SDP 在会话初始化过程中,用来传送会话参与者的能力列表,以协调会话双方的各项参数。
例如:建立会话前,呼叫方通过SDP协议向代理服务器发送其具备的能力列表,比如支持视频消息、音频消息、文本消息等;
详细了解SDP消息格式,可查看我的这篇文章
https://xiaxl.blog.csdn.net/article/details/104723834
消息举例:
// sip 请求行
INVITE user2pc.domain.comSIP/2.0
// sip 请求Header
Via: SIP/2.0/UDP 182.1.1.203:41200;branch=z9hG4bK1393058911736
Call-ID: aaa@qq.com
From: <user1pc.domain.com>;tag=2684043253
To: user2pc.domain.com
CSeq: 1 INVITE
Max-Forwards: 70
Accept-Contact: *;+g.3gpp.icsi-ref=“urn%3Aurn-7%3A3gpp-service.ims.icsi.oma.cpm.session
Session-Expires: 1800
User-Agent: CPM-client/OMA2.2 RCS-client/UP_2.4 term-Vendor1/Model1-XXXX client-CLN1/Software1234 OS-Android/8.1
Conversation-ID:u13900010001010203
Contribution-ID:u201403011700010003
Content-Length: 741
Content-Type: multipart/mixed;boundary=spiderboundary
// sdp
Content-Type: application/sdp
v=0 // version sdp版本号
o=Spider-Phone 28994 29098 IN IP4 182.1.1.203 // origion 会话发起者的描述
s=- // Session Name
c=IN IP4 182.1.1.203 // Connection Data
t=0 0 // {开始时间} {结束时间}
m=message 10110 TCP/MSRP * // media name and transport address
a=path:msrp://182.1.1.203:10110/10110;tcp
a=setup:active
a=accept-types:text/* message/* // 本终端支持的媒体类型
a=sendrecv
// cpim
Content-Type: message/CPIM
Content-Length:168
From: <user1pc.domain.com>
To: <user2pc.domain.com>
NS: imdn<urn:ietf:params:imdn>
imdn.Message-ID: W8ecb6pd
DateTime: 2012-09-20T10:42:31.35+08:00
imdn.Disposition-Notification: positive-delivery,display
Content-Type:text/plain;charset=UTF-8
Content-Length:102
Content-Transfer-Encoding: base64
// cpim body
c3Nzc3Nz
5.3、CPIM(Common Presence and Instant Messaging)
一种消息格式,ContentType为Message/CPIM,当SIP Session会话建立后,通过MSRP消息格式传递消息;
举例见SDP消息举例
详细了解CPIM消息格式,可查看我的这篇文章
https://xiaxl.blog.csdn.net/article/details/104718006
5.4、MSRP(Message Session Relay Protocol)
一种消息格式,当SIP Session会话建立后,通过MSRP消息格式传递消息;
// 起始行:MSRP 事务ID 方法名(SEND or REPORT)
MSRP msrprequest100001 SEND
// 头域
To-Path: msrp://10.71.174.102:7654/10001;tcp //
From-Path: msrp://10.66.139.77:22100/10002;tcp
Message-ID: msrprequest100001
Byte-Range: 1-176/176
Success-Report: no
Failure-Report: yes
Content-type:text/plain;charset=UTF-8
// 消息体
adfadfadfadfadfadf
5.5、HTTP
超文本传输协议,此处不做介绍
上一篇: Linux二进制文件操作工具