speech-dispatcher-rs/speech-dispatcher/examples/hello_world.rs

41 lines
1.3 KiB
Rust
Raw Normal View History

2018-01-12 17:28:39 +00:00
use speech_dispatcher::*;
use std::io;
2018-01-12 17:28:39 +00:00
fn main() -> Result<(), Box<dyn std::error::Error>> {
let connection = speech_dispatcher::Connection::open(
"hello_world",
"hello_world",
"hello_world",
Mode::Threaded,
)?;
2020-09-25 15:36:00 +00:00
connection.on_begin(Some(Box::new(|msg_id, client_id| {
println!("Beginning {} from {}", msg_id, client_id)
2020-09-25 15:36:00 +00:00
})));
connection.on_end(Some(Box::new(|msg_id, client_id| {
println!("Ending {} from {}", msg_id, client_id)
2020-09-25 15:36:00 +00:00
})));
connection.say(
Priority::Important,
format!(
"Hello, world at rate {} from client {}.",
connection.get_voice_rate(),
connection.client_id()
),
);
connection.set_voice_rate(100)?;
connection.say(Priority::Important, "This is faster.");
connection.set_voice_rate(0)?;
connection.set_spelling(true)?;
connection.say(Priority::Important, "This is spelled.");
connection.set_spelling(false)?;
connection.set_punctuation(Punctuation::All)?;
connection.say(
Priority::Important,
"This statement, unlike others, has punctuation that is spoken!",
);
connection.set_punctuation(Punctuation::None)?;
let mut _input = String::new();
io::stdin().read_line(&mut _input).unwrap();
Ok(())
2018-01-12 17:28:39 +00:00
}