书签 分享 收藏 举报 版权申诉 / 11

基于SIP的即时通讯系统中的添加好友的实现方法.pdf

  • 上传人:t****
  • 文档编号:1079880
  • 上传时间:2018-03-30
  • 格式:PDF
  • 页数:11
  • 大小:472.02KB
  • 摘要
    申请专利号:

    CN200910259697.3

    申请日:

    2009.12.23

    公开号:

    CN101754428A

    公开日:

    2010.06.23

    当前法律状态:

    驳回

    有效性:

    无权

    法律详情:

    发明专利申请公布后的驳回IPC(主分类):H04W 80/10申请公布日:20100623|||实质审查的生效IPC(主分类):H04W 80/10申请日:20091223|||公开

    IPC分类号:

    H04W80/10(2009.01)I; H04L12/58

    主分类号:

    H04W80/10

    申请人:

    烽火通信科技股份有限公司

    发明人:

    黄妮丽

    地址:

    430074 湖北省武汉市东湖开发区关东科技园东信路5号

    优先权:

    专利代理机构:

    北京捷诚信通专利事务所 11221

    代理人:

    魏殿绅;庞炳良

    PDF完整版下载: PDF下载
    内容摘要

    本发明公开了一种基于SIP的即时通讯系统中添加好友的方法,包括以下步骤,A10、发端发送邀请时,在邀请消息的消息体中携带发端的信息;A20、收端收到上述邀请后,从邀请消息中获取发端的信息,然后将收端的信息和接受或拒绝的验证结果封装在验证消息的消息体中发送到发端;A30、发端收到验证消息,从验证消息的消息体中获得收端的信息并作出接受或拒绝响应。本发明提供的方法,增加了验证机制,为SIP即时通讯系统中的安全性提供了一定的保证,为不同用户终端之间共享好友列表提供了解决方案。

    权利要求书

    1.  基于SIP的即时通讯系统中添加好友的方法,其特征在于包括以下步骤:
    A10、发端发送邀请时,在邀请消息的消息体中携带发端的昵称,SIP账号,邀请添加到的分组ID和附加信息;
    A20、收端收到上述邀请后,从邀请消息中获取发端的昵称,SIP账号,邀请添加到的分组和附加信息,然后将收端的昵称、SIP账号、邀请方邀请添加到的分组ID和接受或拒绝的验证结果封装在验证消息的消息体中发送到发端;如果收端接受此邀请,则通过XCAP消息向XDMS发送指令将发端添加到自己的好友列表中,否则,发送拒绝回复;
    A30、发端收到验证消息,从验证消息的消息体中获得收端的昵称、SIP账号、自己邀请添加到的分组ID和验证结果,如果收端接受邀请,则通过XCAP消息向XDMS发送指令将收端添加到自己邀请添加到的分组,否则,提示发端,对方拒绝了好友邀请。

    2.
      如权利要求1所述的基于SIP的即时通讯系统中添加好友的方法,其特征在于对于离线的好友邀请和好友邀请验证消息存储在IM应用服务器,待对方上线后,转发到SIP Proxy,具体步骤为用户上线时向SIP Proxy发送注册消息,SIP Proxy将该注册消息转发到IM服务器,IM服务器收到该用户的注册消息后,将存储的离线的好友邀请或好友邀请验证消息通过SIP Proxy,转发到该用户。

    3.
      如权利要求1或2所述的基于SIP的即时通讯系统中添加好友的方法,其特征在于XDM服务器保存好友列表,终端可以通过XCAP消息发送指令进行好友列表的管理,包括对好友列表分组的管理和好友列表中用户的管理,
    所述好友列表分组的管理包括以下步骤:
    B10、通过XCAP的PUT操作,创建好友列表的一个分组;
    B20、通过XCAP的PUT操作,修改好友列表分组的名称;
    B30、通过XCAP的DELETE操作,删除好友列表的分组;
    好友列表中用户的管理包括以下步骤:
    C10、通过XCAP的PUT操作,添加好友到好友列表的分组;
    C20、通过XCAP的PUT操作,修改一个好友的备注;
    C30、通过XCAP的DELETE操作,删除一个好友。

    说明书

    基于SIP的即时通讯系统中的添加好友的实现方法
    技术领域
    本发明涉及SIP的即时通讯系统,具体涉及基于SIP的即时通讯系统中的添加好友的实现方法。
    背景技术
    目前,移动通信、即时通信等IM(即时通信)网络通信技术已经得到了大规模的应用,关于VOIP、即时通信和网络融合的讨论已经从理论探讨逐渐到了现实生活中,基于SIP的即时通讯系统正在或即将成为主流。SIP已经成为数据包网络上的VoIP和其它实时媒体通信(media communication)的主要协议。
    首先,SIP被认为是一种从一开始就为IP网络的设计的协议。这个协议是由IETF建立的,并且是在已经为IP领域开发的其它一些协议的基础上建立起来的。SIP是一种基于文本的协议,兼容网络领域的基于标记语言分布式应用程序。它使用与互联网相同的地址并且在工作中使用许多互联网结构的组件(如DNS服务器等)。这就使SIP协议更容易集成到根据标准的计算平台和操作系统制作的应用程序中,促进网络的融合。
    第二,SIP是一种可扩展的协议,能够与多种媒体格式和负载一起工作以运行范围很广的应用程序。SIP协议已经为即时消息、资源管理、媒体流(视频)和好友在线管理等应用程序制定了若干标准。这种扩展性能够创造创新的新的应用程序。SIP适用于企业应用程序以及伸缩性非常大的运营商应用程序。这个协议适用于有线和无线网络,能够利用网络的安全和AAA资产的优势。
    第三,SIP协议现在已经是大多数端点中的基础设施的一部分,特别是桌面操作系统。这就使开发人员能够非常容易地制作基于SIP协议的应用程序。同许多通信标准一样,互操作性是关键,SIP已经确保了所有的主要执行工作能够很好地兼容。
    但是,目前作为基于SIP的即时通讯系统中最基本的好友管理功能——添加好友,在现有的通信系统中还没有比较好的实现方式。
    发明内容
    针对上述问题,本发明的目的在于提供一种基于SIP的即时通讯系统中的添加好友的实现方法,添加好友必须对方验证通过才能被加到自己的好友列表中,以满足用户对安全性的要求。同时本发明中的好友列表存储在XDMS上,满足了不同类型的通信终端实现好友列表的共享,增强用户体验。
    本发明包括以下步骤:
    A10、发端发送邀请时,在邀请消息的消息体中携带发端的昵称,SIP账号,邀请添加到的分组ID和附加信息;
    A20、收端收到上述邀请后,从邀请消息中获取发端的昵称,SIP账号,邀请添加到的分组和附加信息,然后将收端的昵称、SIP账号、邀请方邀请添加到的分组ID和接受或拒绝的验证结果封装在验证消息的消息体中发送到发端;如果收端接受此邀请,则通过XCAP消息向XDMS发送指令将发端添加到自己的好友列表中,否则,发送拒绝回复;
    A30、发端收到验证消息,从验证消息的消息体中获得收端的昵称、SIP账号、自己邀请添加到的分组ID和验证结果,如果收端接受邀请,则通过XCAP消息向XDMS发送指令将收端添加到自己邀请添加到的分组,否则,提示发端,对方拒绝了好友邀请。
    上述方案中,对于离线的好友邀请和好友邀请验证消息存储在IM应用服务器,待对方上线后,转发到SIP Proxy,具体步骤为用户上线时向SIP Proxy发送注册消息,SIP Proxy将该注册消息转发到IM服务器,IM服务器收到该用户的注册消息后,将存储的离线的好友邀请或好友邀请验证消息通过SIPProxy,转发到该用户。
    XDM服务器保存好友列表,终端可以通过XCAP消息发送指令进行好友列表的管理,包括对好友列表分组的管理和好友列表中用户的管理,
    所述好友列表分组的管理包括以下步骤:
    B10、通过XCAP的PUT操作,创建好友列表的一个分组;
    B20、通过XCAP的PUT操作,修改好友列表分组的名称;
    B30、通过XCAP的DELETE操作,删除好友列表的分组;
    好友列表中用户的管理包括以下步骤:
    C10、通过XCAP的PUT操作,添加好友到好友列表的分组;
    C20、通过XCAP的PUT操作,修改一个好友的备注;
    C30、通过XCAP的DELETE操作,删除一个好友。
    本发明提供的基于SIP的即时通讯系统中添加好友的方法,增加了验证机制,为SIP即时通讯系统中的安全性提供了一定的保证,为不同用户终端之间共享好友列表的解决方案,用户的好友列表以XML文档的形式存储在XDMS上,任何形式的客户端,只要经过认证和授权,都可以通过XCAP协议从XDMS上获取这些数据,这为在不同的用户终端之间进行好友列表共享提供了一种可靠有效的解决方案。
    附图说明
    图1是本发明的实现组网示意图;
    图2是本发明的添加好友,对方同意邀请的流程图,中间省略了SIP Proxy的转发流程;
    图3是本发明的添加好友,对方拒绝邀请的流程图,中间省略了SIP Proxy的转发流程。
    具体实施方式
    下面结合附图对本发明作出详细的说明,需要说明的是,此处所描述的具体实施方式仅仅用以解释本发明,并不用来限定本发明。
    图1是本发明的实现组网示意图,其中,IM应用服务器提供基于SIP的IM服务,SIP Proxy负责SIP消息的转发,XDM服务器用于保存好友列表,终端可以通过XCAP消息发送指令进行好友列表的管理。图2是本发明的添加好友,对方同意邀请的流程图,图3是本发明的添加好友,对方拒绝邀请的流程图,中间省略了SIP Proxy的转发流程,如图2、图3所示,本发明提供的基于SIP的即时通讯系统中的添加好友的实现方法包括以下步骤:
    A10、发端UA1通过IM Server发送邀请时,在邀请消息的消息体中携带发端的昵称,SIP账号,邀请添加到的分组ID和附加信息,附加信息用来告诉被邀请方自己的一些信息,如姓名,身份等,邀请消息如下:
    好友邀请(发端995282)
    MESSAGE sip:995446@10.90.5.122SIP/2.0
    Via:SIP/2.0/UDP10.96.5.128;branch=z9hG4bK776sgdkse
    User-Agent:IKu1.0
    Max-Forwards:70
    From:sip:995282@10.90.5.122;tag=49583
    To:sip:995446@10.90.5.122
    Call-ID:asd88asd77a@1.2.3.4
    CSeq:1MESSAGE
    Content-Type:message/friend-invite  //扩展
    Content-Length:…
    <friend-invite>
         <user-dispname>lily</user-dispname>
       <user-uri>sip:995282@10.90.5.122</user-uri>
       <added-listID>oma_buddylist</added-listID>
       <remark>我是lily</remark>
    </friend-invite>
    A20、收端UA2从IM Server收到上述邀请后,从邀请消息中获取发端的昵称,SIP账号,邀请添加到的分组和附加信息,然后将收端的昵称、SIP账号、邀请方邀请添加到的分组ID和接受或拒绝的验证结果封装在验证消息的消息体中发送到发端;如果收端接受此邀请,则通过XCAP消息向XDMS发送指令将发端添加到自己的好友列表中,否则发送拒绝回复。
    邀请验证消息如下:
    好友邀请验证(收端995446)
    MESSAGE sip:995282@10.90.5.122SIP/2.0
    Via:SIP/2.0/UDP 10.96.5.128;branch=z9hG4bK776sgdkbb
    User-Agent:IKu1.0
    Max-Forwards:70
    From:sip:995446@10.90.5.122;tag=98786
    To:sip:995282@10.90.5.122
    Call-ID:asd89asd77cc@1.2.3.4
    CSeq:1MESSAGE
    Content-Type:message/friend-invite-notify   //扩展
    Content-Length:…
    <friend-invite-notify>
        <invite-user-dispname>Tom</invite-user-dispname>
        <invite-user-uri>sip:995446@10.90.5.122</invite-user-uri>
        <listID>oma_buddylist</listID>
        <option>yes</option>
    </friend-invite-notify>
    在XDMS上将发端添加到好友列表中的“测试组”(收端在“测试组”分组中添加发端,“测试组”分组ID为ext_mylist_yenuib)的实现方式如下:
        PUT
        /resource-lists/users/sip:995446@10.90.5.122/index/~~/resource-lists/list%
    5b@name=%22ext_mylist_yenuib%22%5d/entry%5b@uri=%22
    sip:995282@10.90.5.122%22%5d HTTP/1.1
        Content-Type:application/xcap-el+xml
        X-3GPP-Asserted-Identity:sip:995446@10.90.5.122
        User-Agent:XDM-client/OMA2.0
        Content-Length:74
        <entry uri=″sip:995282@10.90.5.122″>
      <display-name>Lily</display-name>
    </entry>
    如果拒绝邀请,将消息体option字段改为“no”,如下:
    <friend-invite-notify>
        <invite-user-dispname>Tom</invite-user-dispname>
        <invite-user-uri>sip:995446@10.90.5.122</invite-user-uri>
        <listID>oma_buddylist</listID>
        <option>no</option>
    </friend-invite-notify>
    A30、发端收到验证消息,从验证消息的消息体中获得收端的昵称、SIP账号、自己邀请添加到的分组ID和验证结果,如果收端接受邀请,则通过XCAP消息向XDMS发送指令将收端添加到自己邀请添加到的分组,否则,提示发端,对方拒绝了好友邀请。
    在XDMS上将收端添加到好友列表中的“我的好友”(发端在“我的好友”分组中添加收端,“我的好友”分组ID为oma_buddylist)的实现方式如下:
        PUT
        /resource-lists/users/sip:995282@10.90.5.122/index/~~/resource-lists/list%
    5b@name=%22oma_buddylist%22%5d/entry%5b@uri=%22 sip:995446@10.90.5.122%22%5d
    HTTP/1.1
        Content-Type:application/xcap-el+xml
        X-3GPP-Asserted-Identity:sip:995282@10.90.5.122
        User-Agent:XDM-client/OMA2.0
        Content-Length:74
    <entry uri=″sip:995446@10.90.5.122″>
      <display-name>Tom</display-name>
    </entry>
    通过以上步骤实现了经过验证添加好友。
    上述方法中,SIP Proxy用于将发端的好友邀请和好友邀请验证消息转发到IM服务器,并将来自IM服务器的好友邀请和好友邀请验证消息转发到收端,完成好友邀请和好友邀请验证消息的转发。IM应用服务器用于将在线的好友邀请和好友邀请验证消息转发到SIP Proxy,以及对离线的好友邀请和好友邀请验证消息进行存储,待对方上线后,转发到SIP Proxy,完成好友邀请和好友邀请验证消息的存储和转发。具体步骤:用户向SIP Proxy发送注册消息,SIPProxy会将该注册消息转发到IM服务器,这样IM服务器就知道该用户上线了,会将存储的离线的好友邀请或好友邀请验证消息通过SIP Proxy,转发到该用户。
    XDM服务器用于保存好友列表,终端可以通过XCAP消息发送指令进行好友列表的管理,包括对好友列表分组的管理和好友列表中用户的管理。
    好友列表分组的管理包括以下步骤:
    B10、通过XCAP的PUT操作,创建好友列表的一个分组;
    B20、通过XCAP的PUT操作,修改好友列表分组的名称;
    B30、通过XCAP的DELETE操作,删除好友列表的分组;
    好友列表中用户的管理包括以下步骤:
    C10、通过XCAP的PUT操作,添加好友到好友列表的分组;
    C20、通过XCAP的PUT操作,修改一个好友的备注;
    C30、通过XCAP的DELETE操作,删除一个好友。
    以下为好友管理的各消息实例:
    (1)、创建好友列表的一个分组。
        PUT/resource-lists/users/sip:995282@10.90.5.122/
    ext_mylist_yenuib HTTP/1.1
        Content-Type:application/resource-lists+xml
        Accept:*/*
        Host:10.90.5.80
        Connection:Close
        X-3GPP-Intended-Identity:sip:995282@10.90.5.122
        User-Agent:XDM-client/OMA2.0
        Cont ent-Length:244
        <?xml version=″1.0″encoding=″UTF-8″?><resource-lists
    xmlns=″urn:ietf:params:xml:ns:resource-lists″
    xmlns:oau=″urn:oma:xml:xdm:resource-list:appusage″><list
    name=″ext_mylist_yenuib″><display-name>测试组
    </display-name></list></resource-lists>
    (2)、修改好友列表分组的名称。
        PUT/resource-lists/users/sip:995282@10.90.5.122/
    ext_mylist_bbbeiu/~~/resource-lists/list%5b@name=%22ext_mylist_bbbeiu%22%5d/disp
    lay-name%5b1%5d HTTP/1.1
        Content-Type:application/xcap-el+xml
        Accept:*/*
        Host:10.90.5.80
        Connection:Close
        X-3GPP-Intended-Identity:sip:995282@10.90.5.122
        User-Agent:XDM-client/OMA2.0
        Content-Length:35
        <display-name>测试修改组名</display-name>
    (3)、删除好友列表的分组。
        DELETE/resource-lists/users/sip:995282@10.90.5.122/
    index/~~/resource-lists/list%5b@name=%22oma_allcontacts%22%5d/external%5b@anchor
    =%22http://xdms1.fhims.com.cn/services/resource-lists/users/sip:995282@10.90.5.1
    22/ext_mylist_bbbeiu/~~/resource-lists/list%5B@name=%22ext_mylist_bbbeiu%22%5D%2
    2%5d HTTP/1.1
        Accept:*/*
    Host:10.90.5.80
    Connection:Close
    X-3GPP-Intended-Identity:sip:995282@10.90.5.122
    User-Agent:XDM-client/OMA2.0
    (4)、添加好友到好友列表的分组。
        PUT/resource-lists/users/sip:995282@10.90.5.122/
    oma_buddylist/~~/resource-lists/list%5b@name=%22oma_buddylist%22%5d/entry%5b@uri
    =%22sip:995446@10.90.5.122%22%5d HTTP/1.1
        Content-Type:application/xcap-el+xml
        Accept:*/*
        Host:10.90.5.80
        Connection:Close
        X-3GPP-Intended-Identity:sip:995282@10.90.5.122
        User-Agent:XDM-client/OMA2.0
        Content-Length:89
        <entry uri=″sip:995446@10.90.5.122″><display-name>Tom
        </display-name></entry>
    (5)、修改一个好友的备注。
        PUT/resource-lists/users/sip:995282@10.90.5.122/
    oma_buddylist/~~/resource-lists/list%5b@name=%22oma_buddylist%22%5d/entry%5b@uri
    =%22sip:995446@10.90.5.122%22%5d HTTP/1.1
        Content-Type:application/xcap-el+xml
        Accept:*/*
        Host:10.90.5.80
        Connection:Close
        X-3GPP-Intended-Identity:sip:995282@10.90.5.122
        User-Agent:XDM-client/OMA2.0
        Content-Length:84
        <entry uri=″sip:995446@10.90.5.122″><display-name>test
    </display-name></entry>
    (6)、删除一个好友。
        DELETE/resource-lists/users/sip:995282@10.90.5.122/
    oma_buddylist/~~/resource-lists/list%5b@name=%22oma_buddylist%22%5d/entry%5b@uri
    =%22sip:995446@10.90.5.122%22%5d HTTP/1.1
    Accept:*/*
    Host:10.90.5.80
    Connection:Close
    X-3GPP-Intended-Identity:sip:995282@10.90.5.122
    User-Agent:XDM-client/OMA2.0
    本发明不局限于上述最佳实施方式,任何人应该得知在本发明的启示下作出的结构变化,凡是与本发明具有相同或相近的技术方案,均落入本发明的保护范围之内。

    关 键  词:
    基于 SIP 即时通讯 系统 中的 添加 好友 实现 方法
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:基于SIP的即时通讯系统中的添加好友的实现方法.pdf
    链接地址:https://www.zhuanlichaxun.net/p-1079880.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1