You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Laurent Pelecq b3dd02603a
Fix send_char and rename error NoLine to TooFewLines
2 years ago
examples Dual synchronous and asynchronous API. 2 years ago
src Fix send_char and rename error NoLine to TooFewLines 2 years ago
tests Fix minor clippy warnings 2 years ago
.gitlab-ci.yml Test both synchronous and asynchronous API in pipeline 2 years ago
Cargo.toml Use log::debug in debug mode to trace communication with server 2 years ago
LICENSE-APACHE add readme and license 2 years ago
LICENSE-MIT add readme and license 2 years ago
README.md Dual synchronous and asynchronous API. 2 years ago

README.md

Rust SSIP Client

build status license Crates.io Version docs.rs

Speech Dispatcher SSIP client library in pure rust.

The API is synchronous by default. An asynchronous API based on Mio is available with a feature.

  • Unix socket.
  • TCP socket.
  • Stop, cancel, pause and resume.
  • List, set voices.
  • Set rate, pitch, volume.
  • Notifications.
  • Message history.

Getting Started

To use the synchronous API, use:

[dependencies]
ssip-client = "0.3"

For the asynchronous API, use:

[dependencies]
ssip-client = { version = "0.3", features = ["async-mio"] }

Example

use ssip_client::{FifoBuilder, ClientName};
let mut client = FifoBuilder::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.