Archived
1
This repository has been archived on 2022-11-04. You can view files and clone it, but cannot push or open issues or pull requests.
i2_bot/lib/welcomer/responders.go

67 lines
3.2 KiB
Go
Raw Normal View History

// i2_bot Instinct PokememBro Bot
// Copyright (c) 2017 Vladimir "fat0troll" Hodakov
package welcomer
import (
"github.com/go-telegram-bot-api/telegram-bot-api"
2018-01-21 23:28:53 +04:00
"git.wtfteam.pro/fat0troll/i2_bot/lib/dbmapping"
2017-11-26 16:54:06 +04:00
"strconv"
)
// PrivateWelcomeMessageUnauthorized tell new user what to do.
func (w *Welcomer) PrivateWelcomeMessageUnauthorized(update *tgbotapi.Update) {
message := "*Бот Инстинкта приветствует тебя!*\n\n"
message += "Для начала работы с ботом, пожалуйста, перешли от бота игры @PokememBroBot профиль героя.\n"
message += "Все дальнейшие действия с ботом возможны лишь при наличии профиля игрока.\n\n"
message += "Как переслать профиль: перейди в @pokemembrobot, нажми там кнопку 👤Герой. Щелкни на полученном сообщении с твоим уровнем, атакой, опытом и так далее правой кнопкой мыши (или просто тапни, если ты с телефона), в появившемся меню нажми Переслать и выбери @i2_bot, то есть меня, в появившемся списке чатов, а затем отправь мне это сообщение.\n"
msg := tgbotapi.NewMessage(update.Message.Chat.ID, message)
2017-10-18 07:03:34 +04:00
msg.ParseMode = "Markdown"
2017-10-18 07:03:34 +04:00
c.Bot.Send(msg)
}
// PrivateWelcomeMessageAuthorized greets existing user
func (w *Welcomer) PrivateWelcomeMessageAuthorized(update *tgbotapi.Update, playerRaw *dbmapping.Player) {
message := "*Бот Инстинкта приветствует тебя. Снова.*\n\n"
message += "Привет, " + update.Message.From.FirstName + " " + update.Message.From.LastName + "!\n"
message += "Последнее обновление информации о тебе: " + playerRaw.UpdatedAt.Format("02.01.2006 15:04:05 -0700")
message += "\nПосмотреть информацию о себе: /me"
msg := tgbotapi.NewMessage(update.Message.Chat.ID, message)
2017-10-18 07:03:34 +04:00
msg.ParseMode = "Markdown"
2017-10-18 07:03:34 +04:00
c.Bot.Send(msg)
}
// PrivateWelcomeMessageSpecial greets existing user with `special` access
func (w *Welcomer) PrivateWelcomeMessageSpecial(update *tgbotapi.Update, playerRaw *dbmapping.Player) {
message := "*Бот Инстинкта приветствует тебя. Снова.*\n\n"
message += "Привет, " + update.Message.From.FirstName + " " + update.Message.From.LastName + "!\n"
message += "\nБудь аккуратен, суперюзер!"
msg := tgbotapi.NewMessage(update.Message.Chat.ID, message)
msg.ParseMode = "Markdown"
c.Bot.Send(msg)
}
// GroupWelcomeMessage welcomes new user on group or bot itself
func (w *Welcomer) GroupWelcomeMessage(update *tgbotapi.Update) string {
newUsers := *update.Message.NewChatMembers
for i := range newUsers {
newUser := newUsers[i]
if (newUser.UserName == "i2_bot") || (newUser.UserName == "i2_dev_bot") {
w.groupStartMessage(update)
} else {
2017-11-29 16:36:06 +04:00
defaultGroupID, _ := strconv.ParseInt(c.Cfg.SpecialChats.DefaultID, 10, 64)
2017-11-26 17:28:26 +04:00
2017-11-26 16:54:06 +04:00
if update.Message.Chat.ID == defaultGroupID {
w.groupWelcomeUser(update, &newUser)
}
}
}
return "ok"
}