Slack RSS integrations のfetching(polling)の仕様 (About specifications of fetching(polling) in Slack RSS integrations)
Slack RSS integrations のfetching(polling)の仕様 (About specifications of fetching(polling) in Slack RSS integrations)
2017年9月時点の情報です.
SlackのRSS integrationsに登録していたフィードがうまく動作しなかったとき, RSS integrationsのfetch(poll)のタイミングなどの仕様をサポートに聞いてみたのでメモ.
RSSフィードのitem保存件数
Slackのフリープランでの制限は,以下のようになっている.
Slack は、お好きなだけフリープランでご利用いただくことができますが、フリープランには以下のような制限があることに注意してください : - メッセージの表示制限 — 閲覧と検索の範囲が、直近のメッセージ10,000件に制限されます。
つまり,RSS integrationsのみ使うと, フィードのitemは1万件保存できる. ほかのRSS Readerでは30日間保存だったりするが,Slackの場合時間制限はない.
更新間隔 (update interval)
登録したRSS feedが実際にいつfetch(poll)されたかは, RSS App から Settings (Browse Apps > RSS > Edit configuration) から確認できる.
I should have said that it happens within 15 minutes. If you're seeing it happening every 5 minutes ten that's faster than what we try to target for our interval.
Slack RSS integrationsでは,15分以内に更新することを目標に動作しているようです.
<ttl>
要素を見ているか
どうやら,<ttl>
は見ていないようで,上記のように,最大15分間隔で更新するようです.
どのように新しいitemを更新(pick up) しているか
各itemのpubDate
の時間を見て更新しているようです.
For example, let's say that our RSS app runs and picks up all items with a
pubDate
value within the following time range:from Sep 28 at 21:45 (this is the last time that it picked up any items)
to Sep 28 at 22:00 (this will become the new placeholder)
If after the RSS app picks up those items an then an item from Sep 28 at 21:45 gets added, that item will not be picked up because the next time that your RSS app checks your feed, it will check the following interval:
from Sep 28 at 22:00 (this is the last time that it picked up any items)
to Sep 28 at 22:15 (this will become the new placeholder)
つまり,前回の新しいitemをpick up した時間と今fetch した時間の間にある'pubDate'のitemのみを更新するようです.
なので,pubDate
がfeedへの追加の時間になってないような設計がよろしくないRSS feedの場合,Slack RSS integrationsでは正しく読めない場合があります.