37 lines
789 B
Rust
37 lines
789 B
Rust
use serde::{Deserialize, Serialize};
|
|
use serde_json::Value;
|
|
use serde_repr::{Deserialize_repr, Serialize_repr};
|
|
|
|
#[derive(Debug, PartialEq, Serialize_repr, Deserialize_repr, Copy, Clone)]
|
|
#[repr(u8)]
|
|
pub enum CommandType {
|
|
MovePeer = 1,
|
|
TokenCreated = 2,
|
|
TokenDeleted = 3,
|
|
UserChanged = 4,
|
|
UserDeleted = 5,
|
|
}
|
|
|
|
#[derive(Serialize, Deserialize)]
|
|
pub struct Command {
|
|
pub cmd_type: CommandType,
|
|
pub message: Value,
|
|
}
|
|
|
|
#[derive(Serialize, Deserialize)]
|
|
pub struct MovePeerCommandReq {
|
|
pub from_id: String,
|
|
pub to_id: String,
|
|
pub peer_id: String,
|
|
pub new_ip: u32,
|
|
pub net_bit_len: u8,
|
|
pub user_id: u32,
|
|
}
|
|
|
|
#[derive(Serialize, Deserialize)]
|
|
pub struct CommandResp {
|
|
cmd_type: CommandType,
|
|
resp_code: i8,
|
|
resp_information: Value,
|
|
}
|