nado-sdk 0.3.6

Official Rust SDK for the Nado Protocol API
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use crate::utils::time::timestamp;
use rand::Rng;

const DEFAULT_RECV_SECS: u64 = 90;

pub fn order_nonce(recv_time: Option<u64>) -> u64 {
    let recv_time = recv_time.unwrap_or(default_recv_time());
    let mut rng = rand::thread_rng();
    let random_int = rng.gen_range(0..1000000);

    (recv_time << 20) + random_int
}

pub fn default_recv_time() -> u64 {
    (timestamp() + DEFAULT_RECV_SECS) * 1000
}