2017-11-19 22:16:11 +04:00
// i2_bot – Instinct PokememBro Bot
// Copyright (c) 2017 Vladimir "fat0troll" Hodakov
package chatter
import (
"github.com/go-telegram-bot-api/telegram-bot-api"
"strconv"
)
// GroupsList lists all chats where bot exist
func ( ct * Chatter ) GroupsList ( update * tgbotapi . Update ) string {
groupChats , ok := ct . getAllGroupChatsWithSquads ( )
if ! ok {
return "fail"
}
2017-12-23 17:03:26 +04:00
academyChatID , _ := strconv . ParseInt ( c . Cfg . SpecialChats . AcademyID , 10 , 64 )
2017-11-26 17:28:26 +04:00
bastionChatID , _ := strconv . ParseInt ( c . Cfg . SpecialChats . BastionID , 10 , 64 )
defaultChatID , _ := strconv . ParseInt ( c . Cfg . SpecialChats . DefaultID , 10 , 64 )
hqChatID , _ := strconv . ParseInt ( c . Cfg . SpecialChats . HeadquartersID , 10 , 64 )
2017-11-19 22:16:11 +04:00
message := "*Бот состоит в следующих групповых чатах:*\n"
for i := range groupChats {
message += "---\n"
2017-11-26 15:54:05 +04:00
message += "\\[#" + strconv . Itoa ( groupChats [ i ] . Chat . ID ) + "] _" + c . Users . FormatUsername ( groupChats [ i ] . Chat . Name ) + "_\n"
2017-11-19 22:16:11 +04:00
message += "Telegram ID: " + strconv . FormatInt ( groupChats [ i ] . Chat . TelegramID , 10 ) + "\n"
if groupChats [ i ] . ChatRole == "squad" {
message += "Статистика отряда:\n"
2017-11-24 00:16:22 +04:00
message += c . Statistics . SquadStatictics ( groupChats [ i ] . Squad . ID )
2017-11-19 22:16:11 +04:00
} else if groupChats [ i ] . ChatRole == "flood" {
message += "Является флудочатом отряда №" + strconv . Itoa ( groupChats [ i ] . Squad . ID ) + "\n"
} else {
2017-12-23 17:03:26 +04:00
if groupChats [ i ] . Chat . TelegramID == academyChatID {
message += "Является академией лиги\n"
}
2017-11-26 17:28:26 +04:00
if groupChats [ i ] . Chat . TelegramID == bastionChatID {
message += "Является бастионом лиги\n"
}
if groupChats [ i ] . Chat . TelegramID == defaultChatID {
message += "Является чатом по умолчанию лиги\n"
}
if groupChats [ i ] . Chat . TelegramID == hqChatID {
message += "Является чатом совета лиги\n"
}
2017-11-19 22:16:11 +04:00
}
}
message += "\nЧто б ы создать отряд, введите команду /make\\_squad _X Y_, где _X_ — номер чата с пинами (в нём позволено писать лишь боту и командирам), а _Y_ — чат-флудилка для общения отряда."
msg := tgbotapi . NewMessage ( update . Message . Chat . ID , message )
msg . ParseMode = "Markdown"
c . Bot . Send ( msg )
return "ok"
}