FAQ

Il s’agit d’une liste exhaustive de questions fréquemment posées, y compris certaines questions techniques.

Principaux

C’est quoi Jami?

Voir l’introduction:

Que veut dire Jami ?

Le choix du nom Jami a été inspiré par le mot swahili jamii qui signifie community comme nom et together comme adverbe. Il a été choisi car il reflète la vision du projet: un programme libre/libre disponible pour tous qui aide à rassembler les communautés, est soutenu par la communauté et respecte la liberté et la vie privée des utilisateurs.

Comment faire un rapport de bugs?

Veuillez consulter le guide du document:

Qu’est-ce qui rend Jami différent des autres plateformes de communication?

Jami ne fonctionne pas comme la plupart des plateformes de communication parce qu’elle est distribuée:

Topologie du réseau centralisé, décentralisé et distribué

Par exemple, puisque les comptes sont stockés sur votre appareil, les mots de passe sont facultatifs. Cependant, les différences pratiques les plus importantes sont que vous avez plus de * liberté* et de * confidentialité*.

Que signifient les cercles de statut vert/orange/rouge à côté des avatars ?

Sur votre propre compte, un cercle rouge signifie que vous n’êtes pas connecté au DHT ou que vous êtes hors ligne. Vous devriez avoir une bannière d’erreur détaillée expliquant le problème. Il se peut que vous deviez vérifier votre connexion ou redémarrer l’application.

Pour les contacts, l’absence de cercle signifie qu’aucun appareil n’est détecté sur le DHT. Ce contact est injoignable. Si un cercle orange est présent, cela signifie qu’au moins un appareil est annoncé sur le DHT, donc ce contact SEMBLE être joignable. Vous n’avez pas encore de connexion directe avec ce pair. Mais il devrait être en mesure de recevoir des demandes de connexion. Comme le dispositif n’est pas directement connecté à quoi que ce soit, nous ne pouvons pas déterminer avec certitude l’état de ce dispositif. Cela peut donc se traduire par « Semble être joignable », mais la connexion peut échouer (pare-feu, blocage, NAT, etc.).

La présence a généralement un TTL de 10 min sur la DHT et de plusieurs heures si les notifications push sont activées.

Si un cercle vert est présent, cela signifie que vous êtes connecté à un appareil de ce pair.

Pourquoi une caractéristique manque-t-elle à mon client?

Tous les clients ne mettent pas en œuvre toutes les fonctionnalités; consultez la liste ici pour voir si votre client manque de la fonctionnalité.

Vous pouvez faire des demandes de fonctionnalités à https://git.jami.net.

Jami prend en charge la lecture des reçus?

Vous pouvez activer ou désactiver les reçus de lecture sur Android. D’autres plates-formes peuvent encore travailler sur cette fonctionnalité. Veuillez consulter:doc:Tous les fonctionnalités par client <tous les fonctionnalités par client> pour le statut actuel.

Jami prend en charge la saisie des notifications?

La plupart des clients prennent en charge l’envoi et la réception de notifications de saisie.

Je peux partager mon écran?

Oui, sur toutes les plateformes sauf iOS. Cherchez un bouton dédié  » Partager l’écran  » pendant une vidéoconférence.

Je peux faire des appels de groupe?

Oui. Vous pouvez ajouter des contacts Jami aux appels existants (audio ou vidéo) en cliquant sur le bouton  » Ajouter un participant « .

Est-ce que Jami a des discussions de groupe ?

Oui, Jami dispose désormais de discussions de groupe Les éclats. Cependant, elles sont actuellement expérimentales et doivent être activées manuellement à partir des paramètres de l’application.

Pourquoi mes messages ne sont pas affichés sur tous les appareils connectés?

Avant Les éclats, les appareils d’un compte recevaient les mêmes messages des contacts si l’appareil était en ligne au moment de l’envoi du message, mais les messages envoyé ne se montreraient pas sur d’autres appareils que celui qui envoie le message.

Avec l’introduction de Swarm, les historiques de conversations de nouvelles conversations Swarm (y compris les conversations individuelles) sont entièrement synchronisées entre tous les appareils liés d’un compte. Si vous utilisez une version plus ancienne de Jami, veuillez mettre à niveau vers la dernière version avec le support Swarm. La dernière version de Jami est toujours disponible à partir de la page de téléchargement du site Web Jami, à https://jami.net/download/.

Pour en savoir plus sur Swarm, vous pouvez lire notre article de blog Synchroniser l’historique de conversation avec Swarm et voir la page Les éclats du manuel de développement Jami.

Je peux envoyer des messages aux contacts hors ligne?

Avec les conversations Les éclats, chaque appareil stocke toutes les copies de tous les messages de cette conversation. Si un appareil (que ce soit le vôtre ou celui d’un autre participant) n’est pas disponible/en ligne lors de l’envoi d’un message, lorsqu’il revient en ligne, il tentera de récupérer tous les nouveaux messages d’autres appareils en ligne/petits pairs et de synchroniser l’historique des messages. Cela peut être fait chaque fois qu’au moins un autre appareil qui a une copie des nouveaux messages est également en ligne.

Note

Vous pouvez en savoir plus sur la synchronisation des conversations de Swarm dans notre article de blog Synchronisation de l’historique de conversation avec Swarm.

Si les participants à une conversation ne sont souvent pas en ligne en même temps (par exemple, en raison de différences de fuseau horaire), l’un d’eux pourrait choisir de mettre Jami sur un appareil souvent en ligne qui recevrait les messages de chaque participant et les transmettait aux autres chaque fois qu’ils se connectaient.

Où sont situés les fichiers de configuration?

Jami enregistre sa configuration (compte, certificats, historique) à différents endroits selon la plateforme.

  • GNU/Linux: la configuration globale est sous ~/.config/jami/dring.yml, et les fichiers spécifiques au compte sont sous ~/.local/share/jami/. Enfin, il y a un répertoire de cache à ~/.cache/jami/.

  • macOS: la configuration complète est sous ~/Library/Application Support/Jami/ si elle est installée via https://jami.net.

  • Android: la configuration complète est dans ``/data/cx.ring/` (peut nécessiter des privilèges racine pour afficher ou modifier à partir de Jami).

  • Windows: la configuration globale est sous %AppData%/Local/jami/dring.yml, et les fichiers spécifiques au compte sont sous %AppData%/Local/jami/. Enfin, il y a un répertoire de cache à ``%USERPROFILE%/.cache/jami/`.

Remarque: les messages audio et vidéo sont enregistrés dans les données locales dans le dossier: sent_data

Pour les fichiers, si un fichier est enregistré (cliquez à droite sur le fichier, puis Enregistrer) il sera ajouté au répertoire que vous avez configuré dans les paramètres de l’application.

Combien de bande passante ai-je besoin pour les appels?

Pour les appels audio, Jami utilise environ 100 Kbps. Pour un appel vidéo, vous avez besoin d’environ 2 Mbit/s pour une qualité moyenne. Si votre connexion est plus lente, le bitrate sera automatiquement réduit.

Si vous organisez une vidéoconférence, vous aurez besoin d’environ 2 Mbps supplémentaires par participant. Ainsi, par exemple, pour une conférence de 10 participants, chaque participant aura besoin de 2 Mbps en amont et en bas et l’hôte aura besoin de 20 Mbps en amont et en bas.

Jami utilise également un algorithme pour modifier la consommation en fonction de la qualité du lien.

Comment Savoir-Faire Linux (SFL) peut-il se permettre de donner Jami gratuitement ? Comment SFL gagne-t-elle de l’argent avec Jami ?

Savoir-Faire Linux (SFL) est une société de conseil avec quelques projets de recherche et développement. Jami est un projet sous licence GPLv3+ et cela ne changera pas. Savoir-Faire Linux vend déjà des services dans plusieurs domaines d’expertise (hébergement, développement de sites web et d’applications, logiciels embarqués, etc). Jami est financé de plusieurs manières :

  • Donations

  • Contrats de personnalisation

  • Services pour d’autres projets

  • Visibilité

  • R&D

  • https://jami.biz

  • En tant que système distribué, Jami engendre des coûts très faibles de par sa conception

  • La collecte facultative de statistiques anonymes pourrait être ajoutée à l’avenir pour mieux comprendre l’utilisation de Jami ; toutefois, aucune donnée personnelle ne sera collectée.

Gestion du compte

Qu’est-ce qu’un compte Jami ?

Un compte Jami est une clé de cryptage asymétrique. Votre compte est identifié par un identifiant Jami, qui est une empreinte digitale <https://en.wikipedia.org/wiki/Public_key_fingerprint>`_ de votre clé publique.

Quelles informations dois-je fournir pour créer un compte Jami ?

Lorsque vous créez un nouveau compte Jami, vous n’avez pas à fournir d’informations privées comme un e-mail, une adresse ou un numéro de téléphone.

Voici les informations que vous pouvez fournir si vous choisissez (c’est tout facultatif):

  1. Un avatar.

  2. Un nom d’affichage, qui est le nom que les clients afficheront pour votre contact.

  3. Un nom d’utilisateur optionnel, qui est un identifiant unique directement associé à votre identifiant Jami. Ce nom d’utilisateur->Jami ID est stocké sur un serveur (ns.jami.net par défaut, mais vous pouvez héberger votre propre).

  4. Un mot de passe. Ce mot de passe est utilisé pour protéger l’archivage du compte dans votre appareil.

Plus d’informations sur les comptes Jami sont disponibles dans le Voir technique.

Où est mon identifiant Jami?

Votre identifiant Jami doit être affiché en premier lieu dans l’application que vous utilisez. Il ressemble à une longue chaîne de lettres et de chiffres; par exemple: f2c815f5554bcc22689ce84d45aefdda1bce9146`.

Pourquoi n’ai-je pas besoin d’utiliser un mot de passe ?

Vous n’êtes pas obligé d’avoir un mot de passe sur votre compte. Dans un système centralisé, vous utiliserez votre mot de passe pour vous authentifier avec un serveur public où votre compte est stocké.

Avec Jami, votre compte est stocké dans un dossier :ref:` <user/faq:Where are the configuration files located?>` sur votre appareil. Le mot de passe est uniquement utilisé pour crypter votre compte afin de vous protéger de quelqu’un qui a un accès physique à votre appareil.

Si votre appareil est crypté, vous ne voudrez peut-être pas ou n’avez pas besoin d’utiliser un mot de passe, et en effet, les versions récentes de Jami ne demandent pas un mot de passe de cryptage de compte par défaut lors de la création de nouveaux comptes.

Remarque : la modification d’un mot de passe n’a lieu que sur l’appareil actuel et n’est pas synchronisée (parce qu’il n’y a pas de serveur et que les autres appareils peuvent de toute façon être hors ligne).

Pourquoi je n’ai pas besoin d’enregistrer un nom d’utilisateur ?

L’identifiant le plus permanent et le plus sécurisé est votre Jami ID, mais comme ceux-ci sont difficiles à utiliser pour certaines personnes, vous avez également la possibilité d’enregistrer un nom d’utilisateur.

Si vous n’enregistrez pas un nom d’utilisateur, vous pouvez toujours choisir de l’enregistrer plus tard à tout moment.

Si vous hébergez votre propre serveur de noms à example.com, les noms d’utilisateurs enregistrés là-bas peuvent être recherchés en recherchant username@example.com.

Je peux changer mon nom d’utilisateur?

Avec le serveur de noms par défaut (ns.jami.net) vous ne pouvez pas changer votre nom d’utilisateur.

Quelle est la différence entre un nom d’utilisateur et un nom d’affichage?

Vous pouvez utiliser votre nom d’utilisateur comme identifiant. Le nom d’utilisateur indique votre Jami ID, qui est votre identifiant permanent et sécurisé.

Un nom d’affichage vous permet de choisir un autre nom qui vous identifie à vos contacts.

Comment faire pour sauvegarder mon compte ?

Il y a deux façons de sauvegarder votre compte:

  1. Connectez un autre appareil à votre compte afin que votre compte soit sur deux appareils.

  2. Réservez l’archivage du compte :ref:` <developer/technical-overview:Jami archive (export.gz)>`. Ce fichier se trouve dans le dossier du compte folder. Dans certains clients, vous pouvez exporter cet archive depuis les paramètres du compte.

Puis-je récupérer mon nom d’utilisateur sans mes clés?

Si vous avez utilisé le serveur de nom par défaut à ns.jami.net, vous ne pouvez pas. Il n’y a aucun moyen de prouver que c’est votre nom d’utilisateur sans votre clé.

Si vous utilisez un serveur de noms différent, il peut y avoir un moyen de déplacer un nom d’utilisateur vers un nouvel identifiant Jami à la discrétion de l’administrateur de ce serveur de noms.

Pour plus d’informations sur les serveurs de noms, voir:doc:../developer/name-server-protocol.

Puis-je récupérer mon compte si j’oublie mon mot de passe?

Non. Il ne peut y avoir de processus de récupération de compte traditionnel; vous êtes la seule personne à avoir accès à vos données. Si vous craignez d’oublier votre mot de passe, veuillez utiliser un gestionnaire de mot de passe.

Que se passe-t-il si je supprime mon compte ?

Votre compte est uniquement stocké sur vos propres appareils. Si vous supprimez votre compte de chaque appareil, le compte est perdu et vous ne pouvez pas le récupérer (sauf si vous l’avez déjà sauvegardé plus tôt).

Vos contacts auront toujours les messages que vous leur avez envoyés, mais tous les enregistrements publics de votre compte sur le DHT disparaîtront finalement en raison de l’absence et du manque d’activité.

Avertissement

Le serveur de noms par défaut ns.jami.net` ** ne supprime aucun nom d’utilisateur enregistré - d’autres serveurs de noms pourraient (ne pas être recommandés), à la discrétion de leur administrateur. Donc, si vous avez un compte avec un nom d’utilisateur enregistré sur le serveur de noms par défaut et que vous supprimez ou perdez votre compte, et que vous n’avez pas sauvegardé votre compte plus tôt, personne (y compris vous) ne pourra à nouveau enregistrer un nouveau compte avec ce nom d’utilisateur, de sorte que personne ne pourra plus vous contacter à ce nom d’utilisateur.

Pour éviter de perdre votre compte ** s’il vous plaît**:ref:faire une sauvegarde <user/faq:Comment puis-je faire une sauvegarde de mon compte?>!

Avancé

Quel protocole Jami utilise pour le chiffrement de bout en bout?

Nous utilisons TLS 1.3 avec une exigence de confidentialité parfaite pour les chiffres négociés pour les appels et les transferts de fichiers. Les messages sont cryptés avec une clé RSA.

Quelles données passent par ma machine quand je participe au réseau Jami?

Tous ces données sont cryptées.

  • Descripteurs ICE d’autres utilisateurs de Jami (l’ICE est un protocole qui permet d’établir une communication entre deux ordinateurs)

  • certains messages texte

  • les comptes actuellement liés à un nouveau dispositif, comme expliqué ci-dessus.

Les flux audio/vidéo et certains messages texte passent par le protocole VOIP. Les messages texte peuvent être envoyés soit par VOIP, soit par DHT (réseau distribué), selon qu’un canal de communication VOIP est déjà ouvert ou non.

Pourquoi suis- je capable de communiquer avec moi- même?

De nombreux utilisateurs utilisent Jami pour transférer des données d’une machine à une autre.

Je dois activer les notifications push?

Les notifications push permettent à Jami de fonctionner de manière plus adaptée au contexte de la mobilité (consommation d’énergie, données,…). Cependant, pour le moment, les notifications passent par les serveurs de Google, via le service Firebase.

Un serveur de démarrage c’est quoi?

Un serveur de démarrage est le point d’entrée du réseau distribué. Pour entrer dans un réseau, Jami doit connaître un autre nœud. C’est le rôle du démarrage. Il peut s’agir de n’importe quel nœud du réseau, mais, les nœuds de démarrage sont généralement toujours disponibles. Le nœud par défaut de Jami est bootstrap.jami.net.

C’est quoi un serveur de tourne?

Un serveur TURN est un relais, et est généralement utilisé lorsque deux pairs ne peuvent pas se contacter les uns les autres en raison d’une certaine restriction du pare-feu, ont NAT sans aucun port ouvert, et pas IPv6.

Un serveur STUN est utilisé uniquement pour les comptes SIP et est généralement utilisé pour obtenir votre adresse IP publique.

Qu’est-ce que le DHT proxy?

Le proxy DHT est un serveur qui s’enregistre sur le DHT pour vous et vous transmet vos informations. Ainsi, c’est le serveur qui sera actif sur le DHT et participera au réseau, et non plus le périphérique cible. Plusieurs appareils peuvent s’enregistrer sur le même proxy DHT.

Généralement, pour transférer des données entre deux pairs, il y a 3 étapes:

  1. Les candidats à l’échange (IP) via le DHT

  2. Negociez le meilleur canal P2P entre les pairs

  3. Transférez des données sur cette prise.

Le DHT n’est utilisé que pour la première étape.

Et si je désactivais le DHT proxy sur Android et que dire des notifications push?

Il y a 3 modes de fonctionnement pour l’application Android:

  • Avec des notifications push (proxy DHT doit être activé).

notifications pour Android (via Google/Firebase, et bientôt Unified Push ou Apple/APN). Cela permet de réduire l’utilisation de la batterie, en supprimant la synchronisation nécessaire avec le DHT et sans socket toujours vivant. + Sans notifications push mais avec le proxy DHT activé. Cela évite à l’application de se synchroniser avec d’autres nœuds, mais l’option « Exécuter en arrière-plan » doit être activée pour éviter que le système d’exploitation ne tue l’application. + Sans proxy DHT. Dans ce cas, l’option « Run in background » DOIT être activée pour éviter que le système d’exploitation ne tue l’application. L’application se synchronisera avec les autres nœuds DHT.

J’ai encore des problèmes avec l’application Android même si l’optimisation de la batterie est désactivée

Veuillez lire https://dontkillmyapp.com pour plus de détails. Si cela ne résout pas votre problème, vous pouvez ouvrir un rapport de bug (idéalement avec un scénario pour nous aider à reproduire et/ou logs).

Comment fonctionne le service d’enregistrement des noms d’utilisateur?

Avec le serveur de noms par défaut (ns.jami.net), les noms d’utilisateurs sont enregistrés sur une blockchain Ethereum. Si vous êtes un développeur, vous pouvez créer votre propre serveur de noms avec la technologie de stockage de données sous-jacente de votre choix (par exemple, vous pouvez utiliser une base de données SQL plutôt que d’utiliser une blockchain).

Avec le serveur de noms par défaut, vous pouvez rechercher les noms d’utilisateurs à https://ns.jami.net/name/test, où test est un nom d’utilisateur pour lequel nous cherchons un correspondant Infohash. Une fois enregistré, ce serveur de noms ** ne fournit aucun moyen** de supprimer la cartographie.

En savoir plus sur le protocole Jami:doc:../developer/name-server-protocol.

Comment changer le temps d’un appel?

Dans le fichier dring.yml (voir:ref:user/faq: Où se trouvent les fichiers de configuration?), vous pouvez modifier le ringingTimeout (en quelques secondes).

Comment sauvegarder et réimporter des conversations et des comptes

Note

Ceci est uniquement applicable aux clients basés sur le LRC (desktop).

Vous devrez d’abord exporter tous vos comptes (pour GNU/Linux: Settings => `Account => `Exporter le compte). Ensuite, vous devrez copier la base de données (en ~/.local/share/jami/ par exemple).

Ensuite, sur le nouvel appareil, lorsque vous ouvrirez Jami pour la première fois, vous devez réimporter vos comptes via l’archivage précédemment enregistré. Cela réimportera vos paramètres et contacts (avec des conversations vides).

Vous êtes sûr?

Nous utilisons TLS/SRTP pour sécuriser la connexion et les communications sur le réseau.

Nous mettons en œuvre le SRTP sur le SIP en utilisant les recommandations décrites dans les deux RFC suivants:

On négocie généralement deux types de prises, l’une pour la prise de contrôle, l’autre pour les prises de médias.

Une session de contrôle typique utilisera la suite de chiffrement suivante:

(TLS1.3)-(ECDHE-SECP384R1)-(RSA-PSS-RSAE-SHA384)-(AES-256-GCM)
(TLS_ECDHE_RSA_AES_256_GCM_SHA384)

DTLS (répertoire de la défaillance) pris en charge:

"SECURE192:-KX-ALL:+ANON-ECDH:+ANON-DH:+SECURE192:-VERS-TLS-ALL:+VERS-DTLS-ALL:-RSA:%SERVER_PRECEDENCE:%SAFE_RENEGOTIATION"

TLS:

"SECURE192:-KX-ALL:+ANON-ECDH:+ANON-DH:+SECURE192:-RSA:-GROUP-FFDHE4096:-GROUP-FFDHE6144:-GROUP-FFDHE8192:+GROUP-X25519:%SERVER_PRECEDENCE:%SAFE_RENEGOTIATION"

La suite de cryptos pris en charge pour la session médiatique est:

  • ``AES_CM_128_HMAC_SHA1_80 / SRTP_AES128_CM_HMAC_SHA1_80`

  • ``AES_CM_128_HMAC_SHA1_32 / SRTP_AES128_CM_HMAC_SHA1_32`

Quand les IP publiques sont-ils exposés?

Nous pouvons considérer trois principaux scénarios de connectivité: (1) une configuration classique, (2) derrière un VPN, (3) via Tor. Comme Jami est une application p2p, le lecteur saura probablement que (2) ou (3) est un peu obligatoire pour éviter la fuite d’IP.

En outre, même si c’est ma réponse, vous pouvez choisir de ne pas faire confiance à ma réponse et de vérifier le code, ou utiliser wireshark ou d’autres outils. Généralement, je (et autant que je connais la plupart des autres développeurs Jami) utilise le premier scénario (parfois le deuxième), et nous ne pouvons certainement pas tester toutes les configurations de réseau possibles que nous aimerions, donc si vous découvrez un bug, s’il vous plaît:doc:ouvrir un problème <bug-report-guide>.

En tout cas, dans ces 3 scénarios, il y a 3 actions principales:

  • envoyer un message (ceci utilisera le DHT);

  • envoyer un fichier (connexion TCP ICE telle que décrite ici: Transfert de fichiers; et

  • la mise en place d’un appel (connexion ICE TCP + UDP telle que décrite ici: Appels).

Configuration classique

  • Envoyer un message

L’application Jami exécute un nœud DHT (https://opendht.net) sur votre appareil. Ainsi, toutes les opérations sur le DHT utiliseront vos ips. C’est pourquoi Jami a la possibilité d’utiliser un dhtproxy (par exemple dhtproxy.jami.net), ce qui évitera d’utiliser votre nœud, mais utilisera un autre nœud sur le réseau (qui verra votre ip). Notez que votre message n’est pas envoyé directement à l’autre appareil. En fait, votre message est envoyé sur certains nœuds du DHT et votre contact récupérera le message sur ce nœud. Ainsi, votre contact ne voit pas votre IP à cette étape, mais le nœud qui reçoit le message le verra (ou ils verront l’IP du proxy).

  • Envoyez un fichier

Comme décrit dans les documents, vous enverrez un message avec toute l’adresse IP que vous savez que votre paire peut contacter dans un paquet crypté.

  • Appels

Comme ci-dessus, l’IP est présente dans l’ICE.

Derrière un VPN

  • Envoyer un message

L’IP de votre VPN sera utilisé par le nœud DHT. Si vous voulez une preuve, vous pouvez compiler le nœud dhtnode et exécuter la commande la pour obtenir votre adresse publique détectée. Voici ce que j’ai:

./tools/dhtnode -b bootstrap.jami.net
Bootstrap: bootstrap.jami.net:4222
OpenDHT node be58fdc9f782269bfc0bbfc21a60bca5f02cb881 running on port 54299
 (type 'h' or 'help' for a list of possible commands)

>> la
Reported public addresses:
IPs OF MY VPN

Donc, si vous n’utilisez pas un proxy, vos adresses VPN seront utilisées pour utiliser le DHT. Si vous utilisez un dhtproxy, le dhtproxy verra vos adresses VPN

  • Envoyez un fichier

Comme ci-dessus, l’ICE contiendra: + adresses de votre réseau local + adresse publique de votre VPN + adresse TURN si TURN est activé

  • Faites un appel.

Comme ci-dessus, votre adresse publique est remplacée par votre adresse VPN. Vous pouvez la voir dans les journaux de daemon. Voir:ref:user/bug-report-guide:logs.

Tor

  • Envoyer un message

Tor ne supporte pas UDP. Cela signifie que vous ne pouvez pas utiliser votre nœud DHT localement, vous devez utiliser un DHTProxy. Ce proxy verra le nœud Exit.

  • Envoyez un fichier

J’ai fait un transfert de fichier avec Jami + TOR.

[1574218330.556|10688|p2p.cpp           :241  ] [Account:93a03f519f394143] add remote ICE candidate: Hc0a8c801 1 TCP 2130706431 192.168.200.1 33293 typ host tcptype passive
[1574218330.556|10688|p2p.cpp           :241  ] [Account:93a03f519f394143] add remote ICE candidate: Hc0a8c801 1 TCP 2130706431 192.168.200.1 9 typ host tcptype active
[1574218330.556|10688|p2p.cpp           :241  ] [Account:93a03f519f394143] add remote ICE candidate: Hc0a80103 1 TCP 2130706431 192.168.1.3 33293 typ host tcptype passive
[1574218330.556|10688|p2p.cpp           :241  ] [Account:93a03f519f394143] add remote ICE candidate: Hc0a80103 1 TCP 2130706431 192.168.1.3 9 typ host tcptype active
[1574218330.556|10688|p2p.cpp           :241  ] [Account:93a03f519f394143] add remote ICE candidate: R33fe279d 1 TCP 16777215 51.254.39.157 27427 typ relay tcptype passive
[1574218330.556|10688|p2p.cpp           :241  ] [Account:93a03f519f394143] add remote ICE candidate: Sc0a8c801 1 TCP 1694498815 185.220.101.24 33293 typ srflx tcptype passive

Les premiers sont quelque 192.168.x.x donc nous ne nous soucions pas. 51.254.39.157 est l’adresse TURN en France (mon appareil est au Canada). 185.220.101.24 est le nœud de sortie Tor:

inetnum:        185.220.101.0 - 185.220.101.127
netname:        MK-TOR-EXIT
  • Faites un appel.

Cela ne fonctionnera pas (en fait, vous pouvez créer la connexion de contrôle SIP parce que c’est une connexion TCP), mais les médias sont négociés en UDP, donc cela échouera.

Quels ports Jami utilise-t-il?

Jami travaille comme un serveur et obtient de nouveaux ports pour chaque connexion (ligné au hasard).

  • dht: UDP [4000, 8888]

  • audio: UDP [16384-32766]

  • Vidéo: UDP [49152-65534]

  • Contrôle SIP: UDP/TCP liés au hasard

Remarque: si UDP est bloqué, un dhtproxy peut être utilisé pour utiliser TCP à la place.

Donc pour ufw, nous recommandons d’exécuter ``sudo ufw autorise par défaut la sortie ``.

Pour l’instant, vous ne pouvez pas spécifier une plage spécifique pour configurer les ports utilisés par Jami. Le trafic entrant peut être contrôlé sans problème, Jami devrait fonctionner et peut utiliser un serveur TURN si nécessaire.

Si vous utilisez votre propre proxy ou serveur de noms:

  • dhtproxy, serveur de noms: TCP [80-100], 443

Si vous utilisez votre propre serveur TURN:

  • Les données de référence sont fournies par le service de téléphonie mobile.

Puis-je utiliser Jami dans un réseau local (LAN) sans accès à Internet?

Oui! Grâce à l’architecture de Jami, les utilisateurs de Jami sur un réseau local/privé peuvent communiquer entre eux en utilisant Jami, sans avoir besoin d’une connectivité extérieure telle que l’Internet.

Pour ce faire, à partir des paramètres `Account `` de Jami ouvre ```Advanced account settings ``. Là, activez le paramètre ``Enable local peer discovery ``. En outre, vous pouvez définir manuellement l'adresse du nœud ``bootstrap (par défaut: bootstrap.jami.net) à l’adresse IP d’un autre appareil de votre réseau qui exécute également Jami et/ou un nœud OpenDHT.

Note

Si vous utilisez ce compte Jami pour communiquer uniquement avec d’autres appareils du même réseau local/privé, vous pouvez désactiver TURN si vous le souhaitez. Si vous le faites et que vous décidez plus tard d’utiliser ce compte également pour communiquer avec d’autres appareils Jami en dehors de votre réseau, n’oubliez pas de réactiver TURN, car cela aide Jami à résoudre les problèmes avec certains pare-feu trop restrictifs.

Comment puis-je configurer les codecs encore plus?

Les codecs peuvent être configurés via un fichier. Dans les fichiers de configuration, vous pouvez créer un fichier appelé encoder.json comme ceci:

{
    "libx264": {
        "profile": 100,
        "level": 42,
        "crf": 20,
        "preset": "ultrafast"
    },
    "h264_vaapi": {
        "low_power": 1
    },
    "libopus": {
        "application": "voip"
    }
}

ou

{
    "libopus": {
        "bit_rate": 128000
    }
}

Ce fichier est :ref:` situé dans le même répertoire <user/faq:Where are the configuration files located?>` comme dring.yml.

Pour vérifier quelles options sont prises en charge, utilisez la commande ffmpeg -h encoder=[encoder_name], où encoder_name` peut être n’importe lequel de libx264`, `libvpx`, ```mpeg4`, ``h263, `libopus, `libspeex`, `g722, pcm_alaw, ou pcm_mulaw (les noms FFmpeg pour tous les encoders pris en charge par Jami).

Comment configurer le processeur audio?

Un processeur audio permet à Jami de nettoyer et de traiter l’audio de votre microphone. Il peut éliminer l’écho, réduire le bruit et équilibrer le volume de votre microphone. En outre, il peut détecter lorsque vous parlez et envoyer ces informations aux participants de votre appel. Les paramètres du processeur audio peuvent être réglés dans votre fichier dring.yml. Voir:ref:ce section pour trouver où se trouve ce fichier <config-file-location>.

Les clés de préférence pertinentes sont:

  • audioProcessor, qui configure le processeur audio à utiliser.

    • webrtc: la bibliothèque de traitement audio de WebRTC

    • speex: la bibliothèque de DSP `Speex

    • null: désactive le traitement audio (bien que votre annulateur d’écho du système puisse encore être utilisé, voir ci-dessous)

  • echoCancel, qui définit la manière dont l’annulation de l’écho doit être effectuée.

    • auto: essayez d’utiliser l’annulateur d’écho de votre système d’exploitation (si elle existe), sinon, restez sur l’annulateur d’écho du processeur audio choisi

    • audioProcessor: utilisez uniquement l’annulateur d’écho du processeur audio choisi

    • system: utilisez uniquement l’annulateur d’écho de votre système d’exploitation

    • null: ne faites pas d’annulation de l’écho

  • noiseReduce, true/false pour régler la réduction du bruit sur le processeur audio

  • automaticGainControl, true/false

  • voiceActivityDetection, true/false