BlogMóvil

Por qué «funciona sin conexión» es la función que más vas a usar

La cobertura se cae en sótanos, salas de máquinas y caminos rurales. Una app que sigue funcionando ahí, y que sincroniza con honestidad cuando vuelve la cobertura, es la que de verdad vas a usar.

Un técnico de calefacción trabajando en tuberías de una sala de máquinas donde no hay cobertura, junto al mapa de monitorización en directo de TradeYoke que sigue la ronda

La función que más vas a usar en una app de gestión de trabajos es la que nunca ves: sigue funcionando cuando la cobertura no lo hace. Rondas rurales, sótanos, salas de máquinas, bloques de pisos con paredes gruesas y un hueco de ascensor, la parte de atrás de una granja. Si la app se para ahí, tú vuelves al papel ahí, y el papel es donde se pierde la información del día.

Este artículo trata de lo que debería significar «funciona sin conexión», por qué es más difícil de lo que parece, y cómo poner a prueba la promesa de cualquier app antes de confiarle una ronda.

Por qué una app de gestión de trabajos que funciona sin conexión importa más que el resto

Los mapas de cobertura son generosos. El comprobador de Ofcom te dirá que un código postal tiene 4G de todos los operadores, y es cierto en la verja. No es cierto en el armario de instalaciones donde está la caldera, ni detrás de la casa donde hay que limpiar el techo del porche acristalado.

Una app que necesita conexión para cada toque convierte esos sitios en tiempo muerto. Haces el trabajo, te acuerdas de marcarlo como hecho más tarde, y más tarde es cuando las cosas se olvidan: la foto, el efectivo, la nota de que la puerta lateral ahora tiene candado. Sin conexión por diseño significa que la app se comporta igual en el armario que en la oficina, y dejas de pensar en ello.

Comprobador de cobertura de OfcomEl comprobador oficial de cobertura móvil y de banda ancha de Ofcom por código postal. Útil para una ruta, menos útil para una sala de máquinas.Ofcomchecker.ofcom.org.uk

Lo que significa de verdad «sin conexión por diseño»

No significa páginas en caché. Significa que el móvil guarda su propia copia de los datos que necesita para el día: los clientes, los trabajos, los precios, las notas de acceso. Cada lectura viene de ese almacén local, así que abrir un trabajo es instantáneo haya cobertura o no. Cada cambio entra primero en una cola en el dispositivo, y la cola se envía al servidor cuando hay conexión disponible.

La diferencia importa porque una app en caché puede enseñarte la agenda de ayer pero no puede registrar el trabajo de hoy. Una app sin conexión por diseño puede marcar una visita como hecha, hacer una foto, anotar el efectivo y reservar la siguiente visita con el móvil en modo avión, y cada uno de esos cambios llegará a la oficina en orden en cuanto vuelva la cobertura.

Trabajos de TradeYoke en un móvil
Los trabajos de hoy en el móvil se leen del almacén local, así que la lista se abre en la sala de máquinas igual que en la furgoneta.

Qué pasa cuando dos personas cambian lo mismo

Aquí está la parte que la mayoría de las apps esconden. Si marcas una visita como hecha a las 10:14 sin cobertura, y la oficina reprograma esa misma visita a las 10:20, ¿cuál gana cuando tu móvil se reconecta a las 11:00? Una app que en silencio se queda con el último cambio perderá uno de los dos y nadie lo sabrá.

Sin conexión por diseño, hecho como es debido, tiene reglas para cada caso y te avisa cuándo las aplica. Una visita marcada como hecha en el sitio gana a una reprogramación desde la oficina, porque el trabajo ya ocurrió. Un precio cambiado en la oficina gana a un precio desactualizado en un móvil que no se ha sincronizado. Donde dos ediciones entran de verdad en conflicto, la app guarda las dos y pregunta. Las reglas son aburridas; lo importante es que existen.

Sin conexión no es un modo. Es la condición normal de un día de trabajo, y la app debería estar construida para la condición normal.

TradeYoke

Por qué la app web es distinta, y por qué lo decimos así

TradeYoke funciona en web, iOS, Android y Windows desde una sola base de código. Las apps instaladas, en el móvil y en un portátil con Windows, son sin conexión por diseño en el sentido anterior: almacén local, cambios en cola, sincronización con reglas de conflicto. La app web en un navegador es la puerta de entrada de la oficina, siempre en línea. Es donde la oficina planifica la semana, envía las facturas y lee los informes, y da por hecho que hay conexión.

Lo decimos así de claro porque «funciona sin conexión» en un sitio web normalmente significa muy poco, y porque la división es deliberada. El móvil es donde se cae la cobertura, así que el móvil es donde vive el modo sin conexión. La página de la plataforma expone lo que hace cada superficie.

El móvil sin conexión está incluido en todos los planes de TradeYoke, incluido Free. No es un extra, porque una app de móvil que se para en un sótano no es una app de móvil.

Qué aspecto tiene un martes lluvioso

Un limpiador de cristales trabajando una ronda rural pierde la cobertura en la tercera parada y no se da cuenta. La parada se marca como hecha, el cliente paga en efectivo y se registra contra la visita, la puerta del siguiente cliente está cerrada con llave así que la visita se salta con una nota, y la lluvia empieza en la parada nueve. Las paradas sin hacer se mueven al jueves de una vez, tal como se describe en el artículo de los días de lluvia.

Nada de eso necesitó conexión. Cuando la furgoneta llega a la carretera principal, la cola se envía: lo hecho, el efectivo, lo saltado, lo aplazado. La oficina ve el estado de la ronda, la cifra de deuda se actualiza, y pueden salir los SMS de «llegamos el jueves». El limpiador no pensó en la cobertura ni una sola vez.

Planificar mi día en un móvil en TradeYoke
Planificar mi día en el móvil: las decisiones de la mañana se toman una vez y se envían al móvil, así que el día se ejecuta desde la copia local.

Cómo lo construimos, en resumen

Cada cambio es una operación pequeña y autodescriptiva con su propio id, así que enviarla dos veces no hace nada y enviarla tarde sigue funcionando. Cada registro lleva una etiqueta de versión; un cambio hecho contra una versión antigua se detecta, no se aplica en silencio. El móvil recibe un flujo de lo que ha cambiado en el servidor desde la última vez que preguntó, en lugar de volver a descargarlo todo. Las reglas de conflicto se declaran por tipo de cambio, y las que no se pueden resolver automáticamente se muestran a una persona.

Eso es la sustancia detrás de la frase de marketing. Se aplica a cada oficio de la página de oficios, porque la capa de sincronización no sabe ni le importa si el registro es una visita de limpieza de cristales o de jardinería. La monitorización en directo descrita en el artículo de seguimiento viaja sobre la misma lógica de conexión.

Cómo poner a prueba la promesa sin conexión de cualquier app

  • Pon el móvil en modo avión antes de abrir la appSi no abre, la promesa es sobre páginas en caché, no sobre trabajo.
  • Marca un trabajo como hecho, haz una foto, registra un pago en efectivoLas tres cosas, sin cobertura. Después reserva la siguiente visita.
  • Cambia el mismo trabajo desde otro dispositivoDespués vuelve a activar la cobertura y comprueba qué cambio sobrevive, y si la app te lo dice.
  • Cierra la app, vuelve a abrirla, sigue sin coberturaLos cambios en cola deberían seguir ahí.
  • Reconecta y comprueba la vista de la oficinaTodo debería llegar, en orden, una sola vez.

Preguntas frecuentes

¿Funciona la app sin cobertura todo el día?

Sí, en el móvil y en las apps instaladas. Los datos del día están en el dispositivo, los cambios se ponen en cola en el dispositivo, y la cola se envía cuando hay conexión disponible, sea en la siguiente parada o de vuelta en la nave por la tarde.

¿Qué pasa si el móvil se queda sin batería antes de sincronizar?

La cola se guarda en el dispositivo, no en la memoria, así que sobrevive a que se cierre la app o se reinicie el móvil. Cárgalo y reconéctalo y los cambios se envían. Si se pierde el móvil, los cambios sin sincronizar en él se pierden con él, que es una razón para dejarlo sincronizar en la primera ocasión en lugar de al final de la semana.

¿Funciona la app web sin conexión?

No, y lo decimos así. La app del navegador es la superficie de oficina siempre en línea para planificar, facturar e informar. El modo sin conexión vive en las apps instaladas en iOS, Android y Windows, que es donde de verdad se cae la cobertura.

¿Cuesta extra el modo sin conexión?

No. El móvil sin conexión en las cuatro plataformas forma parte de todos los planes, incluido Free, y los planes son por negocio en lugar de por usuario. Consulta la página de precios para ver los cuatro planes.

Lleva la ronda a un sitio sin cobertura y compruébalo

Las apps de móvil de TradeYoke funcionan sin conexión y sincronizan con honestidad cuando vuelve la cobertura, en todos los planes. Empieza una prueba de 30 días de Essentials sin tarjeta.

AssemblySoft DevOps

The engineering team behind TradeYoke: how it is built, deployed and kept running.

Más del blog