Unofficial wrapper for CHZZK API
Functionality of this crate is barely tested and breaking changes are not only anticipated, but also planned.
As this wrapper relies on undocumented CHZZK web API intended for use exclusively by the official apps, functionality may spontaneously break.1 Do NOT use this library to collect or expose information that is not accessible via the official web app. Authors of this API wrapper disclaim any accountability for misuse of this software.
Uses tokio::spawn for non-wasm environments, js_sys::future::spawn_local for wasm. If there's a demand for other executors, these may change.
log: Useslogcrate to log.time: Deserialize astime::OffsetDateTimeinstead ofStringor number type. Does not guarantee equal offset for all data.rustls(default): UserustlsTLS.native-tls: Usenative-tlsTLS.dump-on-de-err: Dump API response asstrtostdoutwhen deserialization fails.__example: Provides a slightly more ergonomic experience for writing examples; not intended to be enabled by library users.
Refer to the example README before running examples.
No guarantees to timeline or if it will actually be implemented.
- Change websocket message
DonationtoAnnouncementand enumify body variant - Get info about content that
credentialfollows - Observe and implement more chat message types
- Move code around to more intuitive locations
- Better documentation
- Less cloning of data for users
- Customizable chat client fingerprint
Footnotes
-
This was chosen as official, documented API for third party apps lacks many features and is incompatible with some use cases. ↩