Jonas is my name
308d058bf1
Fix presence update after breaking API change ( #427 )
2017-08-17 06:55:02 -07:00
Necroforger
013faa1da4
Hardcoded reactions ratelimit ( #398 )
...
* add custom ratelimits
* check for nil ratelimiter
* Don't expose custom ratelimits to Session
* attempt to fix race conditions
* use defer instead
* Slightly improved ratelimiter
You shouldn't need to change the ratelimiters ratelimits while its
running so I removed the functions SetCustomRatelimit and
RemoveCustomRatelimit.
2017-07-29 07:53:02 -07:00
legolord208
7bb0965a6f
Updated to v6 ( fixes #408 ) ( #410 )
...
* Updated to v6
* Unified websocket and REST version
2017-07-22 06:17:39 -07:00
Erik McClure
71ede90b56
Fix #406 : reconnect() can be called while still connected ( #407 )
2017-07-18 18:21:45 -07:00
Erik McClure
bb4b96e26d
Add heartbeat ACK response and error handling ( #396 )
...
* Add heartbeat ACK response and error handling
- Error when sending a heartbeat now triggers a reconnection
- Op7 now triggers a reconnection
- Session now tracks the last heartbeat ACK that was recieved. If the
last ACK is more than FailedHeartbeatAcks*heartbeatinterval in the past,
this is treated as a dead connection and a reconnection is forced.
* Address @iopred comments
2017-06-27 20:52:59 -07:00
legolord208
aa3973f956
Made error constants ( Fixed #315 ) ( #377 )
2017-05-08 06:48:19 -07:00
Lukas
edd6e169fa
Track voice-channel movements ( #317 )
2017-02-11 22:18:19 -08:00
jonas747
b07d1c4621
Fix leaking tickers ( #314 )
2017-01-23 12:13:59 -08:00
jonas747
bdb31f245d
Fix all found race conditions, and dont send on nil channel ( #307 )
2017-01-10 20:01:47 -08:00
jonas747
2d50fc197f
Fix racey heartbeat sequence ( #303 )
...
* Fix racey heartbeat sequence
* Change all sequence fields to int64
2016-12-28 11:59:02 -08:00
Kristian Klausen
b377944b97
Switch to V5 gateway ( #300 )
...
This switch the gateway to V5, and change the heartbeat logic to
get the heartbeat_interval from the new Hello opcode instant of
READY/RESUME event.
See: https://github.com/hammerandchisel/discord-api-docs/issues/18
Fix : #220
2016-12-25 16:22:14 -08:00
Bruce Marriner
9e777a083b
Linting.
2016-12-11 12:45:34 -06:00
Chris Rhodes
36601253a4
Remove use of reflect.
...
This introduces gogenerate'ed EventHandlers from the files in events.go
This also adds support for AddHandlerOnce.
2016-12-03 23:31:07 -08:00
Chris Rhodes
c352d7016c
Clean up ordering of internal handlers. ( #285 )
2016-11-12 11:50:06 -08:00
Chris Rhodes
3e7c0435bc
Reduce severity of wsConn close error logging.
2016-11-05 00:16:15 -07:00
Chris Rhodes
c6ee0d2dd5
Clean up state access. ( #261 )
...
Clean up state access.
2016-09-27 22:45:12 -07:00
Chris Rhodes
b71136ac14
Merge pull request #259 from b1naryth1ef/bugfix/voice-state-update-api-usage
...
Remove API call in onVoiceStateUpdate
2016-09-27 22:35:56 -07:00
Chris Rhodes
2e2e02fc11
Support a very light state in all cases to support b1nzy's upcoming PR ( #260 )
...
Support a very light state in all cases to support b1nzy's upcoming PR
2016-09-27 22:09:44 -07:00
jonas747
1dcdf130fd
Fix Another typo
2016-09-28 07:00:11 +02:00
jonas747
1ecb7458e9
Fix typos
2016-09-28 06:31:39 +02:00
andrei
1edd3b6484
Remove API call in onVoiceStateUpdate
2016-09-27 17:39:14 -07:00
jonas747
9c7c9d3fd2
Added RequestGuildMembers to request guild members from the gateway
2016-09-25 21:29:59 +02:00
Bruce Marriner
bbce2612b0
simi-properly close websockets and simplify voice reconnect
2016-07-06 20:31:47 -05:00
Bruce Marriner
ad91025f59
Don't delete VoiceConnections
...
But, don't add a VoiceConnection either if we don't successfully
connect.
2016-07-05 20:51:52 -05:00
Bruce Marriner
fb663ac348
Linting
2016-06-17 15:44:01 -05:00
Bruce Marriner
11f11de41c
Protect writes to DataReady with mutex lock
2016-06-17 14:23:19 -05:00
Bruce Marriner
face6df4b6
Do not call session onEvent as goroutine
...
This is a stability improvement but may have a slight performance
impact. This change will be reviewed again later. Doing this solves a
data race issue with the Sequence number that must be tracked for
gateway resume and heartbeats. Event specific handlers are now called
as a goroutine though.
2016-06-17 12:24:32 -05:00
Bruce Marriner
e451cb36c3
Clear SessionID when reconnecting voice
...
Also added some more logging..
2016-06-17 10:24:15 -05:00
Bruce Marriner
9dc51d1c49
Only Shard when ShardCount > 1
...
Also cleaned up identify sending so there's now a function that handles
it instead of duplicate code. Renamed handshake* structs to identify*
structs to make naming match up.
2016-06-14 13:45:38 -05:00
Bruce Marriner
d03b3eedfa
Merge branch 'feature/sharding' of https://github.com/b1naryth1ef/discordgo into b1naryth1ef-feature/sharding
2016-06-14 11:45:59 -05:00
Bruce Marriner
c32de41481
Force Voice reconnect on gateway reconnects
...
Also did a bit of clean up.
2016-06-14 10:55:20 -05:00
andrei
835a23a89d
Implement guild sharding
2016-06-13 15:34:40 -07:00
Bruce Marriner
af201919a0
Move logging
2016-05-28 15:10:55 -05:00
Bruce Marriner
ff0a39b9b5
Clean up.
2016-05-28 14:32:22 -05:00
Bruce Marriner
754d64d339
Initial code to support voice reconnecting
...
Also includes some logging improvements and a small fix to track
speaking state and to send speaking packet if needed before sending
opus packets.
2016-05-26 19:35:17 -05:00
Bruce
942d3a8b66
Merge pull request #194 from iopred/status
...
Support streaming status updates.
2016-05-14 13:53:49 -05:00
Chris Rhodes
a8ecc78c34
Don't break the API.
2016-05-14 09:50:37 -07:00
Bruce Marriner
a00f64aa86
Don't stomp on VoiceConnection if exists already
...
This allows you to enable voice debugging prior to joining a voice
channel.
2016-05-12 19:23:38 -05:00
Chris Rhodes
80c2158605
Support streaming status updates.
2016-05-06 15:23:21 -07:00
Bruce Marriner
6a4b8bb287
Fixed it!
2016-05-01 19:55:57 -05:00
Bruce Marriner
cb9e30670f
no concurrent writes to voice ws, log cleanup
2016-05-01 19:54:28 -05:00
Bruce Marriner
5dc57e19c7
Display gateway url in error
2016-05-01 18:16:55 -05:00
Bruce Marriner
a9da8a5daf
Cleanup, Logging, Finished Resumed code.
2016-04-30 21:40:13 -05:00
Bruce Marriner
c65d5091ab
Fix resume bug! It's op not ip.
2016-04-30 20:29:27 -05:00
Bruce Marriner
9e8cd0a735
misc cleanup
2016-04-30 20:29:10 -05:00
Bruce Marriner
e9e9ef86b3
Prevent concurrent writes to gateway websocket.
2016-04-30 19:11:13 -05:00
Bruce Marriner
9bc6057ca7
partial support for gateway resume
2016-04-30 17:52:09 -05:00
Bruce Marriner
b09ed37294
reconenct with identify packet until resume is fixed.
2016-04-29 14:57:41 -05:00
Bruce Marriner
53a826dd0d
Send heartbeat in response to gateway Op 1 message
2016-04-28 22:30:42 -05:00
Bruce Marriner
d557bb24a5
Extra logging for non OP0 events, for now.
2016-04-28 21:50:57 -05:00