それが事実かどうかはわかりません。私がおかしくなっているのかもしれません。ユーザーの「最近の閲覧」に関するメール送信のタイマーが、コミット a2c85f0845 以降短くなりましたか?私は 2 日前に問題のトラブルシューティングのために再起動しましたが、以前よりも頻繁にメールが届いているように感じられます。
@sam 氏によりユーザー表示ロジックが変更されましたが、より洗練され正確になるべきであって、悪化するものではありません。詳しく説明いただけますか?
必ずしも悪化しているというわけではありませんし、正確に計測したわけではありませんが、45 分間アクティビティがないと、自分が作成したトピックや参加したトピックに関するメールが届くように思えます。
例えば、今日 10:02 に投稿を作成し、最初の返信が今日 12:45 に来ました。トピック作成から最初の返信までの間、私は他のトピックを読んだり、Discourse の管理パネルでページを移動したりと、少なくとも 15〜20 分おきに何かをしていました。それでも 12:45 の返信に関するメールを受け取りました。
これはより正確な部分であり、メールがいつ送られ、いつ送られないのかを理解するのに役立ちます。私のメンバーの平均年齢はおそらく 46 歳なので、フォーラムがなぜそのような動作をしたのかを説明しなければならないこともあります:sweat_smile:
要約すると、以前は実際にはオンラインでなくても「オンライン」と判断されていましたが、これが修正されました。
Discourse の初期から、「不在時のみ」というオプションは email_time_window_mins サイト設定(デフォルトでは 10 分に設定)と連動していました。
わずかな副作用として、この数値はメールをキューイングするためにも、ユーザーが最後にオンラインだったかをチェックするためにも使用されています。
つまり、例えばユーザーにできるだけ早くメールを送りたいが、サイト上で 30 分間ユーザーの姿が見られなかった場合のみ送りたいという要望には、現時点では対応できません。
以前は、投稿から 10 分後に、ユーザーが過去 10 分間オンラインでなかった場合(「不在時のみ」ユーザー設定が有効な場合)、メールが送信されていました。
この動作に変更はありませんが、「ユーザーがオンラインだと判断していたが、実際にはそうではなかった」というバグを修正しました。
つまり、会員から質問を受けた場合に備えてまとめると、ユーザーが作成または参加したトピックや、サイト上で10分間活動していない場合のDMについてメールが生成されます。最近の変更により、ユーザーが「 inactive(非アクティブ)だと推測する」状態から「 inactive(非アクティブ)だと確信する」状態に変わったという理解でよろしいでしょうか?
もしそうであれば、非アクティブタイマーをカスタマイズする設定は現在あるか、または今後追加される予定はありますか?
その通りです。以前は、ブラウザを開いたまま離席してもユーザーを「アクティブ」とカウントしていました。現在は、スクロールやクリックなどの実際の活動を確認して、ユーザーがアクティブかどうかを判断しています。
Sam が述べた通り、これは email time window mins サイト設定に紐付いているため、それをカスタマイズできます。
おっと…私のミスでした。そこを見落としていました!皆さん、詳しい情報をありがとうございます!
これは重要な点です。
email time window mins site
は 2 つの意味を持ちます。例えば、 email time window mins site` を 60 に設定すると:
-
新しい返信などの通知を行う Discourse からのすべてのメールが 60 分 遅延して送信されます。
-
プロファイルで「離れている場合のみ」が設定されているユーザーは、過去 60 分以内にサイト上で活動が見られた場合はメールが送信されません。
現在の遅延設定は連動していますが、ここには新しいサイト設定を追加すべきでしょう。