What is Jami?
Jami is free software for universal communication which respects freedoms and privacy of its users.
Its main goal is to provide a communication framework and end-user applications to make audio or video calls, send text messages and make generic data transfers. It makes this possible via multiple paradigms: a modern decentralized approach using a DHT to find peers or classical centralized SIP as a soft-phone. The domain of usage is not limited to physical users, it also includes integration with connected objects (IoT).
Available on all major platforms, this free software project is led by Savoir-faire Linux - a Canadian/Quebecois GNU/Linux consulting company - and is supported by the global community.
As a free software its sources are licensed under the GPLv3+.
Contributions, help and suggestions are very welcome!
Feel free to open tickets on our Gitlab, help us with the translation, documentation, packaging, code, tests, etc.
You can contact us:
End user notes
This wiki contains technical documentation and resources for anyone who wants to understand how Jami works or if you want to develop something with the platform. If you are a end-user, please refer to our website or the FAQ.
Also, if you prefer to build your binaries from source, please refer to the READMEs in repo.
Also, you can see features by client via this page
But this is the main parts:
- OpenDHT, a DHT library to provide the basis of our distributed network
Nameserver, (optional) is our registration system based upon an Ethereum Blockchain, but anyone can implement theirs using the following informations:
- Description of the REST API for name query
- The daemon in charge of the accounts management, SIP features, crypto, video, etc
- The clients for all platform to interact with the daemon.
Resources for contributors
- Auto-generated (Doxygen) Daemon code documentation
- Auto-generated (Doxygen) LRC API documentation
- Testing (LCOV) Daemon coverage