viewpoint_cdp/protocol/network_websocket/
mod.rs

1//! Network domain WebSocket types.
2//!
3//! Types for WebSocket events in the Network domain.
4
5use serde::Deserialize;
6
7use super::network::{MonotonicTime, RequestId, RequestInitiator};
8
9/// Event: Network.webSocketCreated
10#[derive(Debug, Clone, Deserialize)]
11#[serde(rename_all = "camelCase")]
12pub struct WebSocketCreatedEvent {
13    /// Request identifier.
14    pub request_id: RequestId,
15    /// WebSocket request URL.
16    pub url: String,
17    /// Request initiator.
18    pub initiator: Option<RequestInitiator>,
19}
20
21/// Event: Network.webSocketClosed
22#[derive(Debug, Clone, Deserialize)]
23#[serde(rename_all = "camelCase")]
24pub struct WebSocketClosedEvent {
25    /// Request identifier.
26    pub request_id: RequestId,
27    /// Timestamp.
28    pub timestamp: MonotonicTime,
29}
30
31/// WebSocket message data.
32#[derive(Debug, Clone, Deserialize)]
33#[serde(rename_all = "camelCase")]
34pub struct WebSocketFrame {
35    /// WebSocket message opcode.
36    pub opcode: f64,
37    /// WebSocket message mask.
38    pub mask: bool,
39    /// WebSocket message payload data.
40    pub payload_data: String,
41}
42
43/// Event: Network.webSocketFrameSent
44#[derive(Debug, Clone, Deserialize)]
45#[serde(rename_all = "camelCase")]
46pub struct WebSocketFrameSentEvent {
47    /// Request identifier.
48    pub request_id: RequestId,
49    /// Timestamp.
50    pub timestamp: MonotonicTime,
51    /// WebSocket response data.
52    pub response: WebSocketFrame,
53}
54
55/// Event: Network.webSocketFrameReceived
56#[derive(Debug, Clone, Deserialize)]
57#[serde(rename_all = "camelCase")]
58pub struct WebSocketFrameReceivedEvent {
59    /// Request identifier.
60    pub request_id: RequestId,
61    /// Timestamp.
62    pub timestamp: MonotonicTime,
63    /// WebSocket response data.
64    pub response: WebSocketFrame,
65}
66
67/// Event: Network.webSocketFrameError
68#[derive(Debug, Clone, Deserialize)]
69#[serde(rename_all = "camelCase")]
70pub struct WebSocketFrameErrorEvent {
71    /// Request identifier.
72    pub request_id: RequestId,
73    /// Timestamp.
74    pub timestamp: MonotonicTime,
75    /// WebSocket error message.
76    pub error_message: String,
77}