Skip to content

GorokuGo で書くユーザーボットのモジュール

モジュールとは、名前とコマンドを持つ構造体です。それ以外にはすべて既定値があります。

モジュール全体

go
package modules

import "goroku/goroku"

type HTML struct{ goroku.Base }

func (m *HTML) Name() string { return "HTML" }

func (m *HTML) Commands() map[string]goroku.CommandHandler {
	return map[string]goroku.CommandHandler{"html": m.HTMLCmd}
}

func (m *HTML) HTMLCmd(msg *goroku.Message) error {
	code := msg.ArgsOrReply()
	if code == "" {
		return msg.Answer(m.T("no_args", "❌ <b>テキストを送るか、メッセージに返信してください</b>"))
	}
	return msg.Answer(code)
}

これでファイル全体です。.html <b>やあ</b> は太字を描画し、メッセージへの返信で .html を送るとそのメッセージを描画します。

次に読むもの

やりたいこと参照
5分で動くものを作る最初のモジュール
各メソッドの役割を理解するモジュールの構造
コマンドをグループ・管理者・返信に限定するCommandMeta
再起動をまたいでデータを保持するストレージ
利用者に設定を提供する設定
他の人に配布するモジュールの導入

Released under the GNU AGPL v3 License.