rtdlib
is td for rust.
rtdlib
crate have td type (classes).
[dependencies]
rtdlib = "1.6.*"
The default, rtdlib
only have td
types, not have call tdjson dylib, if you want , you need add features
to your dependency.
[dependencies]
rtdlib = { version = "1.6.*", features = "sys" }
Since the rtdlib
version follows td, a version number less than 100 is reserved for td release.
Version mapping
rtdlib | td |
---|---|
0.* | master |
1.3.* | 1.3.* |
1.4.* | 1.4.* |
1.5.* | 1.5.* |
1.6.* | 1.6.* |
let json = r#"{"@type":"updateAuthorizationState","authorization_state":{"@type":"authorizationStateWaitTdlibParameters"}}"#;
let state: UpdateAuthorizationState = serde_json::from_str(&json[..]).expect("Json fail");
assert_eq!("updateAuthorizationState", state.td_name());
let rjson = state.to_json();
assert!(rjson.is_ok(), true);
assert_eq!(json, rjson.unwrap());
If you enable sys
features, you can use Tdlib
to call tdjson dylib.
use rtdlib::Tdlib;
let tdlib = Tdlib::new();
let request = r#"{"@type": "getMe"}"#;
tdlib.send(request);
More document you need check telegram api