Nota: Actualmente somos un número reducido de desarrolladores activos en el proyecto. Por ello, no podemos atender todos los reportes inmediatamente, pero sí los vemos y leemos. Los buenos reportes nos proveen información importante y que apreciamos mucho, así que te lo agradeceremos siempre.

Guía para reportes

Esta guía incluye instrucciones paso a paso sobre cómo reportar errores e incidencias que encontrés en Jami.

Configurar tu entorno

  • Prepárese para la pérdida de datos. Haga una copia de seguridad de su cuenta y vincúlela a tantos dispositivos como sea posible.

  • Instalar la última versión (o incluso una versión beta) de Jami. Informar de errores/problemas con versiones anteriores es menos útil, y es probable que ya haya sido arreglado en versiones más recientes.

Cómo denunciar un error

  1. Crear una cuenta en el Jami GitLab si ya no tienes una.

  2. Elige el proyecto adecuado para publicar tu número en:

  1. Si tiene varios problemas, por favor presente informes separados de errores. Será mucho más fácil realizar un seguimiento de ellos de esa manera.

  2. El título es un resumen explícito del error (por ejemplo: la barra de encabezado es demasiado grande debido al tamaño del icono)

  3. Descubra los pasos para reproducir el error:

  • Si tienes pasos precisos para reproducirlo (¡great!) estás en camino de crear un informe de errores útil.

  • Si puede reproducir de vez en cuando, pero no después de seguir pasos específicos, proporcione información adicional sobre el tema para ayudar a otros a entenderlo y tratar de reproducirlo.

  • Si no puede reproducir el problema, es poco probable que pueda ser resuelto razonablemente.Si lo denuncia, por favor, haga todo lo posible para proporcionar la mayor cantidad de información/indicios sobre su ocurrencia posible.

  1. Asegúrese de que su software está actualizado. Lo ideal es probar una versión en desarrollo para ver si su error ya ha sido arreglado.

  2. Intentar aislarse del medio ambiente y reproducirse (es decir, realizar pruebas en múltiples dispositivos).

  3. Describa su-s entorno(s) especificando lo siguiente:

  • Versión del sistema operativo

  • modelo de dispositivo preciso (importante para dispositivos móviles)

  • si está utilizando una versión beta

  • what build you are using (F-Droid, Play Store, App Store, from dl.jami.net, your own build, etc.). If you have built your own version of Jami, please specify the exact Jami Daemon version and client version (you can obtain it using jamid -v and jami -v; but note that our packages are updated quite often) and the Git commit.

  • condiciones de red: ¿son ambos dispositivos en la misma red local? redes diferentes? ¿Es uno o ambos detrás de NAT? ¿Utiliza LTE? ¿Utiliza WiFi?

  • otros elementos, si es necesario: proveedor de SIP, hardware, etc.

Escribir un resumen claro

¿Cómo describirías el error usando aproximadamente 10 palabras? Esta es la primera parte de tu informe de errores que verá un desarrollador.

Un buen resumen debe identificar rápidamente y de manera única un informe de error. Debe explicar el problema, no la solución sugerida.

Good: "Cancelling a file transfer crashes Jami"
Bad: "Software crashes"
Good: "All calls hang up after 32 seconds"
Bad: "Not able to call my friends"

Escribir pasos precisos para reproducirse

  • ¿Cómo puede un desarrollador reproducir el error en su propio dispositivo?

    Los pasos para reproducir son la parte más importante de cualquier informe de error. Si un desarrollador es capaz de reproducir el error, es muy probable que el error sea corregido. Si los pasos no están claros, ni siquiera es posible saber si el error ha sido corregido. Somos totalmente conscientes de que algunos errores pueden parecer obvios para usted, pero probablemente están relacionados con su entorno. Cuanto más preciso sea, más rápido puede ser corregido el error.

  • ¿Qué debe incluir en un informe de errores?

    Indique si puede reproducir el error a voluntad, ocasionalmente o no en absoluto. Describa su método de interacción con Jami además de la intención de cada paso. Después de sus pasos, describa con precisión el resultado observado (real) y el resultado esperado. Separen claramente los hechos (observaciones) de las especulaciones.

Bien, ¿ qué?

Siempre puedo reproducirme siguiendo estos pasos:

1. Start Jami by clicking on the desktop icon
2. Start a new conversation with anyone
3. Click the file transfer icon

Expected results: A window opens and asks me to choose a file to send.
Actual results: When I click the file transfer icon, nothing happens.

Lo malo:

Try to transfer a file
It doesn't work.

Resultados obtenidos

Por favor, incluya:

  • El demonio Jami (jamid o libjami o libring) y los registros de desactivación del cliente.

  • El vertedero del núcleo si se produjo uno.

Resultados esperados

Es una descripción del comportamiento esperado o deseado.

Proporcionar información adicional

Se solicita la siguiente información para la mayoría de los informes de errores. Puede ahorrar tiempo proporcionando esta información debajo de los resultados esperados.

Registros

Cliente Jami basado en Qt (GNU/Linux, Windows, macOS)

En la sección de Solución de problemas, puede hacer clic en «Abrir registros», donde podrá obtener estadísticas («Mostrar estadísticas») o comenzar a grabar información a través de «Recibir registros».

En GNU/Linux

Registros clásicos (por defecto sólo se registran registros de advertencia >=):

journalctl --since "24h ago" | grep jami

Log completo: Dado que el cliente Jami (GUI) y el daemon son procesos separados, la forma más fácil de obtener registros de ambos es iniciarlos uno a la vez, manualmente.

  1. Asegúrese de que no se ejecutan ningún cliente Jami o instancias de demonio: compruebe ejecutando `ps aux ̶ Grab jami̶̶ en una terminal.

    • Jami puede seguir funcionando incluso si no hay ventanas abiertas, dependiendo de tus preferencias.

    • Si el cliente o el demonio están funcionando, termina con kill PID.

  2. En una terminal, comience el daemon con jamid -d -c

    • Este ejecutable normalmente no está en el PATH, y en los paquetes Debian/Trisquel/Ubuntu, se encuentra en /usr/lib/x86_64-linux-gnu/jamid -d -c o /usr/libexec/jamid -d -c.

  3. In another terminal, start the client, using jami -d.

Para obtener un rastro de retroceso, puede ejecutar el programa dentro de GDB:

gdb -ex run --args jami -d, or gdb -ex run --args /usr/libexec/jamid -cd, depending on the component you need to debug.

Cuando se estropee, puede escribir bt (o mejor aún, thread aplicar todos bt) y luego pulsar Enter.

En macOS

  • Navega a /Aplicaciones/Jami.app/Contentes/MacOS/.

  • Haga doble clic en Jami, lanzará Jami y imprimirá el registro a la terminal.

  • Copie el registro desde el terminal a un archivo.

Alternativamente, puede ejecutar /<path a Jami>/Jami.app/Contents/MacOS/Jami -d desde la terminal.

En Android

Para recopilar registros a través de su teléfono usando Jami mismo:

  • Toque en las conversaciones

  • Toque el menú de tres puntos en la parte superior derecha

  • Tapear Posiciones

  • Toque en el registro de diagnóstico

Para recopilar registros a través de su computadora utilizando el puente de desarreglamiento de Android (adb):

  • Necesitas tener AdB configurado en tu computadora.

  • Lanza Jami en tu teléfono inteligente y luego ejecuta

  • ```db logcat *:D ♬ grap db shell ps egrep 'cx.ring' cut -c10-15d > logring.txt``

  • Ahora tienes un archivo que contiene el registro del cliente

Para ventanas

Abre un terminal (cmd.exe) y ejecuta Jami.exe con las siguientes opciones:

  • -d para abrir una ventana de consola separada para recibir registros

  • -f para escribir registros a %localappdata%\jami\jami.log