- Python 99.8%
- Dockerfile 0.1%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
This is a series of changes necessary to prepare the implementation of remote control feature: - XEP-0166: add a `priority` attribute to `ApplicationData`: this is needed when several applications are working in a same session, to know which one must be handled first. Will be used to make Remote Control have precedence over Call content. - XEP-0166: `_call_plugins` is now async and is not used with `DeferredList` anymore: the benefit to have methods called in parallels is very low, and it cause a lot of trouble as we can't predict order. Methods are now called sequentially so workflow can be predicted. - XEP-0167: fix `senders` XMPP attribute <=> SDP mapping - XEP-0234: preflight acceptance key is now `pre-accepted` instead of `file-accepted`, so the same key can be used with other jingle applications. - XEP-0167, XEP-0343: move some method to XEP-0167 - XEP-0353: use new `priority` feature to call preflight methods of applications according to it. - frontend (webrtc): refactor the sources/sink handling with a more flexible mechanism based on Pydantic models. It is now possible to have has many Data Channel as necessary, to have them in addition to A/V streams, to specify manually GStreamer sources and sinks, etc. - frontend (webrtc): rework of the pipeline to reduce latency. - frontend: new `portal_desktop` method. Screenshare portal handling has been moved there, and RemoteDesktop portal has been added. - frontend (webrtc): fix `extract_ufrag_pwd` method. rel 436 |
||
| doc | ||
| docker | ||
| i18n | ||
| libervia | ||
| misc | ||
| stubs/twisted | ||
| tests | ||
| twisted/plugins | ||
| .hgignore | ||
| ACKNOWLEDGMENTS.md | ||
| CHANGELOG | ||
| CONTRAT_SOCIAL | ||
| CONTRAT_SOCIAL_en | ||
| COPYING | ||
| INSTALL | ||
| pyproject.toml | ||
| README.md | ||
| README4TRANSLATORS | ||
Libervia
Copyrights
- Jérôme Poisson aka Goffi 2008-2023
- Adrien Cossa aka Souliane 2013-2016
- Additional contributions by community members
Libervia stands out as a one-of-a-kind XMPP (Jabber) client that brings you a comprehensive, multi-purpose, and multi-platform solution. It doesn't just focus on instant messaging but offers an array of tools and features all in one place.
License
Libervia is a Libre software (Free as in "Freedom"), distributed under the AGPL v3+
license. For the full license, please refer to the COPYING file.
Relevant URLs
Here are some useful URLs, all of which (except for the source code repository) are powered by Libervia itself, showcasing the flexibility and versatility of the tool:
- Official Website: https://libervia.org
- Documentation: https://libervia.org/documentation
- Bug Tracker: https://libervia.org/tickets
- Source Code: https://repos.goffi.org/libervia-backend/
- News: https://libervia.org/news (currently the same as the blog below)
- Main Developer's Blog: https://www.goffi.org/
Additionally, our blogs are accessible via ActivityPub thanks to the Libervia XMPP <=> ActivityPub gateway.
About
Libervia is a unique XMPP client based on a daemon/frontends architecture. It supports multi-frontends (desktop, web, console interface, CLI, etc.) and provides a plethora of multi-purpose tools such as instant messaging, microblogging, photo albums, calendar events, file sharing, A/V calls, and state-of-the-art end-to-end encryption.
Embedded within our DNA is a strong commitment to ethics. Our social contract provides
insight into these principles - refer to CONTRAT_SOCIAL or CONTRAT_SOCIAL_en.
This repository contains the "backend" of Libervia—the heart of the software. To use it, you will need to install one or more frontends:
- Libervia Web: Our flagship frontend, offering a potent, customizable social network for a broad spectrum of users—families, friends, groups, associations, public services, companies, and more.
- Libervia Desktop: Integrated with your desktop, this frontend is under continual development. The existing Kivy-based version includes a prototype Android version, with an upcoming iteration to be based on Qt.
- Libervia CLI: Bundled with Libervia Backend, our CLI is a true standout—one of the most powerful XMPP CLIs out there. It's the go-to tool for quick tasks or crafting automation scripts.
- Libervia TUI: Perfect for terminal enthusiasts or headless server operations, our TUI is included with Libervia Backend.
Libervia can also function as an XMPP server component or a "generic" plugin. Currently, we offer two components:
- An advanced file sharing component supporting HTTP File Upload, Jingle File Transfer, file deletion, public link, access permission, quotas, etc.
- An XMPP <=> ActivityPub Gateway, enabling users to interact with ActivityPub content (from platforms like Mastodon, Pleroma, PeerTube, Mobilizon, etc.) as if they were XMPP blogs or private messages, and vice versa.
How To Use It?
For installation instructions and general documentation, please refer to the doc
directory or visit https://libervia.org/documentation/
Contributions
Here are the URIs you can use to publish/retrieve tickets or merge requests:
- Tickets: xmpp:pubsub.goffi.org?;node=org.salut-a-toi.tickets%3A0 (please use "core" label)
- Merge requests: xmpp:pubsub.goffi.org?;node=org.salut-a-toi.merge_requests%3A0 (please use "core" label)
Tickets and merge requests are managed by Libervia itself using XMPP. For more information, visit https://libervia.org/tickets
Contact
Join us on the XMPP MUC room libervia@chat.jabberfr.org (web link), or contact us directly:
- contact@salut-a-toi.invalid (replace
invalidwithorg) - goffi@goffi.invalid (email, replace
invalidwithorg)
This software is dedicated to Roger Poisson.