Update Tutorial in app

This commit is contained in:
Pierre Duchemin 2019-01-31 10:55:00 -05:00
parent 422a33b1d1
commit ea3ba44af1
1 changed files with 92 additions and 31 deletions

View File

@ -1,23 +1,41 @@
- [What is Jami?](#1)
- [Jami basics](#2)
- [No password?](#3)
- [No usernames?](#4)
- [How to delete my account?](#5)
- [What happens when I bind my account to a new device?](#6)
- [What data passes through my machine when I participate in the Jami network?](#7)
- [Why am I able to communicate with myself?](#8)
- [Should I enable push notifications ?](#9)
- [What is DHT proxy?](#10)
- [How the username registration service works?](#11)
- [How can I change the timeout for a call](#12)
- [How to back up and reimport conversations and accounts](#13)
# Jami tutorial
It is important that users who wants so can easily learn how Jami works.
Today, many are lost from the account creation wizard.
## Basics
- [What is Jami?](#basics-1)
- [Jami basics](#basics-2)
- [It misses a feature!](#basics-3)
- [Jami just crashed. What can I do?](#basics-4)
## Account management
- [No password?](#account-1)
- [No usernames?](#account-2)
- [How to delete my account?](#account-3)
- [What happens when I bind my account to a new device?](#account-4)
- [My contact is not seeing my avatar](#account-5)
## Audio / video
- [How to configure echo cancellation?](#media-1)
- [Video is laggy](#media-2)
- [I can't see myself](#media-3)
- [Others can't ear me](#media-4)
- [I have no sound](#media-5)
## Advanced
- [What data passes through my machine when I participate in the Jami network?](#advanced-1)
- [Why am I able to communicate with myself?](#advanced-2)
- [Should I enable push notifications ?](#advanced-3)
- [What is DHT proxy?](#advanced-4)
- [How the username registration service works?](#advanced-5)
- [How can I change the timeout for a call](#advanced-6)
- [How to back up and reimport conversations and accounts](#advanced-7)
This page aims to gather as many resources as possible (technical or not) and
condense them to create concise documentation. Then, this can then be
integrated into a tutorial or a help page in the clients.
integrated into a tutorial or a help page on the website or in the clients.
Resources :
@ -25,19 +43,32 @@ Resources :
- <https://ring.cx/en/about/privacy-and-anonymity>
- <https://ring.cx/en/about/practical>
# <a name="1">What is Jami?</a>
## <a name="basics-1">What is Jami?</a>
Jami is an innovative communication system. It doesn't work like other solutions since its designed to protect user's freedom.
The Jami network is [distributed](https://git.ring.cx/savoirfairelinux/ring-project/uploads/9b725e440c2705a2a3c4d0a3df092066/Network-topo.png), hence, you may be invited to perform some actions that are considered bad practices on centralized or decentralized systems, but that are totally acceptable with Jami.
# <a name="2">Jami basics</a>
## <a name="basics-2">Jami basics</a>
- Jami is fundamentally different from other communication tools
- Jami protects the privacy of its users
- A Jami account is stored on the device, it must be saved
# <a name="3">No password?</a>
## <a name="basics-3">It misses a feature!</a>
Not all features are implemented in all clients yet.
Check list at: <https://git.jami.net/savoirfairelinux/ring-project/wikis/features/All-features-by-client>
Contributions to this document are greatly appreciated!
If you can't wait to have this feature, you can try another client.
## <a name="basics-4">Jami just crashed. What can I do?</a>
- A bug report. This is a very useful way to contribute to Jami. Please have a look at <https://git.jami.net/savoirfairelinux/ring-project/wikis/tutorials/Bug-report-guide> and <https://git.jami.net/savoirfairelinux/ring-project/wikis/tutorials/Reporting-bugs>.
- Try another client
## <a name="account-1">No password?</a>
With Jami, you are not forced to have a password on your account.
Don't worry, it's a decentralized system, consequences are not the same than on other systems.
@ -48,7 +79,7 @@ With a centralized system, you use your password to authenticate on a public ser
If your device is encrypted, you may not want/need to use a password.
# <a name="4">No username?</a>
## <a name="account-2">No username?</a>
For a while, Jami had no username management system. Instead, we had to use [Infohashs](guidelines/Identifiers). They are quite difficult to use for most people (ie : 3d1112ab2bb089370c0744a44bbbb0786418d40b). To mitigate the issue, we created a system that associate your [Infohashs](guidelines/Identifiers) to a username of your choice that will be much more easier to remember. We recommand you to create a username: Jami will be friendlier.
@ -56,9 +87,9 @@ The technology we used to associate a username to a [Infohashs](guidelines/Ident
You can still create an account without a username if you wish. Please note that if you choose this option, it is still possible to register a username later.
# <a name="5">How to delete my account?</a>
## <a name="account-3">How to delete my account?</a>
## Accounts without Infohash
### Accounts without Infohash
A Jami account only exists on linked devices with this account. So, you only have to delete this account in app on all these devices and your account will not exists anymore. Or to uninstall Jami.
@ -70,17 +101,47 @@ In the settings page, go to *Accounts*, choose your account and click on the **D
In the hamburger menu, choose **Manage accounts**, choose the account to delete and click on the trash icon.
## Note for accounts with a username
### Note for accounts with a username
The technology that handle usernames is also distributed. So, it depends the nameservice you choose to make the translation between a nickname and your Jami ID. By default, a username is registered on `ns.ring.cx` where you can't modify the Jami ID associated to this username. So, if you delete or if you lost your account you will not be able to retrieve this username, ever. Nobody will be able to recreate an account with the same username.
If you do not want to lose your account, please back-up files related to this one.
# <a name="6">What happens when I bind my account to a new device?</a>
## <a name="account-4">What happens when I bind my account to a new device?</a>
When you start the binding procedure, the folder containing your account information is simply put on the Jami network for a few minutes. It is protected by a password Jami gives you.
# <a name="7">What data passes through my machine when I participate in the Jami network?</a>
## <a name="account-5">My contact is not seeing my avatar</a>
Due to technical limitations of distributed technologies, avatars are only transfered to your contacts when a call (audio or video) is established.
## <a name="media-1">How to configure echo cancellation?</a>
Go to settings -> media -> and set change your audio manager.
We recommend using Pulse audio.
## <a name="media-2">Video is laggy</a>
Use a lower definition. Go to settings -> media -> and change resolution.
You can also try auto mode by clicking the HQ button during a call.
## <a name="media-3">I can't see myself</a>
End call and check that you have selected the right video device.
Go to settings -> media -> and change device.
Check that you can effectively see yourself in the right panel of settings -> media.
You can double check that your device is working by installing the cheese application.
## <a name="media-4">Others can't ear me</a>
End call and try changing audio driver or audio input device.
## <a name="media-5">I have no sound</a>
End call and try changing audio driver or audio output device.
## <a name="advanced-1">What data passes through my machine when I participate in the Jami network?</a>
**All these data are encrypted**.
There is:
@ -92,27 +153,27 @@ There is:
Audio/video streams and some text messages pass through the VOIP protocol.
Text messages can be sent either via VOIP or DHT (the distributed network) depending on whether a VOIP communication channel is already open or not.
# <a name="8">Why am I able to communicate with myself?</a>
## <a name="advanced-2">Why am I able to communicate with myself?</a>
Many users use Jami to transfer data from one machine to another.
# <a name="9">Should I enable push notifications?</a>
## <a name="advanced-3">Should I enable push notifications?</a>
Push notifications allow Jami to operate in a way more adapted to the context of mobility (energy consumption, data...). However, for the moment, notifications go through Google's servers, via the Firebase service. Only one identifier is transferred and it is unusable for anyone who does not have access to your account.
# <a name="10">What is DHT proxy?</a>
## <a name="advanced-4">What is DHT proxy?</a>
The DHT proxy is a server that registers on the DHT for you and relays your information to you. Thus, it is the server that will be active on the DHT and will participate in the network, and no longer the target device. Multiple devices can register on the same DHT proxy.
# <a name="11">How the username registration service works?</a>
## <a name="advanced-5">How the username registration service works?</a>
The usernames are registered on an Ethereum blockchain. By default, it's ns.ring.cx that is used, but if you are a developper, you can create your own system. Hence, nothing forces you to implement it with a blockchain. You can check results at http://ns.ring.cx/name/test, where "test" is a username for which we are looking for a matching [Infohashs](guidelines/Identifiers).
# <a name="12">How can I change the timeout for a call</a>
## <a name="advanced-6">How can I change the timeout for a call</a>
In the `dring.yml` file, you can change your ringingTimeout (in seconds)
# <a name="13">How to back up and reimport conversations and accounts</a>
## <a name="advanced-7">How to back up and reimport conversations and accounts</a>
Note: This is only for client based on LRC (desktop ones)