mirror-nourybot/pkg/handlers/privatemessage.go

51 lines
1.3 KiB
Go
Raw Normal View History

2021-10-14 00:45:32 +02:00
package handlers
import (
"github.com/gempir/go-twitch-irc/v2"
2021-10-19 22:25:47 +02:00
"github.com/lyx0/nourybot/cmd/bot"
2021-12-13 18:29:53 +01:00
"github.com/lyx0/nourybot/pkg/db"
2021-10-14 00:45:32 +02:00
log "github.com/sirupsen/logrus"
)
2021-10-21 00:07:18 +02:00
// PrivateMessage checks messages for correctness and forwards
// commands to the command handler.
2021-10-19 22:25:47 +02:00
func PrivateMessage(message twitch.PrivateMessage, nb *bot.Bot) {
2021-10-22 22:24:13 +02:00
// log.Info("fn PrivateMessage")
2021-10-25 18:01:27 +02:00
// log.Info(message.Raw)
2021-10-14 00:45:32 +02:00
// roomId is the Twitch UserID of the channel the message
// was sent in.
roomId := message.Tags["room-id"]
// The message has no room-id so something went wrong.
if roomId == "" {
log.Error("Missing room-id in message tag", roomId)
2021-10-14 00:45:32 +02:00
return
}
2021-12-13 18:29:53 +01:00
db.InsertMessage(nb, message.User.Name, message.Channel, message.User.ID, message.Message)
2021-10-25 17:43:45 +02:00
// Thing for #pajlada
if message.Channel == "pajlada" && message.Message == "pajaS 🚨 ALERT" && message.User.Name == "pajbot" && message.Action {
2021-10-25 19:27:52 +02:00
// log.Info(message.Message)
2021-10-25 17:43:45 +02:00
nb.SkipChecking("pajlada", "/me PAJAS 🚨 pajaAAAAAAAAAAA")
2021-10-25 13:52:09 +02:00
return
}
// Since our command prefix is () ignore every message
// that is less than 2
2021-10-14 00:45:32 +02:00
if len(message.Message) >= 2 {
// Message starts with (), pass it on to
// the command handler.
2021-10-14 00:45:32 +02:00
if message.Message[:2] == "()" {
2021-10-19 22:25:47 +02:00
Command(message, nb)
return
2021-10-14 00:45:32 +02:00
}
}
2021-10-14 15:14:38 +02:00
// Message was no command
2021-10-25 18:01:27 +02:00
log.Infof("[#%s]:%s: %s", message.Channel, message.User.DisplayName, message.Message)
2021-10-14 00:45:32 +02:00
}