Commit graph

70 commits

Author SHA1 Message Date
Emmanuel Gil Peyrot
b28c843eff xmpp: Use the new FullJid::resource_str() method 2023-08-10 19:31:10 +00:00
xmppftw
4266368a98 JIDs now have typed and stringy methods for node/domain/resource access
Jid now has typed with_resource and stringy with_resource_str
Jid now has is_full, is_bare
2023-06-21 18:30:25 +02:00
Emmanuel Gil Peyrot
cea9c04507 xmpp: Update to the new jid crate 2023-06-20 18:59:26 +02:00
552848b3ed
xmpp: Revert part of 9c39e3 and fix code at the right place
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2023-06-07 19:10:45 +02:00
d52ace59a9
xmpp: add MucUser payload in send_room_private_message Messages
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2023-06-07 18:54:23 +02:00
xmppftw
9c39e3c195 Event::RoomPrivateMessage does not expose sender FullJid ; add Agent::send_room_private_message method 2023-06-07 15:32:42 +00:00
xmppftw
6144a4c8b0 Event::RoomPrivateMessage for MUC PMs (#85) 2023-06-07 15:32:42 +00:00
xmppftw
209bab1441 tokio_xmpp::AsyncClient and xmpp::Agent take a fully parsed Jid (#72) 2023-06-01 16:55:53 +02:00
xmppftw
aafe341b25 Agent is now Send (closes #64) 2023-06-01 12:00:59 +02:00
Doggo
209c5b779a Fix bug where ContactAdded event was not firing due to a bad if statement. 2023-05-18 16:06:43 +02:00
216d9c4a8d
xmpp: rustfmt Message events commits
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2023-02-27 00:07:57 +01:00
c759516508
xmpp: *Message events now include an optional id
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2023-02-26 20:09:20 +01:00
d7a1cd71a9
xmpp: Add ServiceMessage event
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2023-02-26 17:42:44 +01:00
8e2224bc0f xmpp: pass in headers for http upload
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2022-04-18 12:10:55 +02:00
28df82c7bd xmpp: disconnect method on Agent
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2022-04-18 12:10:55 +02:00
a59c618ed0 xmpp: HTTP File Upload
Implement XEP-0363 HTTP File Upload in xmpp-rs.

The current interface is as is because of a limitation of our libraries.
It is not possible to await on an IQ to get a result, so we have to
workaround it by storing data on the Agent and fetching it back when we
get the result.

The client will have to first call `upload_file_with` and then listen on
Event::HttpUploadedFile, which are decoupled actions, instead of
awaiting on upload_file_with and getting the URL as a result directly.

`upload_file_with` doesn't yet find the upload service by itself for the
same reason as above.

Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2022-04-18 12:10:55 +02:00
e1f2e2653a
xmpp: re-add bits that weren't moved from wait_for_events to handle_iq
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-09-07 11:41:40 +02:00
a8e13a61d7
xmpp: Remove unused import Element
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-09-07 11:40:20 +02:00
9d17a79813
xmpp: split wait_for_events methods
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-09-07 09:58:26 +02:00
Emmanuel Gil Peyrot
714d850e69 Remove the -rs suffix of jid, minidom and xmpp
We know those are Rust libraries, no need to add it to the path.  This
synchronises their directory with the crate name, hopefully reducing
confusion.
2020-06-22 02:17:32 +02:00