En la beta de Telegram para macOS 13.1.0.283429, lanzada el 1 de noviembre, la tarjeta de sesión en la lista de dispositivos activos ahora indica si se ha iniciado sesión en la cuenta desde la aplicación oficial de Telegram: junto al nombre de la aplicación aparece una marca de verificación con la sugerencia «This session is from the official Telegram app». También se han añadido la fecha y hora exactas del primer inicio de sesión y de la última actividad, líneas separadas para la versión y el sistema, y un botón que muestra la ubicación del inicio de sesión en un mapa. Este cambio proviene de un pull request de un colaborador externo, fusionado el 31 de octubre. Esto es relevante para cualquiera que revise quién más está usando su cuenta: la versión estable 13.1.0 (283357) del 20 de octubre aún no incluye esta nueva tarjeta.

Qué ha cambiado en la tarjeta de sesión

La tarjeta se abre al hacer clic en una sesión: en los ajustes, sección «Privacidad y seguridad», lista de Active Sessions. Anteriormente, contenía el modelo del dispositivo, una línea de aplicación donde el nombre y la versión estaban separados por comas, la dirección IP, la ubicación y los interruptores para chats secretos y llamadas. La versión del sistema no aparecía en la tarjeta. Ahora las líneas están divididas en dos grupos.

GrupoFilaQué muestra
DeviceApplicationNombre de la aplicación y una marca de verificación si la sesión es de un cliente oficial
DeviceVersionVersión de la aplicación, por ejemplo 13.1.0 (283402) BETA
DeviceOSSistema operativo, por ejemplo macOS 27.2
ConnectionIP Address y LocationDirección y país con región; el botón abre la ubicación en el mapa
ConnectionFirst Signed AtFecha y hora exactas (al segundo) en que la sesión inició sesión en la cuenta
ConnectionLast ActiveFecha y hora de la última actividad de la sesión

La tarjeta en sí se ha ensanchado —440 puntos en lugar de 340—, porque la larga línea de la aplicación antes empujaba la versión fuera del borde. La marca de verificación tiene el color de acento del tema, no uno propio. Las etiquetas «First Signed At» y «Last Active» están actualmente codificadas en inglés con la nota //TODOLANG: la traducción a otros idiomas se añade por separado.

La ubicación en el mapa se busca por texto, no por coordenadas. El servidor devuelve el país y la región que ha determinado a partir de la dirección IP, la aplicación pasa esta cadena al geocodificador de macOS (CLGeocoder, un servicio de Apple) y abre una vista previa del punto encontrado. Si no se encuentra, se muestra «Couldn't find this location. Please try again.». La precisión no aumenta por esto: debajo de la tarjeta sigue indicándose que la estimación de la ubicación se basa en la dirección IP y puede ser errónea.

De dónde viene la marca de verificación

La marca de verificación la dibuja el cliente, pero la decide el servidor. En el objeto authorization, con el que la API describe cada sesión, existe el flag official_app — «sesión de la aplicación oficial». Allí también se encuentran date_created, date_active, ip, country, region, la versión de la aplicación y del sistema — todo lo que ahora se muestra en la tarjeta. La API ya proporcionaba estos campos; el autor del cambio escribe que los clientes utilizan solo una pequeña parte de ellos.

Los clientes de terceros se conectan a la API con su propio identificador de aplicación, que se obtiene en my.telegram.org, y es probable que dicho inicio de sesión no reciba la marca de verificación, incluso si el cliente es legítimo: la documentación no especifica cómo decide el servidor que una aplicación es oficial. La ausencia de la marca de verificación es un motivo para examinar la sesión, no una prueba de hackeo.

Qué hacer

  • Revisar las sesiones. En Telegram para macOS — ajustes, «Privacidad y seguridad», Active Sessions. En la beta a partir de la 283429, las aplicaciones oficiales tienen una marca de verificación junto al nombre; en la versión estable, la tarjeta es antigua, pero contiene la dirección IP y la ubicación.
  • Verificar las fechas. La línea First Signed At muestra cuándo se inició la sesión. La hora se muestra en la zona horaria de este Mac. Si ese día no iniciaste sesión en Telegram en un nuevo dispositivo, ni en la versión web, ni después de una reinstalación, y Last Active es reciente, es un motivo para finalizar la sesión.
  • Finalizar una sesión ajena. El botón Terminate Session en la parte inferior de la tarjeta de una sesión ajena expulsa el dispositivo de la cuenta. Una sesión desconocida sin marca de verificación, con una aplicación o país desconocido, es la primera candidata. Desde un dispositivo recién conectado no se pueden finalizar sesiones antiguas: la aplicación pide esperar varias horas.
  • Establecer una contraseña en la nube. Sin la verificación en dos pasos, un solo código de confirmación es suficiente para un nuevo inicio de sesión; con la contraseña, también se necesita esta.

La beta de macOS se distribuye a través del feed de actualizaciones. La versión estable 13.1.0 (283357) no incluye la nueva tarjeta.

Cómo llegó el cambio a la beta

El pull request #172 fue abierto el 28 de octubre por un desarrollador externo, y fue fusionado el 31 de octubre a las 20:52 UTC por la cuenta del equipo de macOS: cuatro commits, 256 líneas añadidas, 21 eliminadas, cinco archivos. Durante la revisión se encontró un error: la línea en la primera versión se llamaba «Last Signed At», pero mostraba la hora de la última actividad, no del inicio de sesión; una sesión que había iniciado sesión hace un año y se había abierto hace dos minutos parecería un inicio de sesión reciente. La línea fue renombrada a «Last Active».

La build 283426 del 31 de octubre no contiene las líneas de la nueva tarjeta. En la 283429 del 1 de noviembre, el binario incluye tanto la sugerencia sobre la aplicación oficial como el error de búsqueda de ubicación, y la clase de línea SessionDetailRowItem del mismo pull request. Desde la fusión hasta la beta transcurrió menos de un día. El cliente para macOS acepta las contribuciones de desarrolladores externos desde que su código fuente se abrió a pull requests externos.

Qué más hay en la misma beta

La build 283427, lanzada 40 minutos antes de la 283429, trajo el panel lateral de temas para foros. En el binario aparecieron ForumSidebarController, ForumSidebarView, ForumDisplayMode con opciones de vista y las líneas «All Messages» y «Show Chats». La beta de Telegram para Android 13.2.0 (7278) del 31 de octubre anunció lo mismo — un panel lateral en los foros, incluyendo los de bots, en los mensajes directos de canales y en Saved Messages. En el código abierto del cliente para macOS, a fecha de 1 de noviembre, el panel aún no está, y la pantalla con él no es visible en la build: su apariencia solo se conoce por los nombres de las clases.