Les APIs de Jami
OpenDHT
La documentation relative à l’API d’OpenDHT est [ici] (https://github.com/savoirfairelinux/opendht/wiki/API-Overview) et ne sera pas détaillée dans la partie suivante.
Daemon
Les gestionnaires
L’API du daemon est décomposée entre 5 gestionnaires + 1 fichier d’instance:
L’interface CallManager est utilisée pour gérer les actions liées aux appels et aux conférences. Étant donné que le daemon Jami prend en charge plusieurs appels entrants/sorties, toutes les actions impliquant un appel spécifique doivent traiter la méthode au moyen d’un callID unique.
Le ConfigurationManager était utilisé pour gérer les configurations: réglages de comptes, préférences utilisateur,…
Le PresenceManager est utilisé pour suivre la présence de contacts
Le VideoManager utilisé pour gérer les appareils vidéo et les moteurs de rendu
L’instance** est utilisée pour compter le nombre de clients réellement enregistrés dans le noyau. Lorsque vous initialiez votre client, vous devez l’enregistrer contre le noyau en utilisant cette interface.
DBUS
Toute la documentation et le code de l’API dbus se trouvent dans jami-daemon/bin/dbus
.
Si vous utilisez linux, vous pouvez utiliser d-feet
lorsque le daemon est en cours d’exécution pour manipuler l’API (ou avec tout autre outil).
Le projet LRC utilise cette API (et utilise libwrap sur Windows et macOS).
JNI
Toute la documentation et le code de l’API JNI se trouvent dans jami-daemon/bin/jni
.
node js
Toute la documentation et le code de l’API Node JS se trouvent dans jami-daemon/bin/nodejs
. Cette API n’est pas utilisée dans aucun projet connu et peut-être ne sera pas mise à jour.
REST
Toute la documentation et le code de l’API REST se trouvent dans jami-daemon/bin/restcpp
. Cette API n’est utilisée dans aucun projet connu et peut-être pas à jour.
Enveloppe Python
Un enveloppe Python est disponible en jami-daemon/tools/jamictrl
. Ce enveloppe utilise DBus.
Modules d’extension
Plugins are a good way to customize Jami if you want to interact with streams (Audio, Video or chat). Several plugins are already available through the Plugin Store (in the settings of your Jami application).