新しい RSS アイテムを取得するたびにスクリプトを実行する

新しい RSS アイテムを取得するたびにスクリプトを実行する

私は Steam ベースのゲーム サーバー、Unturned for GNU-Linux を持っています。/home/steam/update.shスクリプトを実行して手動で更新する必要があります。

update.shゲームサーバーの最新バージョンがダウンロードされ、サービスが再起動されます。


私が試したこと
私は毎日午後 9 時に実行する cronjob を作成しましたupdate.sh(その時間帯は通常、午後 7 時、8 時、または 9 時に更新されます)。しかし、ある日は 9:15 に更新され、サーバーが 1 日間オフラインになる可能性があるため、これは良い解決策ではありません。

0  21 * * * /home/steam/update.sh > /dev/null 2>&1

私が欲しいもの
特にこのゲームの場合、アップデートのたびに変更ログが投稿され、Steam が RSS リンクを提供していることがわかりました。http://steamcommunity.com/games/304930/rss/

update.shRSS が更新されるたびに実行する方法はありますか?
サーバーが更新されているかどうかを確認する方法はありますか?

よろしくお願いします。

答え1

まあ、あると思います。たとえば 30 分ごとに (または、迅速な応答にこだわる場合はもっと頻繁に) cron ジョブを実行して、新しい RSS エントリのみをチェックするスクリプトを実行するとします。新しいエントリがある場合は更新スクリプトを呼び出し、ない場合は何もしません。これにより、RSS フィードを 1 分ごとにチェックしても、システムの速度が少しも低下することはありません。ただし、RSS エントリを追跡するために独自の小さなものを作成する必要がありますが、最後に確認した RSS エントリのタイムスタンプを保存するだけでよいと思います。

答え2

短い答え: いいえ。

長い答え:

  • RSS フィードを取得している場合、Steam コミュニティのユーザーは更新をトリガーできる「魔法の信号」をプッシュすることはできません。

  • crontab ソリューションは問題ありません。念のため 9pm16 に設定してください。update.sh応答しないサーバーを処理できる必要があります。

関連情報