Files
buny-jabber-bot/globals.go
2023-07-24 02:41:19 -07:00

66 lines
2.2 KiB
Go

package main
import (
"os"
"github.com/eleksir/go-xmpp"
)
// Config - это у нас глобальная штука :)
var config myConfig
// Списки тех, кого мы не баним никогда
var whiteList myWhiteList
// Списки злодеев, которых мы банм
var blackList myBlackList
// Ставится в true, если мы получили сигнал на выключение
var shutdown = false
// Чтобы не организовывать драку за установку коннекта
var connecting = false
// Глобальное состояние соединения
var isConnected = false
// Канал, в который приходят уведомления для хэндлера сигналов от траппера сигналов
var sigChan = make(chan os.Signal, 1)
// Основной инстанс xmpp-клиента
var talk *xmpp.Client
// Опции подключения к xmpp-серверу
var options *xmpp.Options
// Список комнат, в которых находится бот
var roomsConnected []string
// Время последней активности, нужно для jabber:iq:last
var lastActivity int64
// Время последней активности, нужно для c2s пингов - посылаем пинги, только если давненько ничего не приходило с
// сервера
var lastServerActivity int64
// Время последней активности MUC-ов, нужно для пингов - посылаем пинги, только если давненько ничего не приходило из
// muc-ов
var lastMucActivity = NewCollection()
// Получен ли ответ на запрос disco#info к серверу
var serverCapsQueried bool
// sync.Map-ка с капабилити сервера
var serverCapsList = NewCollection()
// sync.Map-ка с комнатами и их capability
var mucCapsList = NewCollection()
// Время, когда был отправлен c2s ping
var serverPingTimestampTx int64
// Время, когда был принят s2c pong
var serverPingTimestampRx int64
/* vim: set ft=go noet ai ts=4 sw=4 sts=4: */