Skip to content

odilia-app/ssip-client-async

Repository files navigation

Rust SSIP Client

license Crates.io Version

Speech Dispatcher SSIP client library in pure rust.

  • Unix socket.
  • TCP socket.
  • Stop, cancel, pause and resume.
  • List, set voices.
  • Set rate, pitch, volume.
  • Notifications.
  • Message history.
  • tokio support.
  • async-io support.
  • separate protocol driving mechanism in the ssip crate.

Feature Flags

  • default: none.
  • dbus: add support to send these types over DBus via the zbus crate.
  • serde: add support to serialize/deserialize the types with serde.
  • async-io: add support for the smol/async-io runtime. This does not pull in an entire runtime, it only adds generic async integration points.
  • tokio: add support for the tokio runtime. This will pull in the tokio runtime along with support for its tokio::io::Async* traits.
  • async-mio: add support for the low-level mio polling mechanism.

Example

use ssip_client_async::{FifoBuilder, ClientName};
let mut client = fifo::Builder::new().build()?;
client
    .set_client_name(ClientName::new("joe", "hello"))?
    .check_client_name_set()?;
let msg_id = client.speak()?.send_line("hello")?.receive_message_id()?;
client.quit()?;

See other examples in the repository.

License

This software is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.

About

A fork of the `ssip-client` crate that supports asyncronous IO.

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages