网站怎么算抄袭实体店营销方案
MUC
MUC(Multi User Chat),XMPP在其XEP-0045扩展中定义的一个用于多用户文本会议(群聊)的协议,类似于互联网中继聊天(IRC),提供通道或房间让大家能互相交流信息,并查看用户在线情况。
相关概念
房间:房间的JID标识<room@service>(例如:teaparty@conference. ejabberd.org),这里 “room” 是房间的名称而 “service” 是多用户聊天服务运行所在的主机名
房客:房客的JID标识<room@service/nick>,nick是房客在房间的昵称
岗位:表达了用户和房间的长期关系(永久),所有者(owner)-必须、管理者(admin)-推荐、成员(member)-推荐、排斥者(outcast)-推荐,岗位被授予,撤销,和维护都是基于用户的纯 JID
角色:表达了用户和房间的临时联系,它只存在与一次访问期间(暂时),主持人(moderator)-必须、与会者(paticipant)-必须、游客(visitor)-推荐,角色的授予,撤销,和维护是基于房客的房间昵称或全JID,而不是纯JID
加入房间
加入房间,直接发送出席信息 <room@service/nick>进行加入(也就是成为房客)
<presence from="user@ ejabberd.org /rabbithole"to="teaparty@conference. ejabberd.org /User1"/>
加入房间,若用户未指定一个房间昵称, 服务会返回一个<jid-malformed/>错误
<presence
from='teaparty@conference. ejabberd.org'to='user@ejabberd.org /rabbithole'type='error'><error code='400' type='modify'><jid-malformed xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/></error>
</presence>
加入房间房客会交换出席信息,并根据配置推送近期交流信息
1 房间里发出了一个参与通知,从你的 JID 到其他参与者(包括自己-发送自己添加状态码<status code=’110’/>)
2 房间会从所有其他参与者的房间 JID 发送给你的出席,让你的客户可以建立一个专门的房间居住者“名册”
3 房间通常会通知你最近的一些交流消息使你掌握谈论的背景
注:一般普通用户无法获知互相真实JID,只知道互相房间内JID,发送信息是通过MUC服务器重写地址传递消息
发送消息
在多用户聊天房间里发送的消息使用特殊的类型”groupchat”并且被寻址于房间本身 (room@service), 然后MUC服务重写地址反映给所有房客
修改昵称
通过发送出席信息给自身房间内JID <room@service/newnick>,一个房客可以改变他或她的房间昵称以及在房间中的可用性状态
离开房间
离开房间,直接向自身房间内JID发送一个不可用出席或自身服务器在你离线的时候根据你的行为发送不可用出席
<presence from="user@ejabberd.org/rabbithole"to="teaparty@conference.ejabberd.org/User1"type="unavailable"/>
然后服务接着从要离开的房客的房间JID发送”unavailable”类型的出席信息节给这个要离开的房客的全JID以及留在房间的房客(发送自己添加状态码<status code=’110’/>)
场景介绍
1 新建房间
instant room 临时房间(类似于临时会话),适用于那些临时选取多个用户进行会话的场景
reserverd room 永久房间(类似于固定群)
2 销毁房间
销毁房间通常仅限于房间的所有者,临时房间通常是在房间所有用户都离开后自动销毁
3 加入房间
邀请和申请
4 发言
-向房间内所有人发言,发言者发送一个消息类型为groupchat的消息,由房间服务转发给所有与会者
-向部分人发言,这个场景发言者实际创建了一个临时房间,在该临时房间内进行群发
-向某一个人发送似有消息,这个场景退化为了一对一的单独聊天
权限控制
具体权限控制查看XEP-0045文档