本文整理汇总了Golang中github.com/fluffle/goirc/client.Conn.HandleFunc方法的典型用法代码示例。如果您正苦于以下问题:Golang Conn.HandleFunc方法的具体用法?Golang Conn.HandleFunc怎么用?Golang Conn.HandleFunc使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/fluffle/goirc/client.Conn
的用法示例。
在下文中一共展示了Conn.HandleFunc方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Init
func (m *RSSModule) Init(c *irc.Conn, config json.RawMessage) {
db.AutoMigrate(&RSSLastSeen{})
err := json.Unmarshal(config, &m.config)
if err != nil {
panic(err)
}
c.HandleFunc(irc.CONNECTED, func(conn *irc.Conn, line *irc.Line) {
// Wait a bit to lets things settle. This should be rewritten
// to check for channel memebership
<-time.After(30 * time.Second)
for _, feed := range m.config.Feeds {
if feed.URL == "" {
log.WithFields(logrus.Fields{
"feed": feed,
}).Error("RSS: Feed has no URL")
}
timeout := feed.Timeout
if timeout < 1 {
if m.config.Timeout < 1 {
log.WithFields(logrus.Fields{
"feed": feed,
}).Error("RSS: Feed has no timeout or global timeout")
}
timeout = m.config.Timeout
}
go pollFeed(c, feed, timeout)
}
})
}
示例2: addWhoHandlers
func addWhoHandlers(irc *client.Conn) {
if !flag.Parsed() {
flag.Parse()
}
irc.HandleFunc("352", whoHandler)
irc.HandleFunc("315", whoHandler)
return
}
示例3: addNickHandlers
func addNickHandlers(irc *client.Conn) {
if !flag.Parsed() {
flag.Parse()
}
irc.HandleFunc("QUIT", dropIdentifiedCache)
irc.HandleFunc("307", isIdentified)
irc.HandleFunc("330", isIdentified)
irc.HandleFunc("318", isIdentified)
}