all repos — paprika @ master

go rewrite of taigabot

plugins/ctcp.go (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
package plugins

import (
	"strings"

	"gopkg.in/irc.v3"
)

type Ctcp struct{}

func init() {
	Register(Ctcp{})
}

func (Ctcp) Triggers() []string {
	return []string{"\x01VERSION\x01", "\x01PING"}
}

func (Ctcp) Execute(m *irc.Message) (string, error) {
	msg := m.Trailing()
	if msg == "\x01VERSION\x01" {
		return "\x01VERSION git.icyphox.sh/paprika\x01", IsNotice
	} else if strings.HasPrefix(msg, "\x01PING") {
		return msg, IsNotice
	}

	panic("Unreachable!")
}