28 lines
554 B
Go
28 lines
554 B
Go
package ws
|
|
|
|
import (
|
|
"errors"
|
|
"strings"
|
|
)
|
|
|
|
func (m *GatewayMessageIn) Validate() error {
|
|
if strings.TrimSpace(m.ID) == "" {
|
|
return errors.New("id missing")
|
|
}
|
|
if strings.TrimSpace(m.MsgID) == "" {
|
|
return errors.New("msg_id missing")
|
|
}
|
|
if strings.TrimSpace(m.Author.ID) == "" {
|
|
return errors.New("author.id missing")
|
|
}
|
|
if strings.TrimSpace(m.Content) == "" {
|
|
return errors.New("content missing")
|
|
}
|
|
|
|
if m.Type == "mod" && strings.TrimSpace(m.Destination.ID) == "" {
|
|
return errors.New("destination.channel_id missing")
|
|
}
|
|
|
|
return nil
|
|
}
|