【LimeChat】毎日同じ時間に発言するスクリプトを作った
IRCクライアントのLimeChatで毎日同じ時間に発言する方法のスクリプト
毎朝8時30分に「おはようございます!8:30です。今日も一日頑張りましょ-ヾ(๑╹◡╹)ノ"」とか流したり
毎日17時に「定時です。お疲れ様でした(((((((((((っ・ω・)っ」とか流したり
応用として今日の10時から会議だって日だけ朝一で9時55分位でセットして「10時から会議です。会議室に移動してください」とか流したり
できるかなぁ
/* 指定した時間にメッセージを出力するスクリプト ※連投防止のため指定時間の1分後に動作します ※上記時間から最大で±1分程度の誤差があります *Version* 1.0:新規作成 */ // 出力設定 var messageText = 'おはようございます!8:30です。今日も一日頑張りましょ-ヾ(๑╹◡╹)ノ"' var hour = 8; // 時(24時間表示) var min = 29; // 分(1桁でも0は不要…あっても動くかも) var channel = '#all'; /* 連投防止用wait関数 */ function wait(intervalTime) { setTimeout(showMessage, 60 * 1000); } /* メッセージ出力関数 */ function showMessage() { send(channel, messageText); setNextTimer(); } /* タイマー設定 */ function setNextTimer() { log('出力先チャンネル:' + channel); var now = new Date(); var nextH = hour - now.getHours(); var nextM = min - now.getMinutes(); var intervalTime = ((nextH * 60) + nextM) * 60 * 1000; if (intervalTime < 0){ intervalTime = (((24 * 60) * 60) * 1000 ) + intervalTime; } var nextDate = new Date(); nextDate.setTime(now.getTime() + intervalTime + 1000); log('次回出力予定時間:' + nextDate.toLocaleString()); setTimeout(wait, intervalTime); } /* 起動時イベント */ function event::onLoad() { setNextTimer(); }
使い方はスクリプトの出力設定のhour、min、channelとメッセージを書き換えてLimeChatに設定するだけの親切設計
改変、再配布は自由だけど改変はフィードバックくれたり、再配布は教えてくれると嬉しいなぁって