Commit graph

231 commits

Author SHA1 Message Date
Bruce Marriner
edc09778a7 Linting. 2016-01-28 08:36:09 -06:00
Bruce Marriner
546cd85303 error strings should not end with punctuation. 2016-01-27 23:38:38 -06:00
Bruce Marriner
6bb417af7a Removed unreachable (and unneeded) code x3! 2016-01-27 23:37:46 -06:00
Bruce Marriner
5ae93327e3 Removed unreachable (and unneeded) code. 2016-01-27 23:36:34 -06:00
Bruce Marriner
457d27b35e Removed unreachable (and unneeded) code. 2016-01-27 23:35:42 -06:00
Chris Rhodes
fd32614a63 Make compression optional, clean up some comments and unused fields. 2016-01-24 09:49:41 -08:00
Chris Rhodes
5a3740df0c 💩 2016-01-23 21:12:57 -08:00
Chris Rhodes
a08dde4262 Support zlib compression. 2016-01-23 21:09:30 -08:00
Chris Rhodes
25a1b2ea48 Close. 2016-01-23 20:24:52 -08:00
Chris Rhodes
e94e14e9d2 Support ShouldReconnectOnError with exponential backoff up to 10 minutes. 2016-01-21 14:15:24 -08:00
Chris Rhodes
ddddfa3644 Prevent heartbeat from sending on nil websocket. 2016-01-21 11:15:44 -08:00
Chris Rhodes
d6d6c749ea Prevent listen from reading from nulled out web socket. 2016-01-21 11:11:18 -08:00
Chris Rhodes
8b39278c3e Get rid of Listen. 2016-01-21 10:58:13 -08:00
Chris Rhodes
e8d8f03214 Clean up ready timing, fix potential race with starting heartbeats. 2016-01-21 09:33:05 -08:00
Chris Rhodes
c4869d7a43 Remove handshake. 2016-01-21 09:19:20 -08:00
Chris Rhodes
2a9538e9f1 I must stop doing last minute changes. 2016-01-20 23:01:20 -08:00
Chris Rhodes
7a9b9428ee Re-add old todo. 2016-01-20 22:52:42 -08:00
Chris Rhodes
cd55a59ff9 Refactor open/close logic. Support OnConnect and OnDisconnect. 2016-01-20 22:47:34 -08:00
Chris Rhodes
6b73b588ba Message tracking. 2016-01-16 01:13:40 -08:00
Chris Rhodes
0f38b22ca1 Message state tracking. 2016-01-16 00:20:41 -08:00
Chris Rhodes
fce9a7dedc Make unmarshal methods not on the struct, that was stupid. 2016-01-11 17:39:25 -08:00
Chris Rhodes
3acc68d3ef Fix wsapi 2016-01-11 17:22:37 -08:00
Chris Rhodes
f15b389ac8 Return a consistent JSON Unmarshal error. 2016-01-11 16:37:17 -08:00
Bruce Marriner
6274ab9053 Hackish fix so we don't try to close nil or closed channels. 2016-01-11 14:05:22 -06:00
Bruce Marriner
093d3be770 More improvements to voice support 2016-01-10 18:01:05 -06:00
Bruce Marriner
9583ef4e19 Return immediately if err getting gateway. 2016-01-10 14:46:44 -06:00
Bruce Marriner
1b3817c7e1 First re-write of voice support. BREAKING CHANGE. 2016-01-09 20:56:30 -06:00
Chris Rhodes
5544372242 I think I got it right this time ;) 2016-01-08 11:28:44 -08:00
Chris Rhodes
f05f79e24d Fix subtle difference between events with state tracking and not, when the handler is null. 2016-01-08 10:39:24 -08:00
Chris Rhodes
764371c9ad 👌 2016-01-08 10:31:34 -08:00
Chris Rhodes
be8e0de5c6 Merge remote-tracking branch 'bwmarrin/develop' into stateperf 2016-01-08 10:26:19 -08:00
Chris Rhodes
c842676deb Don't unmarshall if it won't be used. 2016-01-08 10:24:29 -08:00
Chris Rhodes
0d7b6f7e76 Convert structs and api to use pointers. 2016-01-08 09:37:34 -08:00
Bruce Marriner
d998b1fac2 Normalize name capitalization 2016-01-07 14:15:03 -06:00
Bruce Marriner
301fb980d3 Updated copyright year, cleaned up some comments. 2016-01-07 13:50:44 -06:00
Bruce Marriner
a3ac679d76 Merge branch 'develop' of https://github.com/bwmarrin/Discordgo into develop 2016-01-04 13:14:33 -06:00
Bruce Marriner
1a5c4b7b0d Moved session close func to discord.go 2016-01-04 13:14:17 -06:00
Bruce Marriner
b329c935ac Added check to prevent data websocket Listen func from running more than one instance. 2016-01-04 13:06:09 -06:00
Bruce Marriner
666cbeb6a6 Data websocket Heartbeat now uses a chan instead of bool to track state 2016-01-04 12:49:46 -06:00
Chris Rhodes
cd01a34cdb Handle GUILD_EMOJI_UPDATE and track Emoji in state. 2016-01-03 11:56:46 -08:00
Bruce Marriner
ed1076361e Changed the order of the heartbeat lock to be a little better. 2016-01-02 22:34:54 -06:00
Bruce Marriner
825144012d Prevent data websocket heartbeat from running more than once, closes #43 2016-01-02 22:32:02 -06:00
Chris Rhodes
66052d0a9c Rename methods. 2016-01-02 13:09:20 -08:00
Chris Rhodes
9ba6d5b7c1 Make state tracking optional. 2016-01-02 12:01:03 -08:00
Chris Rhodes
b2ef55ae9c Cleanup before mailing. 2016-01-01 22:56:32 -08:00
Chris Rhodes
4e23e5fc35 Implement state tracking.
Currently maintains a list of Guilds (Members/Channels) and PrivateChannels.
2016-01-01 22:47:19 -08:00
Chris Rhodes
3aaa95d4f9 Tiny cleanup 👌 2015-12-31 12:46:35 -08:00
Chris Rhodes
0e9b8b8714 Small cleanup for initial error handling. 2015-12-31 12:44:02 -08:00
Chris Rhodes
03379f7128 Fix OnReady. 2015-12-31 12:40:36 -08:00
Chris Rhodes
f1fc2f0996 Add GuildBan handling in wsapi. Closes #24.
Also refactor event handling so error logging is unified.
2015-12-31 12:33:46 -08:00
Bruce
5c64020544 Merge pull request #37 from iopred/updatestatus
Make update status a little more idiomatic.
2015-12-29 12:58:48 -06:00
Bruce Marriner
6991af8500 Added support for USER_SETTINGS_UPDATE websocket event, closes #11 2015-12-29 12:45:30 -06:00
Chris Rhodes
b5bfa454d0 Do not send game if one is not provided (instead of not sending game.name) 2015-12-29 10:35:00 -08:00
Chris Rhodes
974d5862a4 Make update status a little more idiomatic.
This also reduces the line count a smidge.
2015-12-28 19:05:42 -08:00
Bruce Marriner
bb4f63775e Updated to support new Discord method of sending game playing data, closes #34 2015-12-23 23:51:20 -06:00
Bruce Marriner
0360acbaa0 Added support for USER_UPDATE websocket event, closes #28 2015-12-21 11:24:48 -06:00
Bruce Marriner
a878a5d306 Added comments 2015-12-20 00:12:40 -06:00
Bruce Marriner
332141b083 Updated VoiceChannelJoin func to use struct for data sent over websocket. Also returns an error now. 2015-12-18 20:51:48 -06:00
Bruce Marriner
d59d47967c Converted to using structs for data websocket handshake. Also using VERSION variable in $browser setting 2015-12-18 15:09:34 -06:00
Bruce Marriner
383b4645da Finished support for sending presense/game status updates. Closes #18 2015-12-18 13:44:56 -06:00
Bruce Marriner
f402265fd7 OnReady event will be handled if no callback is set by user. README updated. 2015-12-06 19:05:13 -06:00
Bruce Marriner
5c2e3c6866 Added DataReady to data websocket 2015-11-25 19:30:58 -06:00
Bruce Marriner
e384d2d66f Few notes, also, send 1st data websocket heartbeat immediately. 2015-11-25 08:47:15 -06:00
Bruce Marriner
87f433e2d8 VOICE_STATE_UPDATE should not fall though to Default right now. 2015-11-24 13:42:03 -06:00
Bruce Marriner
35e3966b91 Reworded top comment 2015-11-23 10:16:23 -06:00
Bruce Marriner
abe55ecca7 Some improvements to comments. 2015-11-23 09:45:40 -06:00
Bruce Marriner
3e605c64a6 Moving all structs to structs.go for now. 2015-11-22 14:21:41 -06:00
Bruce Marriner
d9aeb4926d Experimental voice code added :) 2015-11-18 08:18:46 -06:00
Bruce Marriner
f655167761 Several updates to make library more idiomatic Go 2015-11-16 21:39:39 -06:00
Bruce Marriner
91207ece15 Large additions to REST API and Websocket API. 2015-11-16 13:05:56 -06:00
Bruce Marriner
a3903aaa50 Fixes to GuildRole events 2015-11-14 21:23:01 -06:00
Bruce Marriner
05ff822438 Stop trying to fight Discord's Int's as Strings and just use strings. 2015-11-14 21:02:35 -06:00
Bruce Marriner
3794c1a31e Added Guild Role Update handler 2015-11-13 19:38:35 -06:00
Bruce Marriner
f885ce38d2 Added support for GUILD_UPDATE event 2015-11-13 09:48:56 -06:00
Bruce Marriner
3d9e980619 Several bug fixes causing json unmarshal errors. 2015-11-13 09:36:11 -06:00
Bruce Marriner
074d1bcdae Huge update to Websocket support.
Changed "Server" to "Guild" to remain consistant with Discords
API naming.
2015-11-12 23:25:48 -06:00
Bruce Marriner
e8b77083df Inital implementation for callback funcs handling Websocket events 2015-11-12 09:59:37 -06:00
Bruce Marriner
2c3ca777f9 Clean up, notes 2015-11-09 14:22:36 -06:00
Bruce Marriner
fff4fa20e9 Clean up 2015-11-08 21:57:49 -06:00
Bruce Marriner
e6789fde74 Inital add of Websockets 2015-11-08 21:42:16 -06:00
Bruce Marriner
adac11495a Inital addition of Websocket handling. Lots of moving things around. 2015-11-08 19:26:46 -06:00