Два методи — і модуль готовий
Вбудуйте goroku.Base, і життєвий цикл, сховище, перекладач та клієнт уже підключені. Оголосіть Name і Commands; решту перевизначайте лише за потреби.
Модуль — це структура з іменем і командами. Для всього іншого є значення за замовчуванням.
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 у відповідь на повідомлення відмалює його.
| Що потрібно | Читати |
|---|---|
| Швидко отримати робочий модуль | Перший модуль |
| Зрозуміти, навіщо кожен метод | Будова модуля |
| Обмежити команду групами, адмінами, відповідями | CommandMeta |
| Зберігати дані між перезапусками | Сховище |
| Дати користувачу налаштування | Налаштування |
| Роздати модуль іншим | Встановлення модуля |