summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-10-09 14:24:16 +0200
committerDimitri Sokolyuk <demon@dim13.org>2016-10-09 14:24:16 +0200
commit34e0e4476d5e8902e8cad9c90af5dfe630662a65 (patch)
tree18a3e9c9ac8238ee8a63d9fed95e321b4da1a9a5
parent60ecd0675282d2688c3300bd42c3ad7c85489c5b (diff)
Simplify interface
-rw-r--r--blame.go2
-rw-r--r--command.go3
-rw-r--r--duck.go2
-rw-r--r--flood.go10
-rw-r--r--help.go4
-rw-r--r--last.go2
-rw-r--r--main.go16
-rw-r--r--rfc.go2
-rw-r--r--urban.go2
9 files changed, 18 insertions, 25 deletions
diff --git a/blame.go b/blame.go
index 8758f43..094a45f 100644
--- a/blame.go
+++ b/blame.go
@@ -17,7 +17,7 @@ func (Blame) Handle(conn *irc.Conn, line *irc.Line) {
}
}
-func (Blame) Help() string {
+func (Blame) String() string {
return "Blame author and return link to source code"
}
diff --git a/command.go b/command.go
index 15c4858..9f20c45 100644
--- a/command.go
+++ b/command.go
@@ -1,6 +1,7 @@
package main
import (
+ "fmt"
"log"
"strings"
@@ -9,7 +10,7 @@ import (
type Commander interface {
irc.Handler
- Help() string
+ fmt.Stringer
}
const maxLen = 500
diff --git a/duck.go b/duck.go
index d5cb97b..7900cc0 100644
--- a/duck.go
+++ b/duck.go
@@ -19,7 +19,7 @@ func (Duck) Handle(conn *irc.Conn, line *irc.Line) {
}
}
-func (Duck) Help() string {
+func (Duck) String() string {
return "Perform duckduckgo instant answer search"
}
diff --git a/flood.go b/flood.go
index 986a85c..c9865ed 100644
--- a/flood.go
+++ b/flood.go
@@ -1,13 +1,10 @@
package main
import (
- "log"
"math"
"sort"
"strings"
"unicode/utf8"
-
- irc "github.com/fluffle/goirc/client"
)
func entropy(s string) (e float64) {
@@ -43,10 +40,3 @@ func commonWord(v []string) int {
sort.Sort(sort.Reverse(sort.IntSlice(l)))
return l[0]
}
-
-func DetectFlood(conn *irc.Conn, line *irc.Line) {
- if isFlood(line.Text()) {
- log.Println("flood", line.Nick)
- conn.Kick(*room, line.Nick, "flood")
- }
-}
diff --git a/help.go b/help.go
index 7dc41ee..f6cf4c5 100644
--- a/help.go
+++ b/help.go
@@ -12,7 +12,7 @@ type Help struct{}
func (Help) Handle(conn *irc.Conn, line *irc.Line) {
var msg []string
for k, v := range commands {
- msg = append(msg, fmt.Sprintf("%-8s%v", k, v.Help()))
+ msg = append(msg, fmt.Sprintf("%-8s%v", k, v))
}
sort.Sort(sort.StringSlice(msg))
for _, s := range msg {
@@ -20,7 +20,7 @@ func (Help) Handle(conn *irc.Conn, line *irc.Line) {
}
}
-func (Help) Help() string {
+func (Help) String() string {
return "This help"
}
diff --git a/last.go b/last.go
index 0c47cb6..f993e82 100644
--- a/last.go
+++ b/last.go
@@ -23,7 +23,7 @@ func (Last) Handle(conn *irc.Conn, line *irc.Line) {
})
}
-func (Last) Help() string {
+func (Last) String() string {
return "Renurn last 10 messages"
}
diff --git a/main.go b/main.go
index f9ffbe7..4fe32f6 100644
--- a/main.go
+++ b/main.go
@@ -7,13 +7,12 @@ import (
irc "github.com/fluffle/goirc/client"
)
-var (
- node = flag.String("node", "irc.freenode.org:6667", "IRC Server")
- room = flag.String("room", "#lor", "IRC Channel")
- name = flag.String("name", "dim13", "Bots Name")
-)
-
func main() {
+ var (
+ node = flag.String("node", "irc.freenode.org:6667", "IRC Server")
+ room = flag.String("room", "#lor", "IRC Channel")
+ name = flag.String("name", "dim13", "Bots Name")
+ )
flag.Parse()
c := irc.SimpleClient(*name)
@@ -38,7 +37,10 @@ func main() {
go ExtractLinks(conn, line)
go ExtractRFC(conn, line)
if line.Public() && line.Nick != conn.Me().Nick {
- go DetectFlood(conn, line)
+ if isFlood(line.Text()) {
+ log.Println("flood", line.Nick)
+ conn.Kick(*room, line.Nick, "flood")
+ }
Push(line)
}
})
diff --git a/rfc.go b/rfc.go
index ceeef45..5f218e1 100644
--- a/rfc.go
+++ b/rfc.go
@@ -32,7 +32,7 @@ func (RFC) Handle(conn *irc.Conn, line *irc.Line) {
}
}
-func (RFC) Help() string {
+func (RFC) String() string {
return "search rfc by keyword (msg privat to see all matches)"
}
diff --git a/urban.go b/urban.go
index 0a8afbf..97fa4ff 100644
--- a/urban.go
+++ b/urban.go
@@ -24,7 +24,7 @@ func (Urban) Handle(conn *irc.Conn, line *irc.Line) {
}
}
-func (Urban) Help() string {
+func (Urban) String() string {
return "Perform urban dictionary search"
}