rustybook-messenger 0.2.1

Messenger client for Rustybook
Documentation

Rustybook Messenger

the messenger transport layer for Rustybook

it provides

  • session bootstrap for messenger state
  • MQTT-based event streaming
  • typed message, typing, and presence events
  • text message sending

usage

use rustybook_messenger::{Event, MessengerClient};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = MessengerClient::builder()
        .cookies_file_path("cookies.json")
        .build()?;

    client.start_listening().await?;

    let mut events = client.subscribe();
    while let Ok(event) = events.recv().await {
        match event {
            Event::Message(message) => {
                println!("message from {}: {:?}", message.sender_id, message.text);
            }
            Event::Disconnect => break,
            _ => {}
        }
    }

    Ok(())
}