Skip to repository content

tenant.openagents/omega

No repository description is available.

OpenAgents Git authority 2026-07-28T04:25:56.655Z Public web read
NIP-34 coordinate30617:7649603503856e5148d571eac2766b288a8ff1e9e35d380337a1d2b0015b4f92:omega
MaintainersHidden in public view
References2 branches · 1 tag
Read-only clonegit clone https://openagents.com/git/tenant.openagents/omega.git
Browse files

websocket.rs

25 lines · 748 B · rust
1use std::pin::Pin;
2
3use anyhow::Result;
4use cloud_api_types::websocket_protocol::MessageToClient;
5use futures::Stream;
6use futures::channel::mpsc::UnboundedSender;
7use yawc::frame::{Frame, OpCode};
8
9#[cfg(not(target_family = "wasm"))]
10mod native;
11#[cfg(target_family = "wasm")]
12mod web;
13
14pub type MessageStream = Pin<Box<dyn Stream<Item = Result<MessageToClient>>>>;
15
16fn forward_frame(frame: Frame, message_tx: &UnboundedSender<Result<MessageToClient>>) -> bool {
17    match frame.opcode() {
18        OpCode::Binary => message_tx
19            .unbounded_send(MessageToClient::deserialize(frame.payload()))
20            .is_ok(),
21        OpCode::Close => false,
22        OpCode::Continuation | OpCode::Text | OpCode::Ping | OpCode::Pong => true,
23    }
24}
25
Served at tenant.openagents/omega Member data and write actions are omitted.