Struct tox::core::Tox [-]  [+] [src]

pub struct Tox {
    pub events: Receiver<Event>,
    // some fields omitted
}

The main tox struct. All the control goes here.

Fields

events

Methods

impl Tox

fn get_address(&self) -> Address

Get self address

fn add_friend(&self, address: Box<Address>, msg: String) -> Result<i32, Faerr>

Add a friend and send friend request

fn add_friend_norequest(&self, client_id: Box<ClientId>) -> Result<i32, ()>

Add a friend without sending friend request. Beware, friend will appear online only if he added you too

fn get_friend_number(&self, client_id: Box<ClientId>) -> Result<i32, ()>

Get friend number associated with given ClientId

fn get_client_id(&self, friendnumber: i32) -> Result<Box<ClientId>, ()>

Get ClientId of the friend with given friend number

fn del_friend(&self, friendnumber: i32) -> Result<(), ()>

Remove the friend with given friend number

fn get_friend_connection_status(&self, friendnumber: i32) -> Result<ConnectionStatus, ()>

Get the connection status of the friend

fn friend_exists(&self, friendnumber: i32) -> bool

Returns true if friend with given friend number exists. Otherwise, returns false

fn send_message(&self, friendnumber: i32, msg: String) -> Result<u32, ()>

Send a message to the friend

fn send_action(&self, friendnumber: i32, action: String) -> Result<u32, ()>

Send an action message to the friend

fn set_name(&self, name: String) -> Result<(), ()>

Set self nickname

fn get_self_name(&self) -> Result<String, ()>

Returns the self nickname

fn get_name(&self, friendnumber: i32) -> Result<String, ()>

Get the nickname of the friend

fn set_status_message(&self, status: String) -> Result<(), ()>

Set self status message

fn set_user_status(&self, userstatus: UserStatus) -> Result<(), ()>

Set self status (None, Away or Busy)

fn get_status_message(&self, friendnumber: i32) -> Result<String, ()>

Get the status message of the friend

fn get_self_status_message(&self) -> Result<String, ()>

Get self status message

fn get_user_status(&self, friendnumber: i32) -> Result<UserStatus, ()>

Get status of the friend

fn get_self_user_status(&self) -> Result<UserStatus, ()>

Get self status

fn get_last_online(&self, friendnumber: i32) -> Result<u64, ()>

Return timestamp of last time the friend was seen online, or 0 if never seen

fn set_user_is_typing(&self, friendnumber: i32, is_typing: bool) -> Result<(), ()>

Set typing status for the given friend.You are responsible for turning it on or off

fn get_is_typing(&self, friendnumber: i32) -> bool

Get typing status of the given friend

fn count_friendlist(&self) -> u32

Returns the number of friends

fn count_chatlist(&self) -> u32

Returns the number of chats

fn get_num_online_friends(&self) -> u32

Get the number of online friends

fn get_friendlist(&self) -> Vec<i32>

Get the Vec of valid friend IDs

fn get_nospam(&self) -> [u8, ..4]

Get self nospam

fn set_nospam(&self, nospam: [u8, ..4])

Set self nospam

fn add_groupchat(&self) -> Result<i32, ()>

Create a new groupchat, returns groupchat number

fn del_groupchat(&self, groupnumber: i32) -> Result<(), ()>

Leave the groupchat

fn group_peername(&self, groupnumber: i32, peernumber: i32) -> Result<String, ()>

Returns the name of peer with given peer number in the groupchat

fn invite_friend(&self, friendnumber: i32, groupnumber: i32) -> Result<(), ()>

Invite the friend to the groupchat

fn join_groupchat(&self, friendnumber: i32, data: Vec<u8>) -> Result<i32, ()>

Join a groupchat using data obtained by GroupInvite event

fn group_message_send(&self, groupnumber: i32, message: String) -> Result<(), ()>

Send a message to the groupchat

fn group_action_send(&self, groupnumber: i32, action: String) -> Result<(), ()>

Send an action message to the groupchat

fn group_number_peers(&self, groupnumber: i32) -> Result<i32, ()>

Returns number of peers in the groupchat

fn group_get_names(&self, groupnumber: i32) -> Result<Vec<Option<String>>, ()>

Returns list of all peer names in the groupchat

fn get_chatlist(&self) -> Vec<i32>

Returns the Vec of all valid group IDs

fn set_avatar(&self, format: AvatarFormat, data: Vec<u8>) -> Result<(), ()>

fn unset_avatar(&self)

fn get_self_avatar(&self) -> Result<(AvatarFormat, Vec<u8>, Hash), ()>

fn request_avatar_info(&self, friendnumber: i32) -> Result<(), ()>

fn send_avatar_info(&self, friendnumber: i32) -> Result<(), ()>

fn request_avatar_data(&self, friendnumber: i32) -> Result<(), ()>

fn new_file_sender(&self, friendnumber: i32, filesize: u64, filename: Path) -> Result<i32, ()>

fn file_send_control(&self, friendnumber: i32, send_receive: TransferType, filenumber: u8, message_id: u8, data: Vec<u8>) -> Result<(), ()>

fn file_send_data(&self, friendnumber: i32, filenumber: u8, data: Vec<u8>) -> Result<(), ()>

fn file_data_size(&self, friendnumber: i32) -> Result<i32, ()>

fn file_data_remaining(&self, friendnumber: i32, filenumber: u8, send_receive: TransferType) -> Result<u64, ()>

fn bootstrap_from_address(&self, address: String, port: u16, public_key: Box<ClientId>) -> Result<(), ()>

Bootstrap from the given (address, port, ClientId)

fn is_connected(&self) -> bool

Returns true if connected to DHT. Otherwise, returns false

fn new(opts: ToxOptions) -> Option<Tox>

Create a new tox instance

fn save(&self) -> Vec<u8>

Returns a tox data that should be saved in the tox file

fn load(&self, data: Vec<u8>) -> Result<(), ()>

Load instance data from Vec

fn events(&self) -> &Receiver<Event>

Return an events receiver

unsafe fn raw(&self) -> *mut Tox

fn av(&self, max_calls: i32) -> Option<Av>