feat(voice): add WebRTC voice channels with Cloudflare TURN support

Add voice channel functionality with WebRTC peer-to-peer audio:
- Add VoiceSignalingConsumer for WebRTC signaling and peer coordination
- Add GlobalConsumer for real-time presence and voice status updates
- Add voice channel type to Channel model with current_voice_channel tracking on UserProfile
- Add voice controls UI (mute, deafen, disconnect) in status panel
- Add voice member list display in sidebar with avatar support
- Add
This commit is contained in:
2026-05-23 20:56:37 +02:00
parent 963441fe50
commit 88bdfc797b
14 changed files with 773 additions and 11 deletions
+2
View File
@@ -4,4 +4,6 @@ from chat import consumers
websocket_urlpatterns = [
re_path(r'ws/channel/(?P<channel_id>\d+)/$', consumers.ChannelConsumer.as_asgi()),
re_path(r'ws/dm/(?P<username>[\w.@+-]+)/$', consumers.DMConsumer.as_asgi()),
re_path(r'ws/voice/(?P<channel_id>\d+)/$', consumers.VoiceSignalingConsumer.as_asgi()),
re_path(r'ws/global/$', consumers.GlobalConsumer.as_asgi()),
]