From 08c62423c9b48cd92f3b8472e3a2e84b6cf3b589 Mon Sep 17 00:00:00 2001 From: ocha Date: Thu, 26 Sep 2019 22:35:37 +0900 Subject: [PATCH] =?UTF-8?q?CTCP:=20=E3=82=B3=E3=83=A1=E3=83=B3=E3=83=88?= =?UTF-8?q?=E3=82=92=E8=BF=BD=E5=8A=A0=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit RFCのドラフトにおける各コマンドの説明のURLを追加したかった --- lib/rgrb/plugin/ctcp/irc_adapter.rb | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/lib/rgrb/plugin/ctcp/irc_adapter.rb b/lib/rgrb/plugin/ctcp/irc_adapter.rb index a799c1b2..ed3dfb7b 100644 --- a/lib/rgrb/plugin/ctcp/irc_adapter.rb +++ b/lib/rgrb/plugin/ctcp/irc_adapter.rb @@ -22,33 +22,58 @@ class IrcAdapter ctcp(command) end - def initialize(*args) + # プラグインを初期化する + def initialize(*) super config_data = config[:plugin] || {} @userinfo = config_data['UserInfo'] || 'RGRB 稼働中' end + # 利用可能なコマンドを返す + # @param [Cinch::Message] m + # @return [void] + # @see https://tools.ietf.org/id/draft-oakley-irc-ctcp-01.html#clientinfo def ctcp_clientinfo(m) ctcp_reply(m, AVAILABLE_COMMANDS.join(' ')) end + # バージョン情報を返す + # @param [Cinch::Message] m + # @return [void] + # @see https://tools.ietf.org/id/draft-oakley-irc-ctcp-01.html#version def ctcp_version(m) ctcp_reply(m, "RGRB #{RGRB::VERSION_WITH_COMMIT_ID}") end + # 現在のローカル時刻を返す + # @param [Cinch::Message] m + # @return [void] + # @see https://tools.ietf.org/id/draft-oakley-irc-ctcp-01.html#time def ctcp_time(m) ctcp_reply(m, Time.now.strftime('%a, %d %b %Y %T %z')) end + # クエリと同じパラメータを返す + # @param [Cinch::Message] m + # @return [void] + # @see https://tools.ietf.org/id/draft-oakley-irc-ctcp-01.html#ping def ctcp_ping(m) ctcp_reply(m, m.ctcp_args.join(' ')) end + # ユーザについての情報を返す + # @param [Cinch::Message] m + # @return [void] + # @see https://tools.ietf.org/id/draft-oakley-irc-ctcp-01.html#userinfo def ctcp_userinfo(m) ctcp_reply(m, @userinfo) end + # RGRB のソースコードが存在する場所を返す + # @param [Cinch::Message] m + # @return [void] + # @see https://tools.ietf.org/id/draft-oakley-irc-ctcp-01.html#source def ctcp_source(m) ctcp_reply(m, 'https://github.com/cre-ne-jp/rgrb') end