Struct Tdlib

Source
pub struct Tdlib { /* private fields */ }

Implementations§

Source§

impl Tdlib

Source

pub fn set_log_verbosity_level<'a>(level: i32) -> Result<(), &'a str>

Sets the verbosity level of the internal logging of TDLib.

By default the TDLib uses a log verbosity level of 5.

§Parameters

level New value of logging verbosity level. Value 0 corresponds to fatal errors, value 1 corresponds to errors, value 2 corresponds to warnings and debug warnings, value 3 corresponds to informational, value 4 corresponds to debug, value 5 corresponds to verbose debug, value greater than 5 and up to 1024 can be used to enable even more logging.

§Examples
use rtdlib_sys::Tdlib;
Tdlib::set_log_verbosity_level(3);
Source

pub fn set_log_max_file_size(size: i64)

Sets maximum size of the file to where the internal TDLib log is written before the file will be auto-rotated.

Unused if log is not written to a file. Defaults to 10 MB.

§Parameters

size Maximum size of the file to where the internal TDLib log is written before the file will be auto-rotated. Should be positive.

§Examples
use rtdlib_sys::Tdlib;
Tdlib::set_log_max_file_size(1024 * 1024);
Source

pub fn set_log_file_path(path: Option<&str>) -> bool

Sets the path to the file where the internal TDLib log will be written.

By default TDLib writes logs to stderr or an OS specific log. Use this method to write the log to a file instead.

§Parameters

path Maybe path to a file where the internal TDLib log will be written. Use None to switch back to the default logging behaviour.

§Examples
use rtdlib_sys::Tdlib;
Tdlib::set_log_file_path(Some("/var/log/tdlib/tdlib.log"));
Source

pub fn new() -> Self

Creates a new instance of TDLib.

§Examples
use rtdlib_sys::Tdlib;
let tdlib = Tdlib::new();
Source

pub fn send(&self, request: &str)

Sends request to the TDLib client.

May be called from any thread.

§Examples
use rtdlib_sys::Tdlib;
let tdlib = Tdlib::new();
let request = r#"{"@type": "getMe"}"#;
tdlib.send(request);
Source

pub fn execute(&self, request: &str) -> Option<String>

Synchronously executes TDLib request.

May be called from any thread. Only a few requests can be executed synchronously.

§Examples
use rtdlib_sys::Tdlib;
let tdlib = Tdlib::new();
let request = r#"{"@type": "getTextEntities", "text": "@telegram /test_command https://telegram.org telegram.me"}"#;
tdlib.execute(request);
Source

pub fn receive(&self, timeout: f64) -> Option<String>

Receives incoming updates and request responses from the TDLib client.

May be called from any thread, but shouldn’t be called simultaneously from two different threads.

§Examples
use rtdlib_sys::Tdlib;
let tdlib = Tdlib::new();
tdlib.receive(5.0);

Trait Implementations§

Source§

impl Debug for Tdlib

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Drop for Tdlib

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl Send for Tdlib

Source§

impl Sync for Tdlib

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.