jaoafa / VCSpeaker.kt

🔊 Text channel, now with voice
https://jaoafa.github.io/VCSpeaker.kt/
Eclipse Public License 2.0
3 stars 1 forks source link

VCSpeakerそのものが退出する順番とチャットの順番が違う #36

Open book000 opened 11 months ago

book000 commented 11 months ago

本来「最後の人が退出する」→「VCSpeakerが退出する」なのに、チャットでは逆になっているように見えます。

Screenshot_20231020-180404

yuuahp commented 11 months ago

https://github.com/jaoafa/VCSpeaker.kt/blob/95ebc821c0784dd2718f288afa93561b9dc8865d/src/main/kotlin/com/jaoafa/vcspeaker/events/VoiceLeaveEvent.kt#L51 ここかも 私も前から気になってたけど何で直さなかったんだろ…

book000 commented 10 months ago

guild.announce の下にくれば退出メッセージは入れ替わりそうねえ

yuuahp commented 10 months ago

https://github.com/jaoafa/VCSpeaker.kt/blob/95ebc821c0784dd2718f288afa93561b9dc8865d/src/main/kotlin/com/jaoafa/vcspeaker/events/VoiceLeaveEvent.kt#L51

ここかも 私も前から気になってたけど何で直さなかったんだろ…

思い出した 入退出処理を先に終わらせないとタイミングがずれるからだわ

yuuahp commented 10 months ago

ちょっと読み上げ処理見直すので時間ください

book000 commented 10 months ago

タイミングがズレるってなんだ…まあこの問題は細かいところなので、大きな機能拡充とか安定化とかをしたほうが良いかも。

yuuahp commented 10 months ago

今、 VCSpeaker 参加・退出・移動 -> 読み上げ・送信 (ユーザー参加通知) の順で処理してるので、 退出の時は変わらないけど、参加の場合、これを入れ替えると Narrator が生成されない (まだ VC に参加していない) まま読み上げ処理に移るから、結局読み上げられないことになる。 移動の場合は「yuua が ???? に参加しました」が「uua が ???? に参加しました」みたいな感じでずれる (多分 y が新しいチャンネルに移動する前に読まれてる)

book000 commented 10 months ago

ああなるほどね… 数ミリ秒遅延させたらとか思ったけど、設計直しで解決するならその方がいいねえ