Comments (3)
I have to take a look into this before making a call, but I have grown quite a liking to minimalistic api's that can be used by helper functions, so if you throw up a PR that simply returns an error when this happens I won't mind merging that. Should allow for a future implementation that has a seamless move imo.
from disgord.
If we do have SendOpusFrame
return an error to notify the calling function that the bot has been moved, how should the calling function be expected to proceed? Call Close()
and disconnect the bot? What if the calling function wants to continue to play audio in the new channel? As in that case the calling function would need to find what channel it was moved to, Close()
, then re-connect to voice in that new channel and start sending opus frames again.
from disgord.
Also, maybe worth another ticket, but the same thing seems to happen when discord requests a reconnect:
time="2022-02-17T05:07:36Z" level=info msg="[ws-e,s:8487,shard:0]Discord requested a reconnect"
time="2022-02-17T05:07:36Z" level=debug msg="[ws-e,s:8488,shard:0]is reconnecting"
time="2022-02-17T05:07:36Z" level=debug msg="[ws-e,s:8489,shard:0]closing emitter"
time="2022-02-17T05:07:36Z" level=debug msg="[ws-e,s:8491,shard:0]stopping pulse"
time="2022-02-17T05:07:36Z" level=debug msg="[ws-e,s:8490,shard:0]closing operations handler"
time="2022-02-17T05:07:36Z" level=debug msg="[ws-e,s:8492,shard:0]closing receiver"
time="2022-02-17T05:07:36Z" level=info msg="[ws-e,s:8493,shard:0]disconnected"
time="2022-02-17T05:07:36Z" level=debug msg="[ws-e,s:8494,shard:0]trying to connect"
time="2022-02-17T05:07:36Z" level=debug msg="[shardSync]shard0is waiting to identify"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8495,shard:0]waiting to send identify/resume"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8496,shard:0]starting receiver"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8497,shard:0]starting emitter"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8498,shard:0]Ready to receive operation codes..."
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8499,shard:0]heartbeat ACK ok"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8500,shard:0]sent heartbeat"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8501,shard:0]sendHelloPacket is acquiring once channel"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8502,shard:0]writing to once channel0xc000455aa0"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8503,shard:0]finished writing to once channel0xc000455aa0"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8504,shard:0]sent identify/resume"
time="2022-02-17T05:07:37Z" level=debug msg="[shardSync]shard0waited and finished execution after123.116143ms"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-e,s:8505,shard:0]establishing connection succeeded"
time="2022-02-17T05:07:37Z" level=debug msg="[ws-v,s:23,shard:0]discord sent a 4014 websocket code and the bot will now disconnect"
After this, SendOpusFrame
will continue to run without returning errors
from disgord.
Related Issues (20)
- Heartbeat process causes disconnection for bots with large guild membership HOT 1
- Stickers not populated in incoming Message objects HOT 1
- [interfaces Coper & DeepCopier] Enforce sub structures to implement them HOT 2
- Guild.VoiceStates not kept up to date HOT 2
- testing HOT 1
- Add example to change channel name HOT 3
- No SetFlags method for Message Update Builder HOT 2
- No way to disconnect member from channel HOT 3
- Guild method MembersByName() - nil pointer only on production.
- VoiceState missing fields HOT 1
- Can`t get user input from interaction event: missing fields HOT 6
- How to get users in scheduled event? HOT 3
- CreateMessageFile for interactions HOT 2
- disgord.Time can not be used in a update request as there is represent a reset
- Dependency Dashboard
- Ability to add/edit files through Session.EditInteractionResponse() HOT 2
- `channel.SendMsg` doesn't send the `Components`
- VoiceChannel.Connect() timing out on some servers
- Project to be archived HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from disgord.