Chatty Stone Bot
定期駆動の方法
最終更新:
chattystone
-
view
bot を定期的に駆動する
bot は 1 回だけ駆動してもあまり意味がありません。1 つつぶやいて、それでおしまいになってしまうからです。bot の真価を発揮させるには、定期的に bot を駆動する必要があります。
定期的に駆動させる前に、まず、現在の設定できちんと動作しているかを確認して下さい。アシスタントで bot をテスト駆動させてきちんと動作するかを見て下さい。
きちんと動作していたら、bot を定期的に駆動させます。
bot を(1 回だけ)駆動させる仕組みはごくごく簡単で、何らかの方法で、bot 本体の URL(トップページから ChattyStoneBot/Run.php)にアクセスするだけです。
例えば、レンタルサーバーのドメインが rental-server.com で、あなたのアカウントが your の場合は、bot 本体の URL は
http://rental-server.com/~your/ChattyStoneBot/Run.php
となります。アシスタントの bot テスト駆動は、まさにこのページを表示しているわけです。
しごく単純な仕組みなので、定期駆動のやりかたもいくつか考えられます。
以下のいずれかの方法で、bot を定期的に駆動させて下さい。それぞれ長所・短所がありますので、自分に合った方法で定期駆動させましょう。
また、その他のアイディアをお持ちの方がいらっしゃいましたら、教えていただければ幸いです。
GAE-Cron を利用する
GAE-Cron とは、一定時間ごとに Web ページを読みに行くという、まさに bot 駆動のためのツールです。大多数の方には、GAE-Cron がお薦めの方法と言えます。ちなみに、一般的に cron(クロン)とは、一定時間ごとになんらかの作業を開始させるためのスケジュールプログラムを指します。
GAE-Cron は、Google App Engine(GAE)という Google のサービスを利用して稼働しているツールです。GAE-Cron のソースコードは公開されており、誰でも GAE 上に設置できるというだけではなく、一人が設置すれば、それを複数人で利用できるという大変便利なものです。GAE-Cron を設置している人のことを「CAE-Cron プロバイダー」と呼んでいます。
お手軽なのは、他の人が設置してくれた GAE-Cron を使わせていただく方法です。
少し前までは GAE-Cron Clug にてプロバイダーの一覧が公開されていたのですが、GAE 側の無料使用制限が厳しくなったのに伴い、一覧が廃止されています。
従って、登録に空きのあるプロバイダーを探すには、「GAE-Cron "名登録可能"」などでググると良いでしょう。
空きのあるプロバイダーを無事に見つけられたら、アカウント登録をして、定期駆動の設定を行います。

「呼出 URL (1)」の欄に、bot 本体の URL を入力します。周期の欄に、何分間隔で bot を駆動したいかを入力します。あまり短い時間にすると、GAE-Cron プロバイダーに負担がかかることがあります。プロバイダーによっては、短い周期の設定を禁止していますので、申し込んだプロバイダーの注意事項をよく読んで下さい。設定し終えたら「有効」のラジオボタンをクリックし、「更新」ボタンをクリックして完了です。
自分で GAE-Cron を設置する
不幸にして空きのある GAE-Cron プロバイダーを見つけられない場合、あるいは、周期を自由に設定したい場合などは、GAE-Cron を自分で設置する(デプロイする)のも手です。
ハードルはそれなりに高いですが、得られる効果を考えれば、十分に挑戦する価値があります。また、あなたが設置すれば、他の人も利用できるので、役に立ちます。
設置方法については、GAE-Cron 本家様のページを参照して下さい。
自サーバーの cron を利用する
書くまでも無いのですが、自前でサーバーを立てている方にとっては、そのサーバーの cron を使うのが最も確実かつ自由度が高い方法ですね。
タスクスケジューラーを利用する
あまりお薦めはしませんが、Windows のタスクスケジューラーを利用するという手もあります。この方法の欠点は、パソコンの電源が入っていないと実行できないということと、定期的にブラウザのウィンドウが開いてうざいということです。
Windows 7 のタスクスケジューラーを例に説明します。
[スタートメニュー|すべてのプログラム|アクセサリ|システムツール|タスクスケジューラー]からタスクスケジューラーを起動します。

タスクスケジューラーの[操作|タスクの作成]メニューを選びます(基本タスクの作成ではなくタスクの作成にして下さい)。
タスクの作成ウィンドウが開きます。「全般」タブの名前に、「bot 駆動」などの分かりやすい名前を入力します。

「トリガー」タブの「新規」ボタンをクリックすると、さらにウィンドウが開きます。

「毎日」をクリックして、毎日駆動するようにします。開始時刻はとりあえず、現在の時刻の少し先(先にしておかないと、設定をいじっている間に開始時刻が過ぎてしまいます)が良いでしょう。また、「詳細設定」の「繰り返し間隔」のチェックを有効にして、間隔を選択します。
図ですと、「2011 年 12 月 25 日以降毎日、22:00:46 にタスクを開始し、かつ、5 分間隔でタスクを繰り返す」という設定になっています。
「OK」をクリックしてトリガーの設定を完了します。
続いて、「操作」タブでも「新規」ボタンをクリックします。

プログラム/スクリプトの欄に、ブラウザのプログラムファイルのパスを入力します。定期的にブラウザを実行する際、既にブラウザが起動していると、起動しないようですので、普段使っているブラウザとは違うブラウザを指定すると良いのでは無いかと思います。引数の追加欄に、bot 本体の URL を入力します。「OK」をクリックします。
ここまで設定できたら、「タスクの作成」ウィンドウの「OK」ボタンをクリックして、タスクスケジューラーの設定を完了します。
開始時刻になると、ブラウザが起動して bot の駆動が行われるはずです。
常に手動で駆動する
定期的に自動駆動するのは諦めて、気が向いた時に手動で駆動するというのも 1 つの手ではあります。
気が向いた時に、Chatty Stone Bot コントロールパネルのアシスタントで、bot のテスト駆動を行います。
その他
Twitter bot を公開されている pha さんのサイトにも、cron の設定方法がいくつか公開されていますので、参考にされてはいかがでしょうか。