7

アプリにチャット機能を実装するために、XMPP フレームワークをアプリに統合しました。バディ リクエスト機能がないため、ユーザーはバディ リクエストを送信せずに他のユーザーにメッセージを送信できます。この機能により、アプリで名簿やプライバシー リストを作成せず、匿名チャット モードを実装しました。

これは匿名ユーザー チャットであ​​るため、ユーザーのプライバシー リストはなく、XMPP 拡張機能 XEP-016 はプライバシー リストによるブロックのみをサポートするため、ユーザー ブロック機能以外はすべて正常に機能します。

代替案も探してみましたが、そのうちの 1 つは XEP-0191 を実装することですが、残念ながら Open Fire はこの拡張機能をサポートしていません。

技術者は、この問題を解決するために私を案内してください。以下は私の質問です。

  1. 匿名ユーザー チャット モードでユーザーをブロックするには、プライバシー リスト/名簿を作成する必要がありますか? 私のアプリには何千人ものユーザーがいる可能性があるため、このソリューションは実用的ではないようです。

  2. Jabber サーバーを直火から EJabber に変更しますか? Ejabber は XEP-0191 をサポートしていますか

上記とは別に、Jabber の匿名ユーザー チャット モードでユーザーをブロック/ブロック解除する他の回避策を知っている場合はお知らせください。

4

3 に答える 3

1

とにかくブロックは意味がありません。ある人をブロックすると、その人は新しい匿名ユーザーを作成して、あなたに再び連絡を取り始める可能性があります。これは大変な作業のように思えるかもしれませんが、スパム メッセージを送信するスクリプトを簡単に作成できます。30分ごとに新しいアカウントを作成し、全員にスパムを送信し、キックされて繰り返します.

少なくとも、XEP-0191 (サーバー側のブロック リスト) を実装し、匿名の新しいアカウントを処理する方法を理解する必要があります。

于 2013-05-16T10:24:35.460 に答える
1

私は EJabber サーバーの経験はありませんが、XEP 0191 は間違いなく必要なプロトコルです。

ここhttp://www.ejabberd.im/protocolsを見て、EJabber があなたのプロトコルをサポートしていることを確認してください。

私のアドバイスは、サーバーを変更することです。

于 2013-05-15T14:53:20.087 に答える
0

残念ながら、Open fire サーバーに固執する必要があります。ブロック ユーザーの問題を修正するために、XMPP のドキュメントを調べて、最終的に XEP-0016 で解決策を見つけました。この拡張機能には、実際に匿名ユーザーのブロックをサポートする機能があります。- (void)setListWithName:(NSString *)privacyListName items:(NSArray *)items fromUser:(NSString *)user;これを達成するには、メソッドを使用してサーバー上にプライバシー リストを作成する必要があります。完了したら、メソッドを呼び出して、作成したリストをアクティブ リストとしてマークし- (void)setActiveListName:(NSString *)privacyListName;ます。

XEP-0016 は名簿とは関係なく、匿名ユーザーのチャットをブロックできます。

于 2013-05-21T16:58:45.753 に答える