0

ユーザーが他のページに移動すると、オフライン メッセージは保存されません。

クライアント側でstrophe.jsを使用しています。mod_offline はサーバー側で有効になっています。利用できないプレゼンスが送信され、ユーザーがまだ ejabbered サーバーに接続している場合、オフライン メッセージは遅延配信用に保存されます。これは ejabberd を使用して確認できますapi/get_offline_count

しかし、ユーザーが別のページに移動すると、オフライン メッセージはユーザーに対して保存されapi/get_offline_countません。ユーザーが同じ jid で再接続すると、メッセージが配信されないことを確認しました。

別のページに移動する前に、strophe.js が何かを行っていると思われます。仕様によると、ユーザーが接続されていない場合、サーバーは mod_offline が有効になっているときにオフライン メッセージを保存する必要があります。なぜ保存されないのかわかりません。

    const webSockerUrl = "wss://websocker.url";
    console.log(Strophe.SASLAnonymous);
    Strophe.SASLAnonymous.priority = 50;
    let connection = new Strophe.Connection(webSockerUrl);
    const username = 'userId';
    const password = '';
    const url = `${username}/${currentDate}`;    
    connection.connect(url, null, events.onConnect);
4

0 に答える 0