Bump everything
This commit is contained in:
parent
c109783e2d
commit
bf57e842ae
1017
Cargo.lock
generated
1017
Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
|
@ -10,11 +10,12 @@ edition = "2021"
|
||||||
tracing = "0.1"
|
tracing = "0.1"
|
||||||
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
||||||
futures = "0.3"
|
futures = "0.3"
|
||||||
|
jid = { version = "0.10", features = ["serde"]}
|
||||||
tokio = { version = "1", features = ["full"] }
|
tokio = { version = "1", features = ["full"] }
|
||||||
serde = { version = "1", features = ["derive"] }
|
serde = { version = "1", features = ["derive"] }
|
||||||
serde_json = "1"
|
serde_json = "1"
|
||||||
tokio-xmpp = "3"
|
tokio-xmpp = "3"
|
||||||
xmpp-parsers = "0.19"
|
xmpp-parsers = "0.20"
|
||||||
axum = "0.6"
|
axum = "0.7"
|
||||||
systemd = "0.10"
|
systemd = "0.10"
|
||||||
askama = "0.11"
|
askama = "0.12"
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
use std::str::FromStr;
|
use std::str::FromStr;
|
||||||
use std::convert::TryFrom;
|
use std::convert::TryFrom;
|
||||||
use futures::{SinkExt, StreamExt};
|
use futures::{SinkExt, StreamExt};
|
||||||
|
use jid::{BareJid, FullJid, Jid};
|
||||||
use tokio::sync::mpsc;
|
use tokio::sync::mpsc;
|
||||||
use tokio_xmpp::{AsyncClient, Packet, Event};
|
use tokio_xmpp::{AsyncClient, Element, Event, Packet};
|
||||||
use xmpp_parsers::{Jid, BareJid, FullJid, Element};
|
|
||||||
use xmpp_parsers::message::{Body, Message, MessageType};
|
use xmpp_parsers::message::{Body, Message, MessageType};
|
||||||
use xmpp_parsers::presence::{Presence, Show as PresenceShow, Type as PresenceType};
|
use xmpp_parsers::presence::{Presence, Show as PresenceShow, Type as PresenceType};
|
||||||
use xmpp_parsers::muc::Muc;
|
use xmpp_parsers::muc::Muc;
|
||||||
|
@ -21,18 +21,18 @@ impl Handle {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn run(jid: String, password: String, muc_jid: String) -> Handle {
|
pub async fn run(jid: FullJid, password: String, muc_jid: String) -> Handle {
|
||||||
let muc_jid: FullJid = match FullJid::from_str(&muc_jid) {
|
let muc_jid: FullJid = match FullJid::from_str(&muc_jid) {
|
||||||
Ok(jid) => jid,
|
Ok(jid) => jid,
|
||||||
Err(err) => panic!("MUC Jid invalid: {err:?}"),
|
Err(err) => panic!("MUC Jid invalid: {err:?}"),
|
||||||
};
|
};
|
||||||
let (tx, mut rx) = mpsc::channel(1);
|
let (tx, mut rx) = mpsc::channel(1);
|
||||||
let handle = Handle {
|
let handle = Handle {
|
||||||
room_jid: muc_jid.clone().into(),
|
room_jid: muc_jid.clone().into_bare(),
|
||||||
tx: tx.clone(),
|
tx: tx.clone(),
|
||||||
};
|
};
|
||||||
|
|
||||||
let mut client = AsyncClient::new(&jid, &password).unwrap();
|
let mut client = AsyncClient::new(jid.clone(), &password);
|
||||||
loop {
|
loop {
|
||||||
match client.next().await {
|
match client.next().await {
|
||||||
Some(Event::Online { .. }) => {
|
Some(Event::Online { .. }) => {
|
||||||
|
|
|
@ -7,6 +7,7 @@ use axum::{
|
||||||
response::{IntoResponse, Response},
|
response::{IntoResponse, Response},
|
||||||
Json, Router,
|
Json, Router,
|
||||||
};
|
};
|
||||||
|
use jid::FullJid;
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
|
|
||||||
mod jabber;
|
mod jabber;
|
||||||
|
@ -76,7 +77,7 @@ async fn apprise_ok(
|
||||||
#[derive(Deserialize)]
|
#[derive(Deserialize)]
|
||||||
struct Config {
|
struct Config {
|
||||||
listen_port: u16,
|
listen_port: u16,
|
||||||
jid: String,
|
jid: FullJid,
|
||||||
password: String,
|
password: String,
|
||||||
muc: String,
|
muc: String,
|
||||||
}
|
}
|
||||||
|
@ -103,8 +104,9 @@ async fn main() {
|
||||||
|
|
||||||
let addr = SocketAddr::from(([127, 0, 0, 1], config.listen_port));
|
let addr = SocketAddr::from(([127, 0, 0, 1], config.listen_port));
|
||||||
tracing::debug!("listening on {}", addr);
|
tracing::debug!("listening on {}", addr);
|
||||||
let server = axum::Server::bind(&addr)
|
let listener = tokio::net::TcpListener::bind(&addr).await
|
||||||
.serve(app.into_make_service());
|
.unwrap();
|
||||||
|
let server = axum::serve(listener, app);
|
||||||
systemd::daemon::notify(false, [(systemd::daemon::STATE_READY, "1")].iter())
|
systemd::daemon::notify(false, [(systemd::daemon::STATE_READY, "1")].iter())
|
||||||
.unwrap();
|
.unwrap();
|
||||||
server.await
|
server.await
|
||||||
|
|
Loading…
Reference in New Issue
Block a user