pub struct BinaryMessage {
pub version: u8,
pub payload_type: u8,
pub meta: Vec<u8>,
pub method_id: u64,
pub iv: Vec<u8>,
pub signature: Vec<u8>,
pub token: Vec<u8>,
pub payload: Vec<u8>,
pub public_key: Vec<u8>,
pub nonce: Vec<u8>,
pub public_key_signature: Vec<u8>,
}Expand description
Sends a binary message to the Volt websocket server. The websocket protocol is binary, and the message is a binary buffer that contains the following:
- 1 byte for the protocol version
- 2 bytes for the length of the JSON metadata (might be 0 if there is no metadata)
- N bytes for the JSON metadata
- 8 bytes for the method id
- 1 byte for the length of the iv
- N bytes for the iv
- 1 byte for the length of the token signature (might be 0 if there is no token)
- N bytes for the token signature
- 2 bytes for the length of the token payload (omit if there is no token)
- N bytes for the token payload
- 2 bytes for the length of the public key (might be 0 if there is no public key)
- N bytes for the public key
- N bytes for the binary payload
All multi-byte values are in big-endian byte order.
Fields§
§version: u8§payload_type: u8§meta: Vec<u8>§method_id: u64§iv: Vec<u8>§signature: Vec<u8>§token: Vec<u8>§payload: Vec<u8>§public_key: Vec<u8>§nonce: Vec<u8>§public_key_signature: Vec<u8>Implementations§
Source§impl BinaryMessage
impl BinaryMessage
pub fn new_key_exchange( method_id: u64, meta: Vec<u8>, signature: Vec<u8>, token: Vec<u8>, ) -> Self
pub fn new_payload( payload_type: &u8, method_id: u64, meta: Vec<u8>, iv: Vec<u8>, payload: Vec<u8>, ) -> Self
pub fn from_bytes(bytes: &[u8]) -> Self
pub fn to_bytes(&self) -> Vec<u8> ⓘ
Auto Trait Implementations§
impl Freeze for BinaryMessage
impl RefUnwindSafe for BinaryMessage
impl Send for BinaryMessage
impl Sync for BinaryMessage
impl Unpin for BinaryMessage
impl UnsafeUnpin for BinaryMessage
impl UnwindSafe for BinaryMessage
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more