Speech Dispatcher SSIP client library in pure rust.
The API is synchronous by default.
A non-blocking API can be used with a low-level polling mechanism based on poll
, or
with mio.
This fork also offers a working version using the tokio
flag, or an occasionally working async-std
flag.
- Unix socket.
- TCP socket.
- Stop, cancel, pause and resume.
- List, set voices.
- Set rate, pitch, volume.
- Notifications.
- Message history.
-
tokio
support. -
async-std
support.- If you're interested in helping us implement this, please reach out on Gituhb.
To use the synchronous API or an asynchronous API compatible with low-level crates based on poll
, use:
[dependencies]
ssip-client-async = "0.9"
For the tokio API, use:
[dependencies]
ssip-client = { version = "0.9", features = ["tokio"] }
use ssip_client::{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.
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.