summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-12-20 23:58:49 +0100
committerDimitri Sokolyuk <demon@dim13.org>2016-12-20 23:58:49 +0100
commit44b2a071555235d8e7c1d64d85541ade50527e3b (patch)
tree5f53d6bc722ccddcb3483ba814facfb5ab85171b
parentc2eaea7276945057ac18b31d06b79a6326932b57 (diff)
news watcher
-rw-r--r--main.go7
-rw-r--r--rss.go11
2 files changed, 8 insertions, 10 deletions
diff --git a/main.go b/main.go
index 442ef56..1b8ac33 100644
--- a/main.go
+++ b/main.go
@@ -17,11 +17,11 @@ func notify(conn *irc.Conn, target string) chan string {
return c
}
-func kicker(conn *irc.Conn, target string) chan string {
+func kicker(conn *irc.Conn, channel string) chan string {
c := make(chan string)
go func() {
for nick := range c {
- conn.Kick(target, nick)
+ conn.Kick(channel, nick)
}
}()
return c
@@ -82,7 +82,8 @@ func main() {
log.Fatal(err)
}
- go WatchNews(c, *room)
+ n := notify(c, *room)
+ go watchNews(n)
<-done
log.Println("Disconnected")
diff --git a/rss.go b/rss.go
index f79efe7..741b81d 100644
--- a/rss.go
+++ b/rss.go
@@ -6,7 +6,6 @@ import (
"time"
"dim13.org/rss"
- irc "github.com/fluffle/goirc/client"
)
type Feed struct {
@@ -107,14 +106,12 @@ func (f Feed) Watch(news chan News) {
}
}
-func WatchNews(conn *irc.Conn, room string) {
+func watchNews(msg chan string) {
news := make(chan News)
-
- for _, f := range Feeds {
- go f.Watch(news)
+ for _, feed := range Feeds {
+ go feed.Watch(news)
}
-
for n := range news {
- conn.Notice(room, n.String())
+ msg <- fmt.Sprint(n)
}
}