Commit Graph

287 Commits

Author SHA1 Message Date
Chris Rhodes 6fc99107e6 Return the list element and the remover from the internal handlerSet/commandList methods.
This makes the remove method useful. Before it was only useful inside the Remove closures.
2013-02-17 22:02:02 -08:00
Chris Rhodes c86a9a257d Sigh 2013-02-17 19:12:43 -08:00
Chris Rhodes f792080a07 Don't commit my client.go 2013-02-17 19:10:38 -08:00
Chris Rhodes 99fe1b3624 Fix Readme 2013-02-17 19:09:10 -08:00
Chris Rhodes a0f52c076f Merge remote-tracking branch 'fluffle/master' into commandmerge
Conflicts:
	client.go
	client/connection.go
	client/handlers.go
2013-02-17 19:07:44 -08:00
Chris Rhodes 930f29959b Merge remote-tracking branch 'fluffle/master' into commandmerge
Conflicts:
	README.md
	client.go
	client/connection.go
	client/connection_test.go
	client/dispatch.go
	client/dispatch_test.go
	client/handlers.go
	client/handlers_test.go
2013-02-17 19:03:23 -08:00
Chris Rhodes b01ec2cc08 Merge branch 'yt' of https://github.com/iopred/goirc into yt
Conflicts:
	client/dispatch.go
2013-02-17 18:47:26 -08:00
Chris Rhodes e4da830c55 Handlers/Commands now use the container/list.
Re introduced strip nick and strip prefix for SimpleCommands
Fixed tests.
2013-02-17 18:40:58 -08:00
Alex Bramley fe4fae0479 Update README and example client. 2013-02-18 01:53:17 +00:00
Alex Bramley fd6fc1269b SimpleClient shouldn't need to return an error. 2013-02-18 01:42:44 +00:00
Alex Bramley 8ed96e4294 Add Me() function for ease of use. 2013-02-18 01:38:04 +00:00
Alex Bramley 12bcc94eeb Add mutex for connect/disconnect locking. 2013-02-18 01:36:52 +00:00
Alex Bramley a323372a0b First steps towards client interface.
- Move all exported vars to Config struct;
- Plumbing for Config.Me etc;
- Constants and INIT/REGISTER handler from github.com/iopred;
2013-02-18 01:36:17 +00:00
Alex Bramley 39882dafd4 Minor rearrangements. 2013-02-17 23:55:39 +00:00
Chris Rhodes 8007846d51 Run commands as a goroutine 2013-02-17 10:15:10 -08:00
Chris Rhodes e8eba53828 Added more documentation, commands are a list now, not a set :) 2013-02-17 00:09:16 -08:00
Chris Rhodes 89c23a7787 Add support for complex regex commands.
Refactor commands so they are just handlers.
Add commands that listen for YouTube/Webpage mentions and print information (Video Info/Title).
Add simple command examples in client.go
TODO: Use a better data store for the commands, perhaps a linked list like handlers.
2013-02-16 23:50:42 -08:00
Chris Rhodes 18a149335b Add a listener for YouTube and URLs, and spit out the Video Name or Title back to the sourc. 2013-02-16 19:57:54 -08:00
Alex Bramley b1242aa351 Break out tweakable things into a Config struct. 2013-02-16 18:05:56 +00:00
Alex Bramley 45d7b3317f Remove state.StateTracker stutter, hide it in Conn. 2013-02-16 11:29:56 +00:00
Alex Bramley a88b866b63 Fix up README and example client. 2013-02-16 11:04:06 +00:00
Alex Bramley f27e56c8b0 Run gofmt, since it's clearly been a while. 2013-02-16 10:33:15 +00:00
Chris Rhodes ed85f957b5 Call init in connect so theres no special casing for tests. 2013-02-15 19:47:10 -08:00
Chris Rhodes 8e16f59b5f Use the internal event handling for initial pass/user/nick messages.
Added constants for internal and named events.
gofmt'ed all files and updated client.go/documentation.
2013-02-15 19:24:10 -08:00
Alex Bramley a674267128 Re-work Handlers for IRC events; add Commands. 2013-02-16 00:17:31 +00:00
Alex Bramley a038856094 Remove embedded logger from client package. 2013-02-16 00:15:23 +00:00
Alex Bramley ca46884c72 Remove embedded logger from state tracker. Hmmmm. 2013-01-23 22:33:01 +00:00
Alex Bee f4b53dfb24 Merge pull request #17 from StalkR/chanmodes
state: parse +r/+Z channel modes
2013-01-11 13:55:12 -08:00
StalkR 68005e1845 state: parse +r/+Z channel modes 2013-01-10 22:22:19 +01:00
Alex Bramley b39e4717af Allow renicking to be customised. (Closes #14) 2013-01-06 21:01:55 +00:00
Alex Bee a4028ee669 Merge pull request #16 from StalkR/bot
state: nick: support for Bot mode (+B)
2013-01-06 11:21:14 -08:00
Alex Bee e487b72e3c Merge pull request #15 from StalkR/chans
state: channel: add Nicks() and NicksStr() accessors for nicks on channe...
2013-01-06 11:15:06 -08:00
StalkR 2cc4e94acb state: nick: add Channels/ChannelsStr accessors to get channels a nick is on 2013-01-06 20:13:06 +01:00
StalkR 4962b26ca9 state: nick: support for Bot mode (+B) 2013-01-06 19:52:11 +01:00
StalkR eb92a84e96 state: channel: add Nicks() and NicksStr() accessors for nicks on channel 2013-01-06 19:29:53 +01:00
Alex Bramley aa021c7cac Fix due to logging api change change. 2012-09-25 23:42:37 +01:00
Alex Bramley c7809b90e4 Merge branch 'master' into go1 2012-09-25 22:39:20 +01:00
Alex Bramley 13855ff77b Fix due to logging api change. 2012-09-25 22:39:02 +01:00
Alex Bramley 64899b4919 Merge pull request #13 from cgtdk/patch-1
Pull two commits from cgtdk fixing embarassing errors in my README ;-)
2012-07-26 15:59:57 -07:00
Christoffer G. Thomsen 8adfd40223 Fixed another typo 2012-07-25 19:42:00 +03:00
Christoffer G. Thomsen f13e1ec7fe Inserted missing " 2012-07-25 19:36:47 +03:00
Alex Bramley c85f891c6b Bah, dsymonds moved gomock again. 2012-06-26 11:20:57 +01:00
Alex Bramley b98fabe44e Fix go1 time changes up. 2012-06-06 17:12:07 +01:00
Alex Bramley 9c67c42fa1 Merge branch 'release'
Conflicts:
	client/connection.go
	client/connection_test.go
2012-06-06 16:25:07 +01:00
Alex Bramley e3ba7b6b96 Fix up README. 2012-06-06 15:22:06 +01:00
Alex Bramley dbdc470c5c Fix os.EINVAL -> os.ErrInvalid change. 2012-05-14 22:51:01 +01:00
Alex Bramley cb5001bb27 Rate limit testing was not testing properly. Needed abs() and some fixes for time changes. 2012-02-04 23:34:09 +00:00
Alex Bramley a78aed7e7c Functions are not comparable any more, so only compare event names. 2012-02-04 23:32:39 +00:00
Alex Bramley 6fd04236fb "Fix" testing of ratelimiting code. 2012-02-04 01:32:48 +00:00
Alex Bramley eb87e56f96 Mock net.Conn needs updating for interface changes. 2012-02-04 01:16:19 +00:00