Skip to content
Snippets Groups Projects
Commit 4a80f9a5 authored by Sébastien Blin's avatar Sébastien Blin
Browse files

Create Questions récurrentes

parent 787d1429
No related branches found
No related tags found
No related merge requests found
# Jami FAQ
## Les bases
- [Qu'est ce jami ?](#basics-1)
- [Il manque une fonctionnalité !](#basics-2)
- [Jami vient de planter / a un bug. Que puis-je faire ?](#basics-3)
- [Il y a un point d'exclamation orange / rouge à coté de mon avatar. Qu'est-ce que cela signifie ?](#basics-4)
- [Où sont situés les fichiers de configuration](#basics-5)
## Gestion du compte
- [Qu'est-ce qu'un compte Jami ?](#account-1)
- [Pas de mot de passe ?](#account-2)
- [Pas de nom d'utilisateur ?](#account-3)
- [Comment puis-je sauvegarder mon compte?](#account-4)
- [Comment puis-je retrouver mon nom d'utilisateur sans mes clés ?](#account-5)
- [J'ai oublié mon mot de passe, que puis-je faire ?](#account-6)
- [Quel est le code PIN lorsque je veux lier mon compte à un autre appareil](#account-7)
- [Comment supprimer mon compte ?](#account-8)
- [Que se passe-t-il lorsque je lie mon compte à un nouvel appareil ?](#account-9)
- [Mon contact ne voit pas mon avatar](#account-10)
## Audio / video
- [Comment configurer l'annulation de l'écho ?](#media-1)
- [La vidéo est instable](#media-2)
- [je ne me vois pas](#media-3)
- [Les autres ne peuvent pas m'entendre](#media-4)
- [Je n'ai pas de son](#media-5)
- [De quelle largeur de bande ai-je besoin ?](#media-6)
## Avancé
- [Quelles sont les données qui transitent par mon ordinateur lorsque je participe au réseau Jami ?](#advanced-1)
- [Pourquoi suis-je capable de communiquer avec moi-même ?](#advanced-2)
- [Dois-je activer les notifications push ?](#advanced-3)
- [Qu'est-ce que le proxy DHT ?](#advanced-4)
- [Comment fonctionne le service d'enregistrement des noms d'utilisateur ?](#advanced-5)
- [Comment modifier le délai d'attente pour un appel ?](#advanced-6)
- [Comment sauvegarder et réimporter des conversations et des comptes ?](#advanced-7)
- [Êtes-vous en sécurité ?](#advanced-8)
- [Quand les IP publiques sont-elles exposées ?](#advanced-9)
- [Quels sont les ports utilisés par Jami ?](#advanced-10)
- [Comment puis-je configurer encore plus les codecs ?](#advanced-11)
Cette page a pour but de rassembler autant de ressources que possible (techniques ou non) et de les condenser pour créer une documentation concise. Celle-ci peut ensuite être intégrée dans un tutoriel ou une page d'aide sur le site web ou dans les clients.
Resources :
- From ring.cx (legacy):
- <https://web.archive.org/web/20181226012503/https://ring.cx/en/documentation/faq>
- <https://web.archive.org/web/20181226012541/https://ring.cx/en/about/privacy-and-anonymity>
- <https://web.archive.org/web/20180224163130/https://ring.cx/en/about/practical>
- Old wiki: <https://tuleap.ring.cx/plugins/mediawiki/wiki/ring/index.php?title=Special:AllPages>
## Les bases
### <a name="basics-1">Qu'est-ce que Jami ?</a>
Jami is an innovative communication system. It doesn't work like other solutions since its designed to protect user's freedom.
Le réseau Jami est [distribué](https://git.jami.net/savoirfairelinux/ring-project/uploads/9b725e440c2705a2a3c4d0a3df092066/Network-topo.png), Ainsi, vous pouvez être invité à effectuer certaines actions qui sont considérées comme de mauvaises pratiques sur des systèmes centralisés ou décentralisés, mais qui sont totalement acceptables avec Jami.
- Jami est fondamentalement différent des autres outils de communication.
- Jami protège la vie privée de ses utilisateurs
- Un compte Jami est stocké sur l'appareil, il doit être sauvegardé.
### <a name="basics-2">Il manque une fonctionnalité!</a>
Toutes les fonctionnalités ne sont pas encore implémentées dans tous les clients.
Consultez la liste de contrôle sur : <https://git.jami.net/savoirfairelinux/ring-project/wikis/features/All-features-by-client>
Les contributions à ce document sont très appréciées !
Si vous ne pouvez pas attendre de disposer de cette fonctionnalité, vous pouvez essayer un autre client.
### <a name="basics-3">Jami vient de se planter / a un bug. Que puis-je faire ?
- Un rapport de bogue. C'est un moyen très utile de contribuer à Jami. Jetez un coup d'oeil sur : <https://git.jami.net/savoirfairelinux/ring-project/wikis/tutorials/Bug-report-guide> and <https://git.jami.net/savoirfairelinux/ring-project/wikis/tutorials/Reporting-bugs>.
- Si vous le pouvez, essayez un autre client
### <a name="basics-4">Il y a un point d'exclamation orange / rouge à côté de mon avatar. Qu'est-ce que cela signifie ? </a>
C'est parce que votre compte n'est pas connecté à la DHT. Vérifiez votre connexion internet ou essayez de relancer l'application. Si vous utilisez les notifications push, essayez de désactiver cette option (et de la réactiver).
### <a name="basics-5">Où sont situés les fichiers de configuration</a>
Jami sauvegarde 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 de comptes sont sous
**\~/.local/share/jami/**. Enfin, certains caches sont en **~/.cache/jami**
- **OSX**: La configuration complète se trouve sous **\~/Library/Application
Support/Jami** si elle est installée via https://jami.net. Via l'appstore, c'est **\~/Library/Containers/com.savoirfairelinux.ring.macos/Data/Library/Application Support/jami**
- **Android**: La configuration complète est sous **/data/data/cx.ring**
(peut nécessiter des privilèges root)
- **Windows**: La configuration complète est sous
**%AppData%/Local/jami/dring.yml** et les fichiers de compte sont sous
**%AppData%/Local/jami/**. Enfin, certains caches sont en **%USERPROFILE%/.cache/jami**
Remarque : les messages audio et vidéo sont enregistrés dans les données locales dans le dossier : `sent_data`
## Gestion de compte
### <a name="account-1">Qu'est-ce qu'un compte Jami ?</a>
Jami n'est pas comme beaucoup de logiciels de communication. Il n'est pas basé sur un serveur central et votre compte est uniquement stocké sur votre appareil. Lorsque vous voulez utiliser Jami avec votre compte, vous n'avez pas besoin d'utiliser une authentification classique par login/mot de passe.
Lorsque vous créez un nouveau compte Jami, vous n'êtes pas obligé de fournir des informations privées comme une adresse e-mail ou un numéro de téléphone. Mais voici les informations que vous pouvez fournir (toutes les options):
1. Un avatar
2. Un nom d'affichage, c'est le nom que le client affichera sur votre entrée de contact avec l'avatar. Il peut contenir des caractères spéciaux.
3. Un nom d'utilisateur, c'est un identifiant unique qui peut être la traduction directe de votre JamiID. Cet identifiant est stocké sur un serveur (ns.jami.net par défaut). Cf <https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/Name-Server-Protocol> pour plus de détails sur la façon dont vous pouvez utiliser votre propre serveur de noms.
4. Un mot de passe. Ce mot de passe est utilisé pour protéger les archives du compte dans votre appareil.
Ainsi, après cette étape, le client va générer une archive (protégée par le mot de passe que vous avez donné). Cette archive contiendra les clés de votre compte. Et un JamiID est maintenant créé (une chaîne de 40 caractères de longueur. Techniquement, cet ID est l'empreinte digitale de votre clé publique. Et c'est tout, vous avez un compte Jami.
### <a name="account-2">Pas de mot de passe ?</a>
Avec Jami, vous n'êtes pas obligé d'avoir un mot de passe sur votre compte.
Ne vous inquiétez pas, c'est un système décentralisé, les conséquences ne sont pas les mêmes que sur les autres systèmes.
Avec un système centralisé, vous utilisez votre mot de passe pour vous authentifier sur un serveur public. Quelqu'un qui connaît votre mot de passe peut usurper votre identité.
**Avec Jami, votre compte est stocké dans un [dossier]((#basics-5)) sur votre appareil**. Le mot de passe ne sert qu'à vous protéger contre les personnes qui ont un accès physique à votre appareil en cryptant les archives du compte (et ne laissez personne accéder à votre clé privée).
Si votre appareil est crypté, vous n'aurez peut-être pas besoin d'utiliser un mot de passe.
### <a name="account-3">Pas de nom d'utilisateur ?</a>
Pendant un certain temps, Jami n'avait pas de système de gestion des noms d'utilisateur. Au lieu de cela, nous devions utiliser des [Tables de hachage](guidelines/Identifiers). Elles sont assez difficiles à utiliser pour la plupart des gens (ie : 3d1112ab2bb089370c0744a44bbbb0786418d40b). Pour atténuer ce problème, nous avons créé un système qui associe votre [Table de hachage](guidelines/Identifiers) à un nom d'utilisateur de votre choix qui sera beaucoup plus facile à retenir. Nous vous recommandons de créer un nom d'utilisateur : Jami sera plus convivial.
La technologie que nous avons utilisée pour associer un nom d'utilisateur à une [Table de hachage](guidelines/Identifiers), Ethereum blockchain, est également [distribué](https://git.jami.net/savoirfairelinux/ring-project/uploads/9b725e440c2705a2a3c4d0a3df092066/Network-topo.png), mais il ne permet pas de modifier ou de supprimer l'association entre un nom d'utilisateur et une Table de hachage.
Vous pouvez toujours créer un compte sans nom d'utilisateur si vous le souhaitez. Veuillez noter que si vous choisissez cette option, il est toujours possible d'enregistrer un nom d'utilisateur plus tard.
### <a name="account-4">Comment sauvegarder mon compte?</a>
Il y a deux façons de sauvegarder votre compte :
1. Liez un autre appareil à votre compte, afin que votre compte soit présent sur deux appareils. Vous pouvez trouver cette option dans la page des paramètres du compte.
2. Copiez l'archive du compte sur une clé USB ou tout autre endroit. Ce fichier peut être trouvé dans les chemins donnés dans la question précédente. Dans le client linux, vous pouvez exporter cette archive depuis le client dans la page des paramètres du compte.
Voir [Configuration's path](#basics-5)
Le contenu de l'archive `export.gz` est expliquée ici: <https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/2.1.-Manage-Accounts#how-it-works-from-scratch> mais il s'agit essentiellement d'un Json compressé (crypté AES si un mot de passe est défini).
### <a name="account-5">Comment puis-je retrouver mon nom d'utilisateur sans mes clés ?</a>
Cela dépend. Si vous avez utilisé `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é (et il n'y a aucun moyen de changer votre nom d'utilisateur actuel).
Si c'est un autre serveur de nom, cela dépend s'il est possible de changer le nom d'utilisateur lié. Voir cette page pour plus de détails : <https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/Name-Server-Protocol>
### <a name="account-6">J'ai oublié mon mot de passe, que puis-je faire ?</a>
Rien. Parce que nous n'avons pas accès à vos données, nous ne pouvons pas avoir une option comme "J'ai oublié mon mot de passe". Vous êtes le seul responsable de vos données, alors faites attention.
Si vous avez peur d'oublier un mot de passe, utilisez un gestionnaire de mots de passe.
### <a name="account-7">Quel est le code PIN lorsque je veux lier mon compte à un autre appareil ?</a>
Lorsque vous choisissez de "lier votre appareil à un autre compte", vous devez entrer le mot de passe de votre compte sur votre premier appareil et un PIN. Ce PIN est généré par le premier appareil, lorsque vous cliquez sur "Lier ce compte à un autre appareil" (généralement dans Paramètres -> Comptes -> Choisir votre compte -> Lier ce compte à un autre appareil), le compte sera envoyé sur le DHT pendant 5 minutes et un PIN est généré à ce moment. C'est le PIN que vous devez saisir sur l'autre appareil.
### <a name="account-8">Comment supprimer mon compte ?</a>
**Comptes sans Infohash**
Un compte Jami n'existe que sur les appareils liés à ce compte. Il suffit donc de supprimer ce compte dans l'application sur tous ces appareils pour que votre compte n'existe plus. Ou de désinstaller Jami.
Si vous supprimez l'archive du compte, votre compte n'existera plus. Si vous désinstallez Jami, vos données seront également supprimées. Et personne ne sera en mesure de récupérer votre compte. Jamais au grand jamais.
- GNU/Linux
Dans la page des paramètres, allez dans *Compte*, choisissez votre compte et cliquez sur le bouton **Supprimer** dans l'interface graphique. Une autre façon est de supprimer [configuration files](#basics-5)
- Android
Dans le menu déroulant, choisir **Compte**, choisissez le compte à supprimer et cliquez sur l'icône de la corbeille.
**Note pour les comptes avec un nom d'utilisateur**
La technologie qui gère les noms d'utilisateur est également distribuée. Ainsi, cela dépend du service de noms que vous choisissez pour faire la traduction entre un surnom et votre ID Jami. Par défaut, un nom d'utilisateur est enregistré sur `ns.jami.net` où vous ne pouvez pas modifier l'ID Jami associé à ce nom d'utilisateur. Ainsi, si vous supprimez ou si vous perdez votre compte, vous ne pourrez pas récupérer ce nom d'utilisateur, jamais. Personne ne pourra recréer un compte avec le même nom d'utilisateur.
NOTE : Si votre compte a un nom d'utilisateur, celui-ci ne sera pas supprimé. Par exemple, si vous utilisez le nom d'utilisateur `pseudo` sur le serveur de noms `ns.jami.net`, lorsque vous supprimerez votre compte Jami et que vous créerez un nouveau compte, vous ne pourrez pas récupérer ce nom d'utilisateur, car `ns.jami.net` ne peut pas prouver qu'il s'agit de votre nom d'utilisateur.
Si vous ne voulez pas perdre votre compte, veuillez sauvegarder les fichiers liés à celui-ci.
### <a name="account-9">Que se passe-t-il lorsque je lie mon compte à un nouvel appareil ?</a>
Lorsque vous lancez la procédure de fixation, le dossier contenant les informations de votre compte est simplement placé sur le réseau Jami pendant quelques minutes. Il est protégé par un mot de passe que Jami vous communique.
### <a name="account-10">Mon contact ne voit pas mon avatar</a>
En raison des limitations techniques des technologies distribuées, les avatars ne sont transférés à vos contacts que lorsqu'un appel (audio ou vidéo) est établi.
## Audio / video
### <a name="media-1">Comment configurer l'annulation de l'écho ?</a>
Allez dans Paramètres -> Média -> et modifiez votre gestionnaire audio.
Nous vous recommandons d'utiliser Pulse audio.
### <a name="media-2">La vidéo est instable</a>
Utilisez une définition inférieure. Allez dans Paramètres -> Média -> et modifiez la résolution.
Vous pouvez également essayer le mode automatique en cliquant sur le bouton HQ pendant un appel.
### <a name="media-3">Je ne peux pas me voir</a>
Terminez l'appel et vérifiez que vous avez sélectionné le bon périphérique vidéo.
Allez dans Paramètres -> Média -> et changez de périphérique.
Vérifiez que vous pouvez effectivement vous voir dans le panneau de droite des paramètres -> médias.
Vous pouvez vérifier que votre appareil fonctionne en installant l'application cheese.
### <a name="media-4">Les autres ne peuvent pas m'entendre</a>
Terminez l'appel et essayez de changer de pilote audio ou de périphérique d'entrée audio.
### <a name="media-5">Je n'ai pas de son</a>
Terminez l'appel et essayez de changer de pilote audio ou de périphérique de sortie audio.
### <a name="media-6">De quelle largeur de bande ai-je besoin ?</a>
Pour les appels audio, Jami utilise environ 100 Kbps. Pour un appel vidéo, il faut environ 2 Mbit/s pour une qualité moyenne (si la liaison ne le permet pas, le débit sera automatiquement réduit).
Si vous organisez une vidéoconférence, vous aurez besoin d'environ 2 Mbps de plus par participant. Ainsi, pour une conférence avec 10 participants, chaque participant aura besoin de 2Mbps up & down, sauf l'hôte qui aura besoin de 20Mbps up & down.
L'auto-adaptation se fait entre 200Kbit/s / max:6Mbit/s
## Advanced
### <a name="advanced-1">Quelles sont les données qui passent par ma machine lorsque je participe au réseau Jami ?</a>
**Toutes ces données sont cryptées**.
Il y a :
- Les descripteurs ICE des autres utilisateurs de Jami. ICE est un protocole qui aide à établir la communication entre deux ordinateurs
- certains messages texte
- comme indiqué ci-dessus, les comptes sont actuellement liés à un nouvel appareil
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 (le réseau distribué) selon qu'un canal de communication VOIP est déjà ouvert ou non.
### <a name="advanced-2">Pourquoi suis-je capable de communiquer avec moi-même ?</a>
De nombreux utilisateurs utilisent Jami pour transférer des données d'une machine à une autre.
### <a name="advanced-3">Dois-je activer les notifications push ?</a>
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 seul identifiant est transféré et il est inutilisable pour toute personne n'ayant pas accès à votre compte.
### <a name="advanced-4">Qu'est-ce qu'un proxy DHT ?</a>
Le proxy de la DHT est un serveur qui s'enregistre sur la DHT pour vous et qui vous relaie vos informations. C'est donc le serveur qui sera actif sur la DHT et participera au réseau, et non plus le dispositif cible. Plusieurs appareils peuvent s'enregistrer sur le même proxy DHT.
### <a name="advanced-5">Comment fonctionne le service d'enregistrement des noms d'utilisateur ?</a>
Pour les paramètres par défaut, les noms d'utilisateurs sont enregistrés sur une blockchain Ethereum. Par défaut, c'est ns.jami.net qui est utilisé, mais si vous êtes un développeur, vous pouvez créer votre propre système. Ainsi, rien ne vous oblige à le mettre en œuvre avec une blockchain. Vous pouvez vérifier les résultats à l'adresse http://ns.jami.net/name/test, où "test" est un nom d'utilisateur pour lequel nous recherchons une [table de hachage] (instructions/Identifiants) correspondant. Une fois enregistré, ce serveur ne fournit pas de moyen de supprimer la correspondance. Plus d'informations ici : https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/Name-Server-Protocol
### <a name="advanced-6">Comment puis-je modifier le délai d'attente pour un appel ?</a>
Dans le fichier `dring.yml`, vous pouvez modifier votre ringingTimeout (en secondes)
### <a name="advanced-7">Comment sauvegarder et réimporter des conversations et des comptes ?</a>
Note : Ceci n'est que pour les clients basés sur LRC (desktop).
D'abord vous devez exporter tous vos comptes (Pour GNU/Linux : Settings => Account => Export account). Ensuite vous devrez copier la base de données (dans `~/.local/share/jami` par exemple).
Ensuite, sur le nouvel appareil, lorsque vous ouvrirez Jami pour la première fois, vous devrez réimporter vos comptes via l'archive précédemment sauvegardée. Cela réimportera vos paramètres et vos contacts (avec des conversations vides). Fermez ensuite le client et remplacez la base de données par celle précédemment sauvegardée. C'est tout !
### <a name="advanced-8">Vous êtes en sécurité ?</a>
** Nous utilisons TLS/SRTP pour sécuriser la connexion et les communications sur le réseau.
Nous implémentons SRTP sur SIP en utilisant les recommandations écrites dans les RFCs suivantes :
- [`http://tools.ietf.org/html/rfc3711`](http://tools.ietf.org/html/rfc3711)
- [`http://tools.ietf.org/html/rfc4568`](http://tools.ietf.org/html/rfc4568)
En général, deux types de connecteur réseau (socket) sont négociés. L'un pour le connecteur réseau de contrôle, l'autre pour les connecteur réseau de média.
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 (fallback) supported: "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"
Les suites cryptographiques prises en charge pour la session média sont les suivantes :
- AES_CM_128_HMAC_SHA1_80 / SRTP_AES128_CM_HMAC_SHA1_80
- AES_CM_128_HMAC_SHA1_32 / SRTP_AES128_CM_HMAC_SHA1_32
### <a name="advanced-9">Quand les IP publiques sont-elles exposées ?</a>
Nous pouvons décrire 3 principaux scénarios de connectivité. Une configuration classique (1.), derrière un VPN (2.), via Tor (3.). Comme Jami est une application p2p, je pense que vous comprenez que (2.) ou (3.) est un peu obligatoire pour éviter les fuites d'IP.
De plus, même si c'est ma réponse, vous pouvez choisir de ne pas faire confiance à ma réponse et vérifier le code, ou utiliser wireshark ou d'autres outils. En général, j'utilise (et les autres développeurs je pense) le premier scénario (parfois le second), et nous ne pouvons sûrement pas tester tous les réseaux que nous voulons, donc si vous découvrez un bug, merci d'ouvrir une issue (question sur le git).
Quoi qu'il en soit, dans ces 3 scénarios, il y a 3 actions principales :
+ Envoyer un message (en utilisant la DHT).
+ Envoyer un fichier (connexion TCP ICE comme décrit ici : https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/2.5.%20File%20transfer)
+ Effectuer un appel, connexion (TCP + UDP ICE) décrite ici : https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/2.4.%20Let's%20do%20a%20call)
#### 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 la DHT utiliseront vos ips. C'est pourquoi Jami a l'option d'utiliser un dhtproxy (par exemple dhtproxy.jami.net), ce qui évitera d'utiliser votre noeud, mais utilisera un autre noeud 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 de la 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 il verra l'IP du proxy).
- Envoyer un fichier
Comme décrit dans la documentation, vous enverrez un message avec toutes les IP que vous connaissez et que votre interlocuteur peut contacter dans un paquet crypté. Ainsi, si votre pair vous envoie un fichier ou si vous envoyez un fichier, vos adresses apparaîtront dans le message ICE.
- Appels
Même chose que ci-dessus, l'IP est présente dans le message ICE.
#### derrière un VPN
- Envoyer un message
L'IP de votre VPN sera utilisée par le noeud DHT. Si vous voulez une preuve, vous pouvez compiler dhtnode et exécuter la commande 'la' pour obtenir votre adresse publique détectée. C'est ce que j'ai obtenu :
```
./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
```
Ainsi, si vous n'utilisez pas de proxy, vos adresses VPN seront utilisées pour utiliser la DHT. Si vous utilisez un dhtproxy, le dhtproxy verra vos adresses VPN.
- Envoyer un fichier
Comme ci-dessus, l'ICE contiendra :
+ les adresses de votre LAN
+ l'adresse publique de votre VPN
+ l'adresse de TURN si TURN est activé
- Faire un appel
Comme ci-dessus, votre adresse publique est remplacée par votre adresse VPN. Vous pouvez le voir dans les logs du démon. Voir https://git.jami.net/savoirfairelinux/ring-project/wikis/tutorials/Bug-report-guide#logs
#### Tor
- Envoyer un message
Tor ne supporte pas UDP. Cela signifie que vous ne pouvez pas utiliser votre noeud DHT localement, vous DEVEZ utiliser un DHTProxy. Ce proxy verra le noeud Exit.
- Envoyer un fichier
Je préfère une preuve que toute description. Donc, j'ai fait un transfert de fichier avec Jami + TOR. Voici ce que je vois dans les logs pour le remote :
```
[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 des 192.168.x.x donc nous ne nous en soucions pas. 51.254.39.157 est l'adresse de TURN en France (mon appareil est au Canada). 185.220.101.24 est le noeud de sortie de Tor :
```
inetnum: 185.220.101.0 - 185.220.101.127
netname: MK-TOR-EXIT
```
- Effectuer un appel
Cela ne fonctionnera pas (en fait, vous pouvez créer la connexion de contrôle SIP car c'est une connexion TCP), mais les médias sont négociés en UDP, donc cela échouera.
### <a name="advanced-10">Quels sont les ports utilisés par Jami ??</a>
Jami fonctionne comme un serveur et obtient de nouveaux ports pour chaque connexion (liés de manière aléatoire). Ce sont les plages qui peuvent être utilisées pour chaque composant :
+ dht: UDP [4000, 8888]
+ audio: UDP [16384-32766]
+ video: UDP [49152-65534]
+ SIP Control: UDP/TCP randomly binded
Note : si UDP est bloqué, un dhtproxy peut être utilisé pour utiliser TCP à la place. Notez que medias ne fonctionnera pas car il ne supporte que UDP.
Donc pour ufw, nous recommandons d'exécuter :
`sudo ufw default allow outgoing`
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, nameserver : TCP [80-100], 443
Si vous utilisez votre propre serveur TURN :
+ TURN/STUN : TCP+UDP 3478, 5349
### <a name="advanced-11">Comment puis-je configurer encore plus les codecs ?
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"
}
}
```
or:
```
{
"libopus": {
"bit_rate": 128000
}
}
```
Ce fichier est situé dans le même répertoire que [`dring.yml`](#basics-5)
La meilleure façon de vérifier quelles options sont supportées est d'utiliser la commande "ffmpeg -h encoder=\[nom_encodeur\]" où nom_encodeur peut être n'importe lequel de libx264, libvpx, mpeg4, h263, libopus, libspeex, g722, pcm_alaw, pcm_mulaw (noms de FFmpeg pour tous les encodeurs supportés par Jami).
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment