summarylogtreecommitdiffstats
path: root/0005-Update-xmpp-parsers-to-0.14.patch
blob: a7a8827fa18fe75a4789219d3758da4b7cc3abe2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
From 65a09a04365692bc703616f7b6ae7d1c6a243102 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Maxime=20=E2=80=9Cpep=E2=80=9D=20Buquet?= <pep@bouah.net>
Date: Fri, 6 Sep 2019 00:00:52 +0200
Subject: [PATCH 5/6] Update xmpp-parsers to 0.14
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
---
 Cargo.toml  |  2 +-
 src/xmpp.rs | 15 +++++++--------
 2 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/Cargo.toml b/Cargo.toml
index 5c72a9b..f64896f 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -14,6 +14,6 @@ pretty_env_logger = "0.3"
 serde_json = "1.0"
 tokio = "0.1"
 tokio-xmpp = "1"
-xmpp-parsers = "0.12"
+xmpp-parsers = "0.14"
 gitlab = "0.1104"
 clap = "2.32"
diff --git a/src/xmpp.rs b/src/xmpp.rs
index d6b8f66..b636074 100644
--- a/src/xmpp.rs
+++ b/src/xmpp.rs
@@ -2,19 +2,19 @@ use std::str::FromStr;
 use std::convert::TryFrom;
 use futures::{Future, Sink, Stream, sync::mpsc};
 use tokio_xmpp::{Client, Packet, Event};
-use xmpp_parsers::{Jid, Element};
+use xmpp_parsers::{Jid, BareJid, Element};
 use xmpp_parsers::message::{Body, Message, MessageType};
 use xmpp_parsers::presence::{Presence, Show as PresenceShow, Type as PresenceType};
 use xmpp_parsers::muc::Muc;
 
 pub struct Agent {
     sender_tx: mpsc::UnboundedSender<Packet>,
-    room_jid: Jid,
+    room_jid: BareJid,
 }
 
 impl Agent {
     pub fn new(jid: &str, password: &str, muc_jid: &str) -> (Box<dyn Future<Item = (), Error = ()>>, Self) {
-        let muc_jid = Jid::from_str(muc_jid).unwrap();
+        let muc_jid = BareJid::from_str(muc_jid).unwrap();
         let (sender_tx, sender_rx) = mpsc::unbounded();
 
         let client = Client::new(jid, password).unwrap();
@@ -23,7 +23,6 @@ impl Agent {
         let reader = {
             let sender_tx = sender_tx.clone();
             let muc_jid = muc_jid.clone();
-            let muc_jid_str = format!("{}", muc_jid);
             let jid = jid.to_owned();
             stream.for_each(move |event| {
                 match event {
@@ -65,7 +64,7 @@ impl Agent {
             .map_err(|_| ());
 
         let agent = Agent {
-            room_jid: muc_jid.clone().into_bare_jid(),
+            room_jid: muc_jid.clone(),
             sender_tx,
         };
 
@@ -73,7 +72,7 @@ impl Agent {
     }
 
     pub fn send_room_text(&mut self, text: String) {
-        let mut message = Message::new(Some(self.room_jid.clone()));
+        let mut message = Message::new(Some(Jid::Bare(self.room_jid.clone())));
         message.type_ = MessageType::Groupchat;
         message.bodies.insert("".to_string(), Body(text));
         self.sender_tx.unbounded_send(Packet::Stanza(message.into()))
@@ -81,9 +80,9 @@ impl Agent {
     }
 }
 
-fn make_join_presence(muc_jid: Jid) -> Element {
+fn make_join_presence(muc_jid: BareJid) -> Element {
     let mut presence = Presence::new(PresenceType::None)
-        .with_to(Some(muc_jid))
+        .with_to(Some(Jid::Bare(muc_jid)))
         .with_show(PresenceShow::Chat);
     presence.set_status("en".to_string(), "Your friendly Webhook spammer".to_string());
     presence.add_payload(Muc::new());
-- 
2.23.0