X-Git-Url: https://git.jsancho.org/?p=midgaard_bot.git;a=blobdiff_plain;f=sessions.go;h=a0ff861d591fdee13a3825cbf867879cd874ae36;hp=dad67abcd87b9047877f4e543eaf67d102f1bbd1;hb=287bb6b379833a10a1eca80a5fbe52422e345c76;hpb=04dc2e081ed05a8e6cc77596ff0f694073283d82 diff --git a/sessions.go b/sessions.go index dad67ab..a0ff861 100644 --- a/sessions.go +++ b/sessions.go @@ -8,3 +8,23 @@ type Session struct { Chat *tgbotapi.Chat Msgbox chan tgbotapi.Message } + +var sessions map[int64]*Session + +func initSessions() { + sessions = make(map[int64]*Session) +} + +func getSession(chat *tgbotapi.Chat) *Session { + session, ok := sessions[chat.ID] + if !ok { + session = newSession(chat) + } + return session +} + +func newSession(chat *tgbotapi.Chat) *Session { + session := Session{chat, make(chan tgbotapi.Message)} + sessions[chat.ID] = &session + return &session +}