好文档 - 专业文书写作范文服务资料分享网站

基于XMPP的企业级即时通信系统的研究与实现 - 图文 

天下 分享 时间: 加入收藏 我要投稿 点赞

Ⅱ℃汉理l:人学硕士学位论文步骤3:目的服务器发送STARTTLS节给客户端,该节中包括验证机制、加密机制和其他流特’件。<stream:features><starttlsxmlns='urn:ietfiparams:xml:ns:xmpp—tls’><required/></starttls><mechanismsxmlns=’urn:ietf:params:xml:ns:xmpp—sasl’><mechanism>DIGEST.MD5</mechanism><mechanism>PLAIN</mechanism></mechanisms></strearn:features>步骤4:客户端发送STARTTLS节给目的服务器,表示客户端支持TLS协议。<starttlsxmlns=’urn:ietf:params:xml:ns:xmpp—tls'/>步骤5:目的服务器通知客户端可以继续进行三次握手协议。<proceedxmlns=’urn:letfiparams:xml:ns:xmpp.tls’/>步骤5(或者):服务器通知客户端TLS握手失败并关闭流和TCP连接。<failurexmlns=’urn:ietfiparams:xml:ns:xmpp.tls’/>武汉理上人学硕士学位论文</stream:strearn>步骤6:客户端和服务器尝试通过已有的TCP连接完成TLS握手。步骤7:如果TLS握手成功,客户端发送~个新的流给服务器。<stream:streamxmlns='jabber:client’xmlns:stream=’http://etherx.jabber.org/streams’to=’XMPPExample.com’version=’1.0’>步骤7(或者):如果TLS握手不成功,服务器天闭TCP连接。步骤8:服务器发送一个流头信息应答客户端,表示开始另一协议,其中包括任何可用的流特性。<stream:streamxmlns='jabber:client’xmlns:stream=’http://etherx.jabber.org/streams’from=’XMPPExample.com’id=’sessionc2s’version=’1.O’><stream:features><mechanismsxmlns=’um:ietf:params:xml:ns:xmpp—sasl’><mechanism>DIGES●MD5</mechanism><mechanism>PLAlN</mechanism><mechanism>EXTERNAL</mechanism></mechanisms></stream:features>步骤9:客户必须选择一种认证机制。如果服务器不支持该机制,将响应一个失败通知。步骤10:客户初始化一个新的流。步骤11:服务器回复一个被认证的流。步骤12:~旦客户认证成功,客户请求打开一个即时通信的会话。<iqtype=’set’id=’sessionl’><sessionxmlns2’um:ietf:params:xml:ns:xmpp—session’></iq>步骤13:服务器通知客户创建会话成功或失败㈣【341。<iqtype=’result’id=’session1’><sessionxmlns2’um:ietf:params:xml:ns:xmpp—session’><errortype=’wait’><intemal—server-errorxmlns=’um:ietf.'params:xml:ns:xmpp—stanzas’></error></iq>12武汉理jL=人学硕士学位论文2.3.3获取好友在线信息流程步骤1、用户的本地服务器代替用户发送在线信息调查“探针"给,本地花名册中subscription=”to”和subscription=”both”的联系人的可用资源。<presencetype2’probe’from=’server@192.168.0.5’t02’client@192.168.0.5'/msn><presencetype。’probe’from=’server@192.168.0,5’to=’client@192.168.0.5/msn.>步骤2、联系人的服务器在接收到调查“探针”后,代替所有可用的资源应答在线信息调查。<presencefrom='juliet@192.168.O.15’to=’server@192.168.0.5’xml:lang=’en’><show>away</show><status>befightback</status><priority>O</priority></presence><presencefrom=『!juliet@example.com/chamber’to---server@l92.168.0.5/orchard’><priority>1</priority></presence><presencefrom='benvolio@example.org/pda’to=server@l92.168.0.5/orchard’xml:lang=’en’><show>dnd</show><status>gallivanting</status></presence>2.3.4添加好友的流程步骤l:客户端向本地服务器名册中添加新的条目,其中item中包含了好友的JID,用户名和将其加入的群组。<iqtype2’set’id=’setl’from=’user@192.168.0.5/balcony’><queryxmlns='jabber:iq:roster’><item武汉理l:人学硕十。’≯f节沦义jid=’contact@192.168.0.5’name=’MyContact’><group>MyBuddies</group></item></query></iq>步骤2:服务器为这个新的名册条目初始化一个新的彩:|f}发送给这个用户的所有已经请求名册的可用资源,其’subscription’属性的f|l工J,j”none”;并且以一个IQresult应答发送的资源表明名册设置成功了。<iqtype=’set’to=’user@192.168.0.5/balcony’><queryxmlns='jabber:iq:roster’><itemjid=’contact@192.168.0.5’subscription=’none’name=’MyContact’><group>MyBuddies</group></item></query></iq><iqtype=’set’to=’user@192.168.0.5/msn’><queryxmlns=tjabber:iq:roster’><itemjiddcontact@192.168.0.5’subscription=’none’name=’MyContact’><group>MyBuddies</group></item></query></iq><iqtype=’result’id=’setI’to=。user@192.168.0.5/balcony'/>步骤3:用户向这个联系人请求在线信息的订阅,用,、的客户端必须发送一个类型为’subscribe’的在线信息节给联系人。<presenceto=’contact@l92.168.0.5’type=’subscribe’/>步骤4:用户的服务器初始化第二个新的名册发送给这个用户的所有已经请求名册的可用资源,把这个联系人设置成’none’订阅状态的朱决的状态;这个未决的状态是由名册条目中包含的ask---’subscribe’属性所指示的。<iqtype=’set’to=’user@192.168.0.5/balcony'><queryxmlns='jabber:iq:roster’><item武汉理j:人学硕十学位论文——————————————————————————————————————————————————一一一jid='contact@192.168.0.5’subscription=’none’ask=’subscribe’name=’MyContact'><group>MyBuddies</group></item></quer)》</iq><iqtype='set’to='user@192.168.0.5/msn’><queryxmlns=:jabber:iq:roster’><itemjid='contact@1ask=’subscribe’92.168.0.5’subscription=’none’name-=’MyContact’><group>MyBuddies</group></item></query></iq>步骤5.-用户的服务器向联系人服务器转发订阅在线状态的请求。<presencefrom=’user@XMPPExample.com’t02’contact@192.168.0.5’type=’subscribe'/>步骤6:联系人的服务器向联系人的客户端转发订阅在线状态的请求。<presencefrom=user@XMPPExample.com’t02’contact@l92.168.0.5’type=’subscribe’/>步骤7:联系人的客户端添加一个条目并返回同意订阅在线状态的消息。type2’set’id=’set2’from=’contact@192.168.0.5/msn’><que叫xmlns2:jabber:iq:roster’><item<iqjid=’user@}XMPPExample.com’name=’SomeUser’><group>SomeGroup</group></item></query></iq><presenceto—user@XMPPExample.com’type=’subscribed'/>步骤8:联系人的服务器初始化一个名册发送给所有联系人己请求名册的可用资源,包含一个关于那个用户的名册条目,并且其订阅状态为tfrom-(甚至联系

基于XMPP的企业级即时通信系统的研究与实现 - 图文 

Ⅱ℃汉理l:人学硕士学位论文步骤3:目的服务器发送STARTTLS节给客户端,该节中包括验证机制、加密机制和其他流特’件。<stream:features><starttlsxmlns='urn:ietfiparams:xml:ns:xmpp—tls’><required/></starttls><mechanismsxmlns=’urn:ietf:params:xml:ns:xmpp—sa
推荐度:
点击下载文档文档为doc格式
1fidr8cvba7dd7d92wrv
领取福利

微信扫码领取福利

微信扫码分享