bot.go 528 B

123456789101112131415161718192021222324252627282930313233
  1. package config
  2. type bot struct {
  3. Username string `yaml:"username"`
  4. Displayname string `yaml:"displayname"`
  5. Avatar string `yaml:"avatar"`
  6. }
  7. func (b *bot) validate() error {
  8. if b.Username == "" {
  9. b.Username = "discordbot"
  10. }
  11. if b.Displayname == "" {
  12. b.Displayname = "Discord Bridge Bot"
  13. }
  14. return nil
  15. }
  16. func (b *bot) UnmarshalYAML(unmarshal func(interface{}) error) error {
  17. type rawBot bot
  18. raw := rawBot{}
  19. if err := unmarshal(&raw); err != nil {
  20. return err
  21. }
  22. *b = bot(raw)
  23. return b.validate()
  24. }