Gateway: Simplify return value of join/join_gateway (#157)
Replaces the annoying dual-return (i.e., created `Call` *and* `Result<x>`) with a single `Return<Call/ConnectionInfo>`. Users are now informed via that a `Call` is created -- thus, cleanup in event of connection failure is now their responsibility. Tested using `cargo make ready`. Closes #65.
This commit is contained in:
@@ -233,11 +233,9 @@ async fn join(ctx: &Context, msg: &Message) -> CommandResult {
|
||||
.expect("Songbird Voice client placed in at initialisation.")
|
||||
.clone();
|
||||
|
||||
let (handler_lock, success_reader) = manager.join(guild_id, connect_to).await;
|
||||
if let Ok(handler_lock) = manager.join(guild_id, connect_to).await {
|
||||
let call_lock_for_evt = Arc::downgrade(&handler_lock);
|
||||
|
||||
let call_lock_for_evt = Arc::downgrade(&handler_lock);
|
||||
|
||||
if let Ok(_reader) = success_reader {
|
||||
let mut handler = handler_lock.lock().await;
|
||||
check_msg(
|
||||
msg.channel_id
|
||||
|
||||
Reference in New Issue
Block a user