ye
This commit is contained in:
parent
905cee629e
commit
4fa78181c7
1 changed files with 4 additions and 2 deletions
|
@ -57,14 +57,15 @@ pub async fn websocket(stream: WebSocket, state: Arc<AppState>, who: SocketAddr)
|
||||||
|
|
||||||
let _greeting = sender.send(Message::Text(greeting(&state))).await;
|
let _greeting = sender.send(Message::Text(greeting(&state))).await;
|
||||||
|
|
||||||
// subscribe to channel
|
// subscribe to broadcast channel
|
||||||
let mut rx = state.tx.subscribe();
|
let mut rx = state.tx.subscribe();
|
||||||
|
|
||||||
// broadcast join
|
// ANNOUNCE THY PRESENCE
|
||||||
let msg = format!("{who} is here, bitches!");
|
let msg = format!("{who} is here, bitches!");
|
||||||
tracing::debug!("{msg}");
|
tracing::debug!("{msg}");
|
||||||
let _ = state.tx.send(msg);
|
let _ = state.tx.send(msg);
|
||||||
|
|
||||||
|
// handle broadcasting further awesome messages
|
||||||
let mut send_task = tokio::spawn(async move {
|
let mut send_task = tokio::spawn(async move {
|
||||||
while let Ok(msg) = rx.recv().await {
|
while let Ok(msg) = rx.recv().await {
|
||||||
if sender.send(Message::Text(msg)).await.is_err() {
|
if sender.send(Message::Text(msg)).await.is_err() {
|
||||||
|
@ -77,6 +78,7 @@ pub async fn websocket(stream: WebSocket, state: Arc<AppState>, who: SocketAddr)
|
||||||
let tx = state.tx.clone();
|
let tx = state.tx.clone();
|
||||||
let name = who.clone();
|
let name = who.clone();
|
||||||
|
|
||||||
|
// handle new incoming messages
|
||||||
let mut recv_task = tokio::spawn(async move {
|
let mut recv_task = tokio::spawn(async move {
|
||||||
while let Some(Ok(message)) = receiver.next().await {
|
while let Some(Ok(message)) = receiver.next().await {
|
||||||
match message {
|
match message {
|
||||||
|
|
Loading…
Add table
Reference in a new issue