本文整理汇总了Golang中github.com/jteeuwen/ircb/proto.Client.Bind方法的典型用法代码示例。如果您正苦于以下问题:Golang Client.Bind方法的具体用法?Golang Client.Bind怎么用?Golang Client.Bind使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/jteeuwen/ircb/proto.Client
的用法示例。
在下文中一共展示了Client.Bind方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Load
// Init initializes the plugin. it loads configuration data and binds
// commands and protocol handlers.
func (p *Plugin) Load(c *proto.Client) (err error) {
err = p.Base.Load(c)
if err != nil {
return
}
c.Bind(proto.CmdPrivMsg, func(c *proto.Client, m *proto.Message) {
p.parseURL(c, m)
})
ini := p.LoadConfig()
if ini == nil {
return
}
s := ini.Section("exclude")
list := s.List("url")
p.exclude = make([]*regexp.Regexp, len(list))
for i := range list {
p.exclude[i], err = regexp.Compile(list[i])
if err != nil {
return
}
}
return
}
示例2: bind
// bind binds protocol message handlers.
func bind(c *proto.Client) {
c.Bind(proto.Unknown, onAny)
c.Bind(proto.CmdPing, onPing)
c.Bind(proto.EndOfMOTD, onJoinChannels)
c.Bind(proto.ErrNoMOTD, onJoinChannels)
c.Bind(proto.ErrNicknameInUse, onNickInUse)
c.Bind(proto.CmdPrivMsg, onPrivMsg)
}
示例3: Init
// Init initializes the plugin. it loads configuration data and binds
// commands and protocol handlers.
func Init(profile string, c *proto.Client) {
log.Println("Initializing: url")
ini := ini.New()
err := ini.Load(plugin.ConfigPath(profile, "url"))
if err != nil {
log.Fatal(err)
}
s := ini.Section("exclude")
list := s.List("url")
exclude = make([]*regexp.Regexp, len(list))
for i := range list {
exclude[i], err = regexp.Compile(list[i])
if err != nil {
log.Fatalf("- Invalid pattern: %s", list[i])
}
}
c.Bind(proto.CmdPrivMsg, parseURL)
}