Async client for the Kite Connect WebSocket API
1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone)]
4///
5/// Postbacks and non-binary message types
6///
7pub(crate) enum TextMessageType {
8 /// Order postback
9 Order,
10 /// Error response
11 Error,
12 /// Messages and alerts from the broker
13 Message,
14}
15
16impl From<String> for TextMessageType {
17 fn from(value: String) -> Self {
18 match value.as_str() {
19 "order" => Self::Order,
20 "error" => Self::Error,
21 _ => Self::Message,
22 }
23 }
24}
25
26#[derive(Debug, Clone, Deserialize, Serialize)]
27///
28/// Postback and non-binary message structure
29///
30pub struct TextMessage {
31 #[serde(rename = "type")]
32 pub(crate) message_type: String,
33 pub(crate) data: serde_json::Value,
34}