TeamSpeak3 Plugin API

Build Status

The documentation can be found on GitHub-Pages.

Even if this library is already used in some projects, it should not be considered stable and breaking changes will happen.

At the moment, not all methods that are exposed by the TeamSpeak API are available for plugins. If a method that you need is missing please file an issue or open a pull request.

Usage

Add the following to your Cargo.toml: ``` [lib] name = "" crate-type = ["cdylib"]

[dependencies] lazy_static = "0.2" ts3plugin = "0.1" ```

This code can be used to make your library a TeamSpeak plugin: ```rust,no-run

[macro_use]

extern crate ts3plugin;

[macro_use]

extern crate lazy_static;

use ts3plugin::*;

struct MyTsPlugin;

impl Plugin for MyTsPlugin { fn new(api: &mut TsApi) -> Result, InitError> { api.logorprint("Inited", "MyTsPlugin", LogLevel::Info); Ok(Box::new(MyTsPlugin)) // Or return Err(InitError::Failure) on failure }

// Implement callbacks here

fn shutdown(&mut self, api: &mut TsApi) {
    api.log_or_print("Shutdown", "MyTsPlugin", LogLevel::Info);
}

}

create_plugin!( "My Ts Plugin", "0.1.0", "My name", "A wonderful tiny example plugin", ConfigureOffer::No, false, MyTsPlugin); ```

Projects using this library

License

Licensed under either of

at your option.

Template code that is needed to run the rust code in this file as a test:

rust,skeptic-template {} fn main(){{}}