FAQ
Esta é uma lista de perguntas frequentes (FAQ), incluindo algumas questões técnicas.
As perguntas do [Fórum] (https://forum.jami.net/) também são adicionadas aqui.
Princípios básicos
O que é o Jami?
Ver a Introdução.
O que significa Jami?
The choice of the name Jami was inspired by the Swahili word jamii, which means community
as a noun and together
as an adverb.
It was chosen as it reflects the vision for the project:
um programa gratuito/livre disponível para todos que ajuda a unir as comunidades,
é apoiado pela comunidade e
respeita a liberdade e a privacidade dos utilizadores.
Como posso comunicar um erro?
Por favor, veja o [Guia de relatório de erros] (bug-report-guide.md).
O que diferencia o Jami das outras plataformas de comunicação?
Jami does not work like most communication platforms because it is distributed.

Some of the consequences may seem surprising. For instance, since accounts are stored on the user’s device, passwords are optional. However, the most significant practical differences are that the user has more freedom and privacy.
What do the 🟢 green, 🟠 orange, and 🔴 red status circles next to profile pictures mean?
On a user’s account, 🔴 (a red circle) displayed means that the device is not connected to the DHT network or is offline. A detailed error should be displayed explaining the issue. Checking the network/Internet connection or restarting the application may resolve the issue.
Para contactos:
No circle displayed means that no device is detected on the DHT network. The contact is unreachable.
🟠 (an orange circle) displayed means that at least one device is announced on the DHT network, so the contact SEEMS to be reachable. The device does not have a direct connection to this peer yet. But they should be able to receive connection requests. Because the device is not directly connected to anything, the device status is unable to be determined for sure. So this can be translated to «Seems to be reachable,» but the connection may fail (due to a firewall, deadlock, or NAT). The presence generally has a TTL time of:
10 minutes over the DHT network, and
several hours if push notifications are enabled.
🟢 (um círculo verde) apresentado significa que o dispositivo está conectado a um dispositivo deste par.
Porque é que uma funcionalidade não existe no meu cliente?
Features vary by client. For the feature comparison by client, visit the All features by client page. To submit feature requests, visit the https://git.jami.net/groups/savoirfairelinux/-/issues page.
O Jami suporta recibos de leitura? Posso ativá-los ou desativá-los?
Yes. Read receipts can be enabled or disabled in the settings on Jami for Desktop, Android, Android TV, and iOS.
O Jami suporta indicadores de escrita? Posso ativá-los ou desativá-los?
Sim. Os indicadores de digitação podem ser ativados ou desativados nas definições do Jami para computador, Android e iOS.
Posso fazer chamadas de conferência de grupo?
Sim. Os contactos Jami podem ser adicionados a chamadas (áudio ou vídeo) clicando no botão «Adicionar participante».
A Jami apoia as conversas de grupo?
Sim.
Porque é que as minhas mensagens enviadas não estão a aparecer em todos os dispositivos vinculados?
Antes da implementação da tecnologia Enxame, os dispositivos de uma conta só recebiam as mesmas mensagens dos contactos se o dispositivo estivesse online no momento em que a mensagem era enviada. No entanto, as mensagens enviadas não apareciam noutros dispositivos para além daquele que enviava a mensagem.
With the implementation of Swarm Technology, conversation histories of new conversations (including one-on-one conversations) are fully synchronized between all of an account’s linked devices. Please upgrade all old versions of Jami to the latest version that includes Swarm Technology. The latest version of Jami is always available from the Download page of the Jami website, at https://jami.net/download/.
Para saber mais sobre a tecnologia Enxame, visite a publicação do blogue Sincronizar o histórico de conversas com o Swarm e visite o Manual do programador.
Posso enviar mensagens para contactos offline?
Com as conversações da tecnologia Enxame, cada dispositivo armazena uma cópia de todas as mensagens dessa conversação. Se o dispositivo de um utilizador, ou de outro participante, estiver inacessível quando uma mensagem é enviada, quando se tornar acessível, tentará obter quaisquer mensagens novas de outros dispositivos acessíveis e sincronizar o histórico de mensagens. Isto pode ser feito sempre que pelo menos um outro dispositivo que tenha uma cópia das novas mensagens também esteja acessível.
Veja também
Para ler mais sobre a forma como as conversações da tecnologia Enxame são sincronizadas, visite a publicação do blogue [Sincronizar o histórico de conversações com o Enxame] (https://jami.net/synchronizing-conversation-history-with-swarm/).
If the participants in a conversation are often not online at the same time (for instance, due to different time zones), one of them might choose to set up Jami on an often-online device. The often-online device would receive the messages from each participant and relay them to the others whenever they come online. Thus, Jami acts like a «server» while remaining completely distributed by nature.
Veja também
To set up Jami on often-online devices, visit the Jami on servers page.
Onde estão localizados os ficheiros de configuração?
O Jami guarda a sua configuração (conta, certificados, histórico) em locais diferentes, consoante a plataforma.
GNU/Linux: global configuration is under
~/.config/jami/dring.yml
, and account-specific files are under~/.local/share/jami/
. Finally, there is a cache directory at~/.cache/jami/
.macOS: the full configuration is under
~/Library/Application Support/Jami/
if installed via https://jami.net. The App Store version uses~/Library/Containers/com.savoirfairelinux.ring.macos/Data/Library/Application Support/jami/
.Android: a configuração completa está em
/data/data/cx.ring/
(pode exigir privilégios de root para ver ou alterar de fora do Jami).Windows: a configuração global está em
%AppData%/Local/jami/dring.yml
, e os ficheiros específicos da conta estão em%AppData%/Local/jami/
. Finalmente, existe um diretório de cache em%USERPROFILE%/.cache/jami/
.
Nota
As mensagens de áudio e vídeo são gravadas nos dados locais, na pasta: sent_data
Para os ficheiros, se um ficheiro for guardado (clique com o botão direito do rato no ficheiro e depois em Guardar), será adicionado ao diretório configurado nas definições da aplicação.
How much bandwidth is required for calls?
Para as chamadas de áudio, o Jami utiliza cerca de 100 Kbps. Para uma chamada de vídeo, são necessários cerca de 2 Mbit/s para uma qualidade média. Se a ligação for mais lenta, a taxa de bits será automaticamente reduzida.
If a device is hosting a video conference, approximately an additional 2 Mbps per participant is required. So, for example, for a conference with 10 participants, each participant requires 2 Mbps up and down, and the host requires 20 Mbps up and down.
Jami also uses an algorithm to change the consumption depending on the quality of the link. So, the bitrate can have a minimum of 200 Kbit/s and a maximum of 6 Mbit/s.
Como é que a Savoir-Faire Linux Inc. (SFL) pode dar-se ao luxo de oferecer o Jami gratuitamente? Como é que a SFL ganha dinheiro com o Jami?
Savoir-Faire Linux Inc. (SFL) is a consulting company with some R&D projects. Jami is a GPLv3+ project, and this will not change. SFL already sells services for several fields of expertise (such as hosting, developing websites and applications, and embedded software).
A Jami é financiada de várias formas:
Serviços para outros projetos
Visibilidade
Jami’s recurring expenses:
As a distributed system, Jami incurs very low costs by design.
A recolha opcional de estatísticas anónimas pode ser adicionada no futuro para compreender melhor a utilização do Jami; no entanto, não serão recolhidos dados pessoais.
Gestão de contas
O que é uma conta Jami?
A Jami account is an asymmetric encryption key. The Jami account is identified by a Jami ID, which is a fingerprint of the public key.
What information is required to be provided to create a Jami account?
Quando é criada uma nova conta Jami, não são necessárias informações privadas como o endereço de correio eletrónico, a morada ou o número de telefone.
Podem ser fornecidas as seguintes informações:
Uma fotografia de perfil (opcional).
Um nome de apresentação (opcional), que é o nome que os clientes mostrarão para o seu contacto. Pode conter caracteres especiais.
Um nome de utilizador (opcional), que é um identificador único que está diretamente associado ao seu Jami ID. Este mapeamento nome de utilizador→ID do Jami é armazenado num servidor (
ns.jami.net
por defeito, mas pode alojar o seu próprio).Uma palavra-passe (opcional). Esta palavra-passe é utilizada para proteger o arquivo da conta no dispositivo.
Veja também
Mais informações sobre as contas Jami estão disponíveis na secção Gestão de contas do manual do Programador.
Onde está o meu Jami ID?
The Jami ID is displayed on the main page of the Jami application.
The Jami ID is a 40-character string of letters and numbers; for example, f2c815f5554bcc22689ce84d45aefdda1bce9146
.
Porque não tenho de usar uma palavra-passe?
On a centralized system, a password is required to authenticate with a public server where accounts are stored. Any third party who knows a person’s password could steal the person’s identity.
Com o Jami, a conta é armazenada numa pasta no dispositivo. Não existe um servidor público onde as contas Jami são armazenadas. Por conseguinte, não é necessária uma palavra-passe da conta com o Jami. A palavra-passe só é utilizada para encriptar uma conta Jami, de modo a proteger a conta Jami de alguém que tenha acesso físico ao dispositivo.
A password may not be wanted or required if the device is encrypted. Recent versions of Jami do not ask for an account encryption password by default when creating new accounts.
Nota
Changing a password will only change the password on the current device, and it’s not synced (because there is no server, and other devices can be offline anyway).
Porque não tenho de registar um nome de utilizador?
The most permanent, secure identifier is the Jami ID.
However, these are difficult to use for some people; there is also the option of registering a username.
Username registration requires a name server, such as the default Jami name server at ns.jami.net
.
Se não registar um nome de utilizador, pode optar por registar um mais tarde, em qualquer altura.
Se você hospedar seu próprio servidor de nomes em example.com
, os nomes de utilizadores registados lá podem ser procurados pesquisando por username@example.com
.
Posso mudar o meu nome de utilizador?
Os nomes de utilizador não podem ser alterados no servidor de nomes predefinido (ns.jami.net
).
Qual é a diferença entre um nome de utilizador e um nome de apresentação?
O nome de utilizador pode ser utilizado como um identificador. O nome de utilizador aponta para o Jami ID, que é o identificador permanente e seguro. Os nomes de utilizador são únicos no servidor de nomes.
A display name allows you to choose another name that identifies a Jami account to contacts. Display names can be edited or changed at any time, and only trusted peers can see them.
Como é que posso fazer uma cópia de segurança da minha conta?
Existem duas formas de efetuar uma cópia de segurança de uma conta:
Link another device to the account so the account will be on two devices. This option is available on the Account settings page.
Fazer a cópia de segurança do arquivo da conta. Estão disponíveis mais informações sobre as contas Jami na secção Gestão de contas do Manual do programador. Alguns clientes permitem exportar o arquivo da conta Jami a partir das Configurações de conta.
Posso recuperar o meu nome de utilizador sem as minhas chaves?
Se o servidor de nomes padrão em ns.jami.net
armazena um nome de utilizador, o nome de utilizador não pode ser recuperado sem a chave. Não há nenhuma maneira de provar um nome de utilizador sem a chave.
Se tiver sido utilizado um servidor de nomes diferente para armazenar um nome de utilizador, pode haver uma forma de mover o nome de utilizador para um novo Jami ID, à discrição do administrador do servidor de nomes.
Veja também
Estão disponíveis mais informações sobre servidores de nomes na secção [Protocolo do servidor de nomes] (/developer/jami-concepts/name-server-protocol.md) do manual do Programador.
Posso recuperar a minha conta se me esquecer da minha palavra-passe?
Não. Não existe um processo tradicional de recuperação de contas; o utilizador é a única pessoa com acesso aos seus dados.
Dica
Use a password manager if there is a concern about forgetting the Jami account password.
O que acontece quando elimino a minha conta?
The Jami account is only stored on devices that have the Jami account.
A conta Jami desapareceu e não pode ser restaurada se:
não existe qualquer cópia de segurança da conta Jami, e
a conta Jami é eliminada de todos os dispositivos.
Além disso, mais ninguém pode utilizar a conta Jami.
The contacts will still have the messages that were sent to them, but all public record of the account on the DHT network will eventually disappear due to absence and lack of activity.
Aviso
The default ns.jami.net
name server does not delete any registered usernames—other name servers might (not recommended), at their administrator’s discretion.
So, if an account has a registered username on the default name server and the account is deleted or lost (without a backup), nobody (including the user) will be able to register a new account with that username again; thus, nobody can reach the user at that username anymore.
To avoid losing an account, please back it up!
O que acontece quando vinculo um novo dispositivo?
Quando um dispositivo é ligado a uma conta, o arquivo da conta Jami é colocado na rede Jami durante alguns minutos. A conta Jami é protegida com uma palavra-passe fornecida pela Jami.
O novo dispositivo recebe o certificado de conta completo com as chaves RSA principais e gera uma nova chave de dispositivo para assinar / encriptar mensagens.
Avançado
Que protocolo é que o Jami utiliza para a encriptação de ponta a ponta?
TLS (Transport Layer Security) protocol version 1.3 is used with a perfect forward secrecy requirement for the negotiated ciphers for calls and file transfers. Messages are encrypted with an RSA key.
What data passes through my device when I participate in the Jami network?
All this data is encrypted. There are:
ICE descriptors of other Jami users (the ICE protocol helps establish communication between two devices)
determinadas mensagens de texto
contas que estão atualmente vinculadas a um novo dispositivo, conforme explicado acima.
Audio/video streams and some text messages pass through the VoIP protocol. Text messages can be sent either via a VoIP channel or the DHT network, depending on whether a VoIP communication channel is already open or not.
Porque é que sou capaz de comunicar comigo próprio?
Many users use Jami to transfer data from one device to another. A benefit of transferring data using Jami is that no third-party server is required.
Dica
This is one of the many unique features of Jami.
Add yourself as a contact to enable:
Peer-to-peer (without a third-party server) file transfers between your devices.
Calling your account on other devices if you forget where the device is.
Having one account shared in a family or organization to answer calls from shared contacts.
Calling yourself to talk with members in the family or organization who are at different locations.
Writing notes and lists to yourself that are available on all your devices.
Other use cases that are not listed here.
Devo ativar as notificações push?
Push notifications allow Jami to operate in a way more adapted to the context of mobility (for example, energy consumption and data usage). Notifications go through the Firebase service on Google servers, the UnifiedPush system, or the Apple Push Notification service (APNs). Only one identifier is transferred, and it is unusable for anyone who does not have access to the account.
O que é um servidor bootstrap?
A bootstrap server provides an entry point to a distributed network.
To connect to a network, Jami must know one other node.
This is the role of the bootstrap server.
It can be any node in the network, but bootstrap nodes are generally always up and available.
The default Jami bootstrap server is bootstrap.jami.net
.
O que é um servidor TURN? O que é o STUN?
A TURN server is a relay and is generally used when two peers are unable to contact each other due to some firewall restriction, have NAT without any open port, and have no IPv6 address.
A STUN server is only used for SIP accounts and is generally used to obtain the public IP address of the device. For Jami accounts, the DHT network already provides the public IP address of the device.
What is a DHT proxy?
The DHT proxy is a server that registers on the DHT network on behalf of the device and relays information to and from the device. Thus, it is the server that will be active on the DHT network and will participate in the network, and no longer the target device. Multiple devices can register on the same DHT proxy.
Geralmente, para transferir dados entre dois pares, existem 3 etapas:
Exchange candidates (IP addresses) via the DHT network.
Negotiate the best P2P channel between the peers.
Transmitir dados neste socket.
The DHT proxy is only used for the first step.
What if I disable the DHT proxy on Android, and what about push notifications?
There are 3 modes on how to use the Android application:
With push notifications (DHT proxy must be enabled). This mode supports notifications for Android (via Google/Firebase, UnifiedPush, or Apple/APN). This decreases battery usage by removing the sync required with the DHT network and without any socket always alive.
Sem notificações push, mas com o proxy DHT ativado. Isto evita que a aplicação se sincronize com outros nós, mas a opção “Executar em segundo plano” DEVE estar ativada para evitar que o sistema operativo “mate” a aplicação.
Sem proxy DHT. Neste caso, a opção “Executar em segundo plano” DEVE ser ativada para evitar que o sistema operativo mate a aplicação. A aplicação sincronizar-se-á com os outros nós DHT.
Ainda tenho problemas com a aplicação Android mesmo que a otimização da bateria seja desativada
Leia https://dontkillmyapp.com para obter mais detalhes. Se não resolver os problemas, abra um relatório de erro (de preferência com um cenário para ajudar a reproduzir e/ou registos).
Como funciona o serviço de registo de nome de utilizador?
Com o servidor de nomes padrão (ns.jami.net
), os nomes de utilizador são registados numa blockchain Ethereum. É possível desenvolver um servidor de nomes com qualquer tecnologia de armazenamento de dados subjacente. Por exemplo, pode ser usado uma base de dados SQL em vez de um blockchain para a tecnologia de armazenamento de dados.
Com o servidor de nomes predefinido, procure nomes de utilizador com https://ns.jami.net/name/test
, onde test
é um nome de utilizador para o qual estamos à procura de um Infohash correspondente.
Uma vez registado, o servidor de nomes não fornece qualquer forma de remover o mapeamento.
Estão disponíveis mais informações sobre servidores de nomes na secção [Protocolo do servidor de nomes] (/developer/jami-concepts/name-server-protocol.md) do manual do Programador.
Como é que posso alterar o tempo limite de uma chamada?
In the dring.yml
file (see Onde estão localizados os ficheiros de configuração?), the ringingTimeout
value, measured in seconds, can be changed.
Como fazer cópias de segurança e reimportar conversas e contas
Nota
Isso só é aplicável a clientes de desktop. Os clientes desktop são executados nos sistemas operacionais GNU/Linux, macOS e Windows.
Export each account. (For GNU/Linux:
Open settings
→Account
→Manage account
→Backup account
).Copie e guarde a base de dados (em
~/.local/share/jami/
por exemplo).No novo dispositivo, para importar as configurações e os contactos com conversas vazias:
If Jami is opened for the first time, import the archive backup.
I already have an account
→Import from an archive backup
.If Jami already has an account, import each archive backup.
Add another account
→I already have an account
→Import from an archive backup
.
Feche o Jami e substitua a base de dados pela base de dados anteriormente guardada.
Até que ponto está seguro?
TLS/SRTP is used to secure connections and communications over the network.
SRTP over SIP is implemented using recommendations described in the following two RFCs:
Normalmente, são negociados 2 tipos de sockets. Um para o socket de controlo e o outro para os sockets de media.
A typical control session will use the following cipher suite:
(TLS1.3)-(ECDHE-SECP384R1)-(RSA-PSS-RSAE-SHA384)-(AES-256-GCM)
(TLS_ECDHE_RSA_AES_256_GCM_SHA384)
Suporte para DTLS (fallback):
"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"
Supported crypto suites for the media session are:
AES_CM_128_HMAC_SHA1_80 / SRTP_AES128_CM_HMAC_SHA1_80
AES_CM_128_HMAC_SHA1_32 / SRTP_AES128_CM_HMAC_SHA1_32
When do public IP addresses get exposed?
Three main connectivity scenarios are considered: (1) a classic configuration, (2) behind a VPN, and (3) via Tor.
As Jami is a P2P application, the reader would probably know that (2) or (3) is mandatory to avoid IP address leaking.
Moreover, even if it’s my answer, you can choose to not trust my answer and check the code, use Wireshark, or use other tools. Generally, Jami developers use the first scenario (sometimes the second one). It is impossible for the Jami developers to test all possible network configurations. If you discover a bug, please open an issue.
Para os três cenários, existem três ações principais:
sending a message (this will use the DHT network);
enviar um ficheiro (ligação TCP ICE como descrito na secção Transferência de ficheiros do manual do Programador; e
fazer uma chamada (ligação TCP + UDP ICE como descrito na secção Chamadas do manual do programador.
(1) Uma configuração clássica
Enviar uma mensagem
The Jami application is running a DHT (https://opendht.net) node on your device. So every operation on the DHT network will use your IP address. This is why Jami has the option to use a DHTProxy (for example, http://dhtproxy.jami.net/); this will avoid using your node and instead will use another node on the network (which will see your IP address). Note that your message is not sent directly to the other device. In fact, your message is sent on some nodes of the DHT network, and your contact will retrieve the message on this node. So, your contact does not see your IP address at this step, but the node that gets the message will (or they will see the IP address of the proxy).
Enviar um ficheiro
As described in the documentation, you will send a message with all the IP addresses you know that your peer can contact in an encrypted packet. So, if your peer sends you a file or you send a file, your addresses will appear in the ICE message.
Chamadas
Same as above, the IP address is present in the ICE message.
(2) Por trás de uma VPN
Enviar uma mensagem
The IP address of your VPN will be used by the DHT node.
If proof is required, compile dhtnode and run the la
command to retrieve your public detected address.
This is what I got:
./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:
IP ADDRESSES OF MY VPN
So, if you don’t use a proxy, your VPN addresses will be used for using the DHT network. If you use a DHTProxy, the DHTProxy will see your VPN addresses.
Enviar um ficheiro
Same as above, the ICE message contains:
addresses from your local area network (LAN)
public address of your virtual private network (VPN)
TURN server address if the TURN server is enabled
Fazer uma chamada
O mesmo que acima, o seu endereço público é substituído pelo seu endereço VPN. Pode vê-lo nos registos do daemon. Veja Registos.
(3) Tor
Enviar uma mensagem
Tor basically does not support the UDP protocol. This means that you can not use your DHT node locally; you MUST use a DHTProxy. That proxy will see the Exit node.
Enviar um ficheiro
I prefer a proof to any description. So, I did a file transfer with Jami and Tor. This is what I see in the logs for the 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
The first lines in the logs are 192.168.x.x addresses, so we don’t care. The 51.254.39.157 address is the TURN address in France (my device is in Canada). The 185.220.101.24 address is the Tor exit node:
inetnum: 185.220.101.0 - 185.220.101.127
netname: MK-TOR-EXIT
Fazer uma chamada
Calls will not work. A SIP control connection can be created as it is a TCP connection. However, the media will not work because it only supports the UDP protocol.
Que portas é que a Jami utiliza?
Jami works as a server and gets new ports for each connection (randomly bound). These are the ranges that can be used for each component:
dht: UDP [4000, 8888]
áudio: UDP [16384-32766]
vídeo: UDP [49152-65534]
controlo SIP: UDP/TCP ligado aleatoriamente
Nota
If the UDP protocol is blocked, a DHTProxy can be used to use the TCP protocol instead. However, the media will not work because it only supports the UDP protocol.
So for UFW (Uncomplicated Firewall), it is recommended to open the Terminal and enter the command:
sudo ufw default allow outgoing
Currently, it is not possible to define the range of configured ports to be used by Jami. The inbound traffic can be controlled without issue; Jami should work and can use a TURN server if required.
Se executar o seu próprio servidor proxy ou de nomes:
DHTProxy, name server: TCP [80-100], 443
Se executar o seu próprio servidor TURN:
TURN/STUN: TCP+UDP 3478, 5349
Can I use Jami in a LAN network without Internet access?
Yes! Thanks to Jami’s architecture, Jami users on a local/private network can communicate among themselves using Jami without requiring any outside connectivity such as the Internet.
To do so, with the selected Jami account, open the settings, select the Account
tab, and open Advanced settings
.
There, enable the Local peer discovery
setting.
Additionally, you may want to set the bootstrap
node address (default: bootstrap.jami.net
) manually to the IP address of another device on your network that also runs Jami and/or an OpenDHT node.
Nota
If you will use this Jami account for communicating only with other devices on the same local/private network, you can disable the TURN server if you wish. If you do so, and later you decide to use this account also for communicating with other Jami devices outside your network, don’t forget to enable the TURN server again, as it helps Jami work around issues with some overly restrictive firewalls.
Como é que posso configurar ainda mais os codecs?
Codecs can be configured via a file.
In the configuration files, you can create a file called encoder.json
like this:
{
"libx264": {
"profile": 100,
"level": 42,
"crf": 20,
"preset": "ultrafast"
},
"h264_vaapi": {
"low_power": 1
},
"libopus": {
"application": "voip"
}
}
ou:
{
"libopus": {
"bit_rate": 128000
}
}
This file is located in the same directory as dring.yml
.
Para verificar quais opções são suportadas, utilize o comando ffmpeg -h encoder=[nome_do_codificador]
, onde nome_do_codificador
pode ser qualquer um dos libx264
, libvpx
, mpeg4
, h263
, libopus
, libspeex
, g722
, pcm_alaw
, ou pcm_mulaw
(os nomes do FFmpeg para todos os codificadores suportados por Jami).
Como posso configurar o processador de áudio?
An audio processor allows Jami to clean up and process your microphone’s audio.
It can remove echo, reduce noise, and equalize your microphone’s volume.
Additionally, it can detect when you’re speaking and send this information to participants in your call.
The audio processor settings can be set in your dring.yml
file.
See this section to find where this file is located.
As chaves de preferência relevantes são:
audioProcessor
, que configura o processador de áudio a utilizar. As opções válidas são:webrtc
: the WebRTC Audio Processing librarynull
: disables audio processing (though your system echo canceller may still be used; see below)
echoCancel
, que configura a forma como o cancelamento de eco deve ser efetuado. As opções válidas são:auto
: tentar utilizar o cancelador de eco do seu sistema operativo (se existir), caso contrário, recorrer ao cancelador de eco do processador de áudio escolhidoaudioProcessor
: utilizar apenas o cancelador de eco do processador de áudio escolhidosystem
: utilizar apenas o cancelador de eco do seu sistema operativonull
: não fazer nenhum cancelamento de eco
noiseReduce
,true
/false
para definir a redução de ruído no processador de áudioautomaticGainControl
,true
/false
para definir o controlo automático de ganho no processador de áudiovoiceActivityDetection
,true
/false
para definir a deteção de atividade vocal no processador áudio