权限¶
备注
"XEP-0356: 特权实体" 仅对使用与 slidgeqq 相同服务器的 XMPP 用户有效,例如,在 slidgeqq.example.org 上的 eve@example.org。
将 slidgeqq 设置为特权实体 (XEP-0356) 是可选的,但拥有它会更好。它通过一些"锦上添花"的功能改善了用户体验。通过配置您的 XMPP 服务器,使 slidgeqq 成为特权实体,slidgeqq 可以:
自动在 slidgeqq 用户的 XMPP 花名册中添加/删除"傀儡联系人",
在 XMPP 端反映用户通过官方腾讯 QQ 应用发送的消息,
(如果使用 HTTP 上传 从腾讯 QQ 向 XMPP 传输附件)代表 slidgeqq 用户请求上传槽位,并遵守上传组件级别设置的任何配额、保留、权限或其他策略,
同步通过官方腾讯 QQ 应用执行的其他操作,例如将消息标记为已读、使用表情反应、撤回消息、发送文件…
服务器特定说明¶
Prosŏdy¶
使用以下命令安装 mod_privilege 社区模块:
prosodyctl install --server=https://modules.prosody.im/rocks/ mod_privilege
在 prosody.cfg.lua 中,将 mod_privilege 添加到 modules_enabled 列表,并在相应的虚拟主机块中声明 slidgeqq 的权限:
local _privileges = {
roster = "both"; -- for adding/removing contacts from the users' rosters
message = "outgoing"; -- for reflecting messages sent by the user themselve from official Tencent QQ apps
iq = {
["http://jabber.org/protocol/pubsub"] = "both"; -- for PEP Bookmarks
["http://jabber.org/protocol/pubsub#owner"] = "set"; -- for Message Display Synchronization
["urn:xmpp:http:upload:0"] = "get"; -- for HTTP Upload on behalf of users
}
};
VirtualHost "example.org"
privileged_entities = {
["slidgeqq.example.org"] = _privileges;
}
然后重启 prosody 服务器,或重新加载配置。您可能需要使用 mod_reload_component,并激活/停用主机以使所有更改生效(重启 prosody 是最简单的方法)。
ejabberd¶
acl:
slidge_acl:
server:
- "slidgeqq.example.org"
access_rules:
slidge_rule:
- allow: slidge_acl
modules:
mod_privilege:
roster:
both: slidge_rule
message:
outgoing: slidge_rule
iq:
"http://jabber.org/protocol/pubsub":
both: slidge_rule
"http://jabber.org/protocol/pubsub#owner":
set: slidge_rule
"urn:xmpp:http:upload:0":
get: slidge_rule
mod_roster:
versioning: true
下一步¶
了解 slidgeqq 的 配置,以根据您的喜好调整其行为。