Ir al contenido

Tu teléfono

Tu teléfono habla con el mismo core que el panel, por el mismo protocolo. Nunca recibe el token del core: cambia un código de un solo uso por una llave propia, que podés quitarle cuando quieras sin tocar nada más.

La forma más rápida: hacé clic en Abrir en el teléfono en la barra de arriba (también está en el menú de tu cuenta). Aparece un QR.

El diálogo Abrir en el teléfono con un código QR de vinculación y el código escrito debajoEl diálogo Abrir en el teléfono con un código QR de vinculación y el código escrito debajo
Abrir en el teléfono

Escanealo con la cámara del teléfono. Abre la app de APX, vincula el teléfono si todavía no estaba vinculado y abre el chat que estabas mirando. Un teléfono ya vinculado con este core solo abre el chat.

El código que aparece debajo del QR sirve una vez, por 10 minutos. Mientras el diálogo está abierto, APX lo renueva antes de que venza, y al cerrarlo lo anula. Si el core solo escucha en esta compu, en vez del QR el diálogo dice Tu teléfono todavía no llega a este core.

No necesitás la app para usar el panel en el teléfono. Abrí la dirección del core en el navegador del teléfono (la de Tailscale, o la de la red local, como http://192.168.1.20:7440). El panel te pide Vinculá este dispositivo: escribí un código de Configuración › Conexiones › Dispositivos › Vincular un dispositivo o de apx pair, y el navegador se guarda su propia llave. El panel se acomoda a la pantalla angosta.

El panel de APX con ancho de teléfono y el chat Home abiertoEl panel de APX con ancho de teléfono y el chat Home abierto

Códigos de vinculación y llaves de dispositivo

Sección titulada «Códigos de vinculación y llaves de dispositivo»

Toda vinculación funciona igual, sea un teléfono, un navegador u otra computadora:

  • El código tiene 8 caracteres, sin los que se confunden (ni 0/O, ni 1/I), y vive 10 minutos en la memoria del core. Reiniciar el core anula los códigos pendientes.
  • Sirve una vez. El dispositivo lo cambia por una llave propia; el core guarda solo el hash de esa llave.
  • Cinco códigos incorrectos anulan todos los pendientes y pausan la vinculación por cinco minutos.
  • El QR lleva un enlace apx://pair?… con el código y las direcciones donde se puede llegar al core. Si configurás APX_PUBLIC_URL (la dirección de un VPS o de Tailscale), va primera.

Podés generar un código en tres lugares:

  • Abrir en el teléfono, en el panel (además abre el chat actual en el teléfono).
  • Configuración › Conexiones › Dispositivos › Vincular un dispositivo: un QR, el código y las direcciones.
  • La terminal, en la máquina donde corre el core:
❯ apx pair
Pairing code: ABCD2345
Expires at 10:40:00 (in about 10 min)

Addresses a device may reach this core on:
https://<machine>.<tailnet>.ts.net

In the APX app, open Pair and paste the link, or enter an address and the code:
apx://pair?c=ABCD2345&u=https%3A%2F%2F<machine>.<tailnet>.ts.net
Configuración, sección Dispositivos: los dispositivos vinculados con su plataforma y la última vez que se vieron, y las opciones de conexiónConfiguración, sección Dispositivos: los dispositivos vinculados con su plataforma y la última vez que se vieron, y las opciones de conexión
Configuración › Conexiones › Dispositivos

Configuración › Conexiones › Dispositivos lista cada dispositivo vinculado con su plataforma y cuándo se vio por última vez. El botón de la papelera (Quitar) revoca ese dispositivo: su llave deja de funcionar al instante, y solo la suya. Un teléfono revocado vuelve a la pantalla de vinculación.

Desde la terminal:

Ventana de terminal
apx devices # lista los dispositivos vinculados
apx devices pair # un código nuevo (igual que apx pair)
apx devices revoke <id> # revoca un dispositivo

La app de Android viene en cada versión v2. Todavía no está en Google Play, así que el archivo lo instalás vos:

  1. En el teléfono, abrí las versiones v2 y, en la más nueva, bajá APX-<versión>-android.apk.

  2. Abrí el archivo que bajaste. La primera vez, Android te pide permiso para instalar apps desde el navegador (o desde Archivos): permitilo, volvé y tocá Instalar. Si Play Protect avisa que no conoce la app, tocá Instalar de todas formas.

  3. Abrí APX y vinculalo, como en Abrir en el teléfono.

Se instala al lado de la app de APX v1; una no toca a la otra.

La app de APX en un teléfono, con el chat Home abiertoLa app de APX en un teléfono, con el chat Home abierto

Actualizar. La app todavía no se actualiza sola. Cuando sale una versión nueva, bajá su APK de la misma forma e instalalo encima del que tenés: la vinculación y la configuración quedan. Si Android dice que la app entra en conflicto con una ya instalada, esa es una versión que compilaste vos o una de prueba: desinstalala, instalá el APK de la versión y vinculá de nuevo. Desde ahí, cada versión se instala encima de la anterior.

Lo que hace una vez vinculada:

  • Se vincula escaneando el QR, abriendo un enlace apx://pair o escribiendo a mano la dirección y el código. Guarda su llave en el almacenamiento seguro del sistema.
  • Muestra tu chat Home en vivo, por el mismo socket que usa el panel.
  • Muestra tus widgets y apps fijados (el botón Apps), cada uno a pantalla completa y aislado igual que en el panel.
  • Le presta el teléfono al core como nodo: los agentes tienen phone_location y phone_photo, pero solo mientras el teléfono está conectado. La foto siempre la sacás vos en el teléfono (la app te muestra para qué la pide el agente). La ubicación pide el permiso del sistema una vez, y te pide el OK cada vez que hay contenido de afuera en el turno.
  • Recibe notificaciones, como se cuenta abajo.

Si no llega al core, la app conserva la vinculación para cuando pueda. Desvincularla (o revocarla en el panel) la devuelve a la pantalla de vinculación.

Para correrla desde el código:

Ventana de terminal
cd apps/mobile
npm install
npx expo start # Expo Go o un dev build; el core tiene que ser alcanzable en la red

El teléfono puede ser el lugar adonde llegan tus avisos, así las novedades de las rutinas, los recordatorios y las preguntas de los agentes te encuentran aunque la app esté cerrada.

  1. Dale al dispositivo una forma de recibir push. La app de APX se registra sola en Expo push cuando la compilación tiene un id de proyecto de EAS. Si no, debajo del dispositivo en Configuración › Conexiones › Dispositivos, usá Configurar notificaciones y pegá una dirección de ntfy o UnifiedPush.

  2. Elegí el teléfono en Configuración › Interrupciones › A dónde llegan los avisos. Aparece con el nombre del dispositivo seguido de “(push)”.

El mismo presupuesto de interrupciones decide qué llega al teléfono: tope diario, horas de silencio y lo demás (Secretaria). Un dispositivo solo puede configurar su propia dirección de push, y el token de push nunca vuelve a ningún cliente.