Commit graph xmpp-rs/tokio-xmpp/src/client/mod.rs
Author SHA1 Message Date
Link Mauve
d848b6efe7 tokio-xmpp: Make bound_jid a FullJid
That way we have fewer checks to make in client code.
2026-06-11 15:07:31 +02:00
Link Mauve
6b7195530b tokio-xmpp: Use Stanza from xmpp-parsers
The previous commit moved it from src/event.rs into xmpp-parsers, so now
we can use that type directly.
2026-06-10 17:59:26 +02:00
famfo
10f1b3663c tokio-xmpp: add option to split client
Adds an option to split the `tokio-xmpp::Client` into a Sender and
Receiver. To enable this, a client worker is added which drives the
stream in the background.
2026-05-24 17:07:56 +00:00
Jonas Schäfer
3bda04124e tokio-xmpp: publish auth method 2026-02-11 08:23:29 +01:00
Link Mauve
5ed958582b Fix all typos using the typos tool
See https://github.com/crate-ci/typos
2025-11-22 21:48:21 +00:00
Saarko
c674c14597 tokio-xmpp/client: add directTLS connection method 2025-07-25 18:50:30 +02:00
Maxime “pep” Buquet
6fe7f92e7d tokio-xmpp: derive Debug on multiple structures
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2025-05-10 22:11:12 +02:00
Maxime “pep” Buquet
23c947d081 tokio-xmpp: clippy run
skip-changelog

Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2025-04-08 13:57:21 +02:00
Jonas Schäfer
8a4d548d9a tokio_xmpp: implement IQ tracking 2025-01-26 17:15:41 +01:00
Jonas Schäfer
ef9d0a95ff tokio_xmpp: improve Client docs
skip-changelog, to not add doc improvement noise.
2025-01-26 15:09:45 +00:00
Jonas Schäfer
35ce86243f client: use stanzastream! 2024-12-17 18:16:02 +01:00
Jonas Schäfer
80f899daa0 tokio_xmpp: implement high-level, resilient stanza stream 2024-12-17 18:16:02 +01:00
Jonas Schäfer
c6f928d5c8 xmlstream: make sink implementation generic
This allows to use any serialisable type. The advantage is that moves
and clones are avoided (which would otherwise be needed to construct
e.g. a XmppStreamElement from a Stanza or Message).
2024-12-17 16:12:56 +01:00
Jonas Schäfer
4cfe4f8429 xmlstream: implement simple timeout logic
This allows to detect and handle dying streams without getting stuck
forever.

Timeouts are always wrong, though, so we put the burden of choosing the
right values (mostly) on the creator of a stream.
2024-09-01 10:02:36 +02:00
Jonas Schäfer
ab10e30ac0 Port crates to use new XSO-based xmlstream 2024-08-29 16:47:13 +02:00
e6863bd9dd Reorganized client modules 2024-08-12 10:59:20 +00:00
a3fbd77050 Remove tokio_xmpp::SimpleClient 2024-08-10 16:49:24 +02:00
moparisthebest
733d005f51
DNS/TLS deps are now optional, component now also uses ServerConnector 2024-01-01 02:09:41 -05:00
moparisthebest
e784b15402
ServerConnector and AsyncClient support channel binding, SimpleClient uses ServerConnector 2024-01-01 02:08:40 -05:00
Astro
e501addb96 tokio-xmpp: use xmpp_parsers::ns everywhere 2020-05-30 01:25:06 +02:00
Astro
1e1f593233 tokio-xmpp: rustfmt 2020-05-30 00:45:22 +02:00
Astro
537b4825a8 tokio-xmpp: rename Client to AsyncClient 2020-05-30 00:43:53 +02:00
Astro
eb13634571 tokio-xmpp: rename OneshotClient to SimpleClient 2020-05-30 00:43:48 +02:00
Astro
2cd1ad217b tokio-xmpp: add onshot_client 2020-05-30 00:43:48 +02:00
Astro
c13712b158 tokio-xmpp client: condense fn connect(), refactor out into stream_features 2020-05-30 00:43:35 +02:00
Astro
4d24e6bebb tokio-xmpp: name Event::Online fields, add resumed flag 2020-05-29 18:21:31 +02:00
Astro
a4325c787a tokio-xmpp: doc 2020-03-16 00:34:46 +01:00
Astro
23cb34e026 tokio-xmpp: rewrite for futures-0.3 2020-03-06 18:01:31 +01:00
Maxime “pep” Buquet
44eaa5a6ea tokio-xmpp: Prevent XmppCodec from producing invalid stanza
This bug was introduced by 2e97f4de2e, to
fix another bug where the parser would choke on whitespace.

The bug would manifest whenever a stanza was sent in different parts,
for example:
<< "<message "
<< "type='chat><body>foo</body></message>"

Would produce the following once parsed:
`<messagetype='chat'><body>foo</body></messagetype='chat'>`

This commit ensures this doesn't happen anymore (by not trimming
whitespaces before feeding the parser), and also ensures that
whitespaces are now handled at the correct layer.

The removal of xmpp_codec::test_lone_whitespace only happens because I'm
not sure if it's supposed to be here anymore. Maybe it should be at a
different layer? Or written differently?

Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-22 01:25:15 +01:00
Maxime “pep” Buquet
a104ebc3f6
Rustfmt pass, and rustfmt --check in CI"
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-10-23 01:36:02 +02:00
Maxime “pep” Buquet
34aa710366
Prepare for merge: Move all tokio-xmpp files into tokio-xmpp/
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-10-18 14:16:01 +02:00
Renamed from src/client/mod.rs (Browse further)