support arbitrary SASL mechanisms
This commit is contained in:
parent
2722e1ebf3
commit
26d2710c1f
4 changed files with 41 additions and 14 deletions
|
|
@ -4,15 +4,17 @@ use xmpp::jid::Jid;
|
|||
use xmpp::client::ClientBuilder;
|
||||
use xmpp::plugins::messaging::{MessagingPlugin, MessageEvent};
|
||||
use xmpp::plugins::presence::{PresencePlugin, Show};
|
||||
use xmpp::sasl::mechanisms::Plain;
|
||||
|
||||
use std::env;
|
||||
|
||||
fn main() {
|
||||
let jid: Jid = env::var("JID").unwrap().parse().unwrap();
|
||||
let mut client = ClientBuilder::new(jid).connect().unwrap();
|
||||
let mut client = ClientBuilder::new(jid.clone()).connect().unwrap();
|
||||
client.register_plugin(MessagingPlugin::new());
|
||||
client.register_plugin(PresencePlugin::new());
|
||||
client.connect_plain(&env::var("PASS").unwrap()).unwrap();
|
||||
let pass = env::var("PASS").unwrap();
|
||||
client.connect(&mut Plain::new(jid.node.clone().expect("JID requires a node"), pass)).unwrap();
|
||||
client.plugin::<PresencePlugin>().set_presence(Show::Available, None).unwrap();
|
||||
loop {
|
||||
let event = client.next_event().unwrap();
|
||||
|
|
|
|||
Loading…
Reference in a new issue