5个不稳定版本
0.3.1 | 2023年3月28日 |
---|---|
0.3.0 | 2022年10月31日 |
0.2.0 | 2022年10月31日 |
0.1.1 | 2022年10月15日 |
0.1.0 | 2022年10月15日 |
#8 in #authenticate
每月21次下载
24KB
624 行
Freeswitch ESL Rust实现(进行中)
注意:不线程安全
extern crate freeswitch_esl_rs;
use std::net::{TcpStream};
use std::env;
use freeswitch_esl_rs::{Connection,Client,Event};
fn main() -> std::io::Result<()> {
let args: Vec<String> = env::args().collect();
let host = &args[1];
let event = &args[2];
// open stream
let mut stream = TcpStream::connect(host)?;
// open connection
let conn = Connection::new(&mut stream);
// create freeswitch esl client
let mut client = Client::new(conn);
// authenticate to freeswitch
client.auth("cloudpbx").expect("fails to authenticate");
// enable events
client.event(event).expect("fails enabling events");
loop {
// poll event
let event: Event = client.pull_event().unwrap();
println!("{:?}", event);
}
Ok(())
}
依赖项
~27KB