如何在不通过联系人批准的情况下自动批准 Ejabberd 服务器中的出席请求
How to auto-approve the presence requests in Ejabberd server without approving by contacts
我正在使用 Linux 中源代码中的 Ejabberd 服务器。我的情况是,如果我需要某人在场,那么我需要在我的花名册中添加 him/her 并批准 his/her 出席请求。由于我对一次只有一个联系人的存在感兴趣,因此在批准存在的情况下在名册中添加大量联系人对我来说是无用的。所以我想要一些机制,我可以通过这种机制将出席请求发送给某人,并且该请求将立即被服务器批准,而不管其他在线联系人是否可以批准该请求。我正在使用 Ejabberd 17.11 版本和后端 SQL 将大部分数据存储在 Linux Mint 上。
简而言之,Ejabberd 服务器应该自动批准所有出席请求,而不是将请求转发给联系人并等待批准。
根据 RFC3921 https://xmpp.org/rfcs/rfc3921.html#presence,用户的服务器不得代表用户自动批准订阅请求。所有订阅请求必须定向到用户的客户端,特别是与用户关联的一个或多个可用资源。
我建议将自动批准功能移至客户端。
您好,我正在使用名为 MongooseIM 的增强型 ejabberd。我在 TechTalk 上用中文写了一些关于 ejabberd 的文章。
如果您想自动批准 presence
,您必须修改 ejabberd_c2s:process_outgoing_stanza
和 mod_roster:process_subscription_transaction
以打破 MongooseIM 中的原始批准流程。
我认为您可以在 ejabberd 中做同样的事情。
我正在使用 Linux 中源代码中的 Ejabberd 服务器。我的情况是,如果我需要某人在场,那么我需要在我的花名册中添加 him/her 并批准 his/her 出席请求。由于我对一次只有一个联系人的存在感兴趣,因此在批准存在的情况下在名册中添加大量联系人对我来说是无用的。所以我想要一些机制,我可以通过这种机制将出席请求发送给某人,并且该请求将立即被服务器批准,而不管其他在线联系人是否可以批准该请求。我正在使用 Ejabberd 17.11 版本和后端 SQL 将大部分数据存储在 Linux Mint 上。
简而言之,Ejabberd 服务器应该自动批准所有出席请求,而不是将请求转发给联系人并等待批准。
根据 RFC3921 https://xmpp.org/rfcs/rfc3921.html#presence,用户的服务器不得代表用户自动批准订阅请求。所有订阅请求必须定向到用户的客户端,特别是与用户关联的一个或多个可用资源。
我建议将自动批准功能移至客户端。
您好,我正在使用名为 MongooseIM 的增强型 ejabberd。我在 TechTalk 上用中文写了一些关于 ejabberd 的文章。
如果您想自动批准 presence
,您必须修改 ejabberd_c2s:process_outgoing_stanza
和 mod_roster:process_subscription_transaction
以打破 MongooseIM 中的原始批准流程。
我认为您可以在 ejabberd 中做同样的事情。