From 3b8150d1a800772742a69c6c611bd05210a685a3 Mon Sep 17 00:00:00 2001 From: koi-chan Date: Wed, 24 Oct 2018 14:15:18 +0900 Subject: [PATCH] =?UTF-8?q?jihou-freewords:=20Jihou=20=E3=83=97=E3=83=A9?= =?UTF-8?q?=E3=82=B0=E3=82=A4=E3=83=B3=E3=81=AB=E3=81=8A=E3=81=84=E3=81=A6?= =?UTF-8?q?=E3=80=81=E4=BB=BB=E6=84=8F=E3=81=AE=E3=83=A1=E3=83=83=E3=82=BB?= =?UTF-8?q?=E3=83=BC=E3=82=B8=E3=82=92=E5=87=BA=E5=8A=9B=E3=81=A7=E3=81=8D?= =?UTF-8?q?=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E3=81=97=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit issue: #114 --- config/jihou.yaml | 3 ++- doc/plugins/jihou.md | 11 ++++++++--- lib/rgrb/plugin/jihou/irc_adapter.rb | 13 ++++++++----- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/config/jihou.yaml b/config/jihou.yaml index 0d1b706a..e3b6386a 100644 --- a/config/jihou.yaml +++ b/config/jihou.yaml @@ -6,4 +6,5 @@ Jihou: # 時報を発言する時間とチャンネル Timer: '00:00:00': - - '#irc_test' + '#irc_test': '' + '#irc_test': 'jihou-test' diff --git a/doc/plugins/jihou.md b/doc/plugins/jihou.md index bc8b8eb5..78d227de 100644 --- a/doc/plugins/jihou.md +++ b/doc/plugins/jihou.md @@ -1,12 +1,16 @@ Jihou ===== -定期的に決められた時刻が来たことを通知するプラグインです。 +決められた時刻が来たらメッセージを通知するプラグインです。 コマンド -------- コマンドはありません。設定ファイルで定義した時刻がやってきたとき、自動的に動作します。 +メッセージ指定欄を空白にすると、時報として動作します。何か設定すると、そのメッセージを発言します。 + +時報は以下の書式の文章です。 +\ が \ の皆様に \年\月\
日 \時\分\秒 をお知らせします。 設定 ---- @@ -17,10 +21,11 @@ Jihou # 時報プラグインの設定 Jihou: # 起動後、タイマーを動かさない時間(秒)。デフォルトは60秒 - # チャンネルの情報などを取得するため、接続直後は発言が遅延するため + # チャンネルの情報などを取得するため、接続直後は発言が遅延する Wait: 30 # 時報を発言する時間とチャンネル Timer: '00:00:00': - - '#irc_test' + '#irc_test': '' + '#irc_test': 'メッセージ' ``` diff --git a/lib/rgrb/plugin/jihou/irc_adapter.rb b/lib/rgrb/plugin/jihou/irc_adapter.rb index c1979b7b..c3e38e03 100644 --- a/lib/rgrb/plugin/jihou/irc_adapter.rb +++ b/lib/rgrb/plugin/jihou/irc_adapter.rb @@ -50,21 +50,24 @@ def jihou end # 時報をチャンネルに発言する - # @param [String] channels 発言するチャンネル + # @param [Hash] channels 発言するチャンネル # @param [Time] time 現在時刻 # @return [void] def sendmes(channels, time) - channels.each { |channel_name| + channels.each do |channel_name, message| channel = Channel(channel_name) - message = JIHOU_MESSAGE % { + if(message == '') + message = JIHOU_MESSAGE % { nick: bot.nick, channel: channel_name, time: time.strftime('%Y年%m月%d日 %H時%M分%S秒') - } + } + end + channel.safe_notice(message) log_notice(channel, message) - } + end end end end