/* global React, ReactDOM */
const { useState, useEffect } = React;
const { Icon, useReveal, Navbar, Footer, useSiteTweaks, SiteTweaks, PrivacyBox, Galeria } = window;
const MASUPPORT_EMAIL = "masupport@masoft.es";
const SHOT = "assets/masupport/";
// navbar principal (72) + subcabecera (~52)
const NAV_OFFSET = 126;
const SECTIONS = [
{ id: "que-es", label: "Qué es" },
{ id: "como-trabaja", label: "Cómo trabaja" },
{ id: "funciones", label: "Funciones" },
{ id: "pantallas", label: "Capturas" },
{ id: "perfiles", label: "Perfiles" },
{ id: "seguridad", label: "Seguridad" },
{ id: "preguntas", label: "Preguntas" },
{ id: "prueba", label: "Prueba 30 días gratis", destacado: true },
{ id: "contacto", label: "Contacto" }
];
const scrollToId = (id) => {
const el = document.getElementById(id);
if (!el) return;
const y = el.getBoundingClientRect().top + window.pageYOffset - NAV_OFFSET;
window.scrollTo({ top: Math.max(0, y), behavior: "smooth" });
};
/* ---------- Contenido ---------- */
// Todo lo que se afirma aquí está en MASupport 0.27.0 (LAUNCHER\SCRIPTS\MASUPPORT: CLAUDE.md,
// GUIA_RAPIDA_MASupport.md y el código). Las capturas son de la demostración, con datos ficticios.
// No añadir funciones, cifras ni garantías que el programa no tenga.
const CIFRAS = [
{ n: "3", t: "vías de entrada", d: "Portal, correo y teléfono, en una sola bandeja" },
{ n: "8", t: "perfiles", d: "Cada persona ve y hace solo lo que le toca" },
{ n: "2", t: "barreras entre empresas", d: "En el código y en la propia base de datos" },
{ n: "Web + Android", t: "", d: "En la oficina, en casa del cliente y en el móvil" }
];
const PIPELINE = [
{ k: "1", label: "Entra la incidencia", sub: "PORTAL · CORREO · TELÉFONO", desc: "El cliente la abre en su portal, escribe al correo de soporte o llama. Todo llega numerado, con su empresa, su contacto y su plazo." },
{ k: "2", label: "Se reparte", sub: "COORDINACIÓN · PLAZOS", desc: "Coordinación ve la cola sin asignar, la carga de cada técnico y lo que vence. Asignar o reasignar es un clic." },
{ k: "3", label: "Se resuelve", sub: "CONVERSACIÓN · VISITA · PARTE", desc: "Conversación con el cliente, notas internas, cronómetro, pedido de material y, si hace falta, visita con parte firmado en pantalla." },
{ k: "4", label: "Se mide", sub: "ESTADÍSTICAS · VALORACIONES", desc: "Plazos cumplidos, tiempo por cliente y por técnico, valoraciones e informes en PDF. El tiempo facturable sale a Excel." }
];
const FUNCIONES = [
{ icon: "list", h: "Tickets completos", p: "Plazos (SLA) con horario laboral y festivos, estados con motivo que ve el cliente, tipos y categorías, personas en copia, fusionar, destacar, seguir y escalar." },
{ icon: "users", h: "Coordinación del equipo", p: "Cola sin asignar, carga de cada técnico, escalados y reclamaciones de clientes a la vista, y reasignación conservando el tiempo de cada uno." },
{ icon: "clock", h: "Tiempo que se registra solo", p: "Cronómetro por ticket, «Mi tiempo» del día para revisar y confirmar, bolsas de horas por cliente y tiempo facturable con mínimo y redondeo." },
{ icon: "calendar", h: "Agenda personal y del equipo", p: "Semana y mes, citas que se arrastran de un día a otro o de un técnico a otro, y visitas que salen solas de los tickets." },
{ icon: "pen", h: "Asistencias con parte firmado", p: "Visitas presenciales o remotas con instrucciones, kilómetros, materiales y firma del cliente en pantalla. El parte firmado queda protegido con su huella." },
{ icon: "box", h: "Pedidos de material", p: "Soporte pide, Administración presupuesta en sus programas, el cliente acepta en su portal y el material se sigue hasta la entrega." },
{ icon: "cpu", h: "Inventario de cada cliente", p: "Equipos con número de serie, persona y estado, configuraciones con plantillas paso a paso y cambios de equipo con borrado de datos registrado." },
{ icon: "book", h: "Base de conocimiento", p: "Cada artículo con su solución interna y la que puede ver el cliente. Aparecen solos en los tickets parecidos y se sugieren al cliente al escribir." },
{ icon: "chart", h: "Estadísticas e informes", p: "Por técnico, por empresa cliente, por categoría y por vía de entrada, con comparativa del periodo anterior. Informes en PDF con aprobación previa." },
{ icon: "globe", h: "Portal para sus clientes", p: "Sus clientes abren y siguen sus solicitudes, aprueban presupuestos, consultan sus equipos y la ayuda, con su marca y su dirección." },
{ icon: "file-text", h: "Documentación al personal", p: "Nóminas, avisos y protocolos enviados a su equipo con acuse de lectura y conformidad, y aviso de lo que sigue sin leer." },
{ icon: "tool", h: "Subcontratas", p: "Autónomos y empresas externas reciben solo sus asistencias, con su propio responsable y sus técnicos." },
{ icon: "mail", h: "Correo de Microsoft 365 o cualquier otro", p: "Buzones de Microsoft 365 o por IMAP/SMTP: el correo entra como ticket y las respuestas salen desde su dirección." },
{ icon: "key", h: "Entrar con Microsoft", p: "Inicio de sesión con la cuenta de Microsoft (Entra ID) además de usuario y contraseña, y equipos importados de Intune." },
{ icon: "upload", h: "Traiga sus datos", p: "Importación desde Freshdesk, Zendesk, Jira, GLPI y otros, y exportación de todo a Excel, CSV o JSON cuando quiera." },
{ icon: "sparkles", h: "Asistente de IA opcional", p: "Prepara respuestas, resúmenes y artículos como sugerencia, siempre revisada por una persona y con los datos personales anonimizados." }
];
const GALERIAS = [
{
id: "tecnico", label: "Día a día del técnico", shots: [
{ src: SHOT + "inicio_tecnico.webp", t: "Inicio del técnico", d: "Sus tickets ordenados por plazo, lo que vence en rojo, el tiempo de hoy, sus configuraciones pendientes y su agenda de hoy y mañana." },
{ src: SHOT + "ticket.webp", t: "Ficha del ticket", d: "Conversación con el cliente, notas internas en amarillo, pedido de material y espera con motivo. Cronómetro, escalado y propiedades a un clic." },
{ src: SHOT + "cronometros.webp", t: "Cronómetros", d: "El que está en marcha, los detenidos con su tiempo de hoy y los tickets asignados, para empezar a contar con un clic." },
{ src: SHOT + "mi_tiempo.webp", t: "Mi tiempo", d: "Cada registro del día con su ticket, sus minutos y su nota. Se revisa, se confirma el día y se ven los últimos siete días." },
{ src: SHOT + "agenda.webp", t: "Mi agenda", d: "La semana con sus citas y asistencias; se arrastran de un día a otro para moverlas." },
{ src: SHOT + "control_horario.webp", t: "Control horario", d: "Entrada, pausas y salida de cada día, con el resumen del mes en PDF. Los avisos fuera del horario se aplazan." },
{ src: SHOT + "destacados.webp", t: "Destacados", d: "Los tickets que el técnico quiere tener a mano, con sus propias observaciones. Solo los ve él." },
{ src: SHOT + "documentacion.webp", t: "Documentación", d: "Lo que la empresa le envía: nóminas, avisos y protocolos, con su estado de lectura y aceptación." },
{ src: SHOT + "perfil.webp", t: "Mi perfil", d: "Sus datos, doble factor, cuenta de Microsoft, foto, avisos y la app del móvil, que se instala escaneando un código." }
]
},
{
id: "coordinacion", label: "Coordinación y dirección", shots: [
{ src: SHOT + "tickets.webp", t: "Tickets", d: "Filtros plegables por estado, prioridad, técnico, grupo, categoría y vía de entrada. Escalados y vencidos, de un vistazo." },
{ src: SHOT + "coordinacion.webp", t: "Coordinación", d: "Escalados y reclamaciones de clientes, cola sin asignar con su plazo y carga de cada persona del equipo." },
{ src: SHOT + "agenda_equipo_mes.webp", t: "Agenda del equipo", d: "Todo el equipo en el mes: reuniones, mantenimientos, visitas y llamadas de seguimiento, cada una con su ticket." },
{ src: SHOT + "equipo.webp", t: "Equipo", d: "Resueltos, plazos cumplidos, primera respuesta, valoración y tiempo de cada persona, comparados con la media del equipo." },
{ src: SHOT + "estadisticas.webp", t: "Estadísticas", d: "Tickets nuevos y resueltos, plazos, satisfacción, tiempo registrado y facturable, por empresa cliente, categoría y vía de entrada." },
{ src: SHOT + "informes.webp", t: "Informes", d: "Informes en PDF para sus clientes (mensuales, de incidencia o de proyecto). Ninguno sale sin la aprobación de coordinación." },
{ src: SHOT + "agenda_equipo.webp", t: "Agenda del día", d: "Una columna por técnico; las citas se arrastran de una persona a otra para pasárselas." },
{ src: SHOT + "escalados.webp", t: "Escalados", d: "Lo que el equipo ha escalado, con su motivo. Las situaciones de conflicto con un cliente, las primeras y en rojo." },
{ src: SHOT + "estad_tecnico.webp", t: "Detalle de un técnico", d: "Plazos, valoraciones, tiempo registrado frente a jornada fichada y tiempo dedicado a cada cliente." },
{ src: SHOT + "valoraciones.webp", t: "Valoraciones", d: "La nota media de cada técnico y cada valoración de los clientes con su comentario." },
{ src: SHOT + "horario_equipo.webp", t: "Control horario del equipo", d: "Quién está trabajando ahora, las horas del mes de cada persona y las correcciones de fichaje por aprobar." },
{ src: SHOT + "seguimiento.webp", t: "Seguimiento", d: "Los tickets que se quieren vigilar: cualquier cambio aparece aquí aunque no sean suyos." },
{ src: SHOT + "proyectos.webp", t: "Proyectos", d: "Trabajos que agrupan varios tickets con su presupuesto de horas y su consumo." },
{ src: SHOT + "proyecto.webp", t: "Ficha del proyecto", d: "Horas presupuestadas, dedicadas y restantes, técnicos asignados, notas internas e informe para el cliente." }
]
},
{
id: "campo", label: "Campo, material y clientes", shots: [
{ src: SHOT + "asistencias.webp", t: "Asistencias", d: "Visitas propias y de subcontratas con su estado: pendiente de aceptar, aceptada, parte por validar o validada." },
{ src: SHOT + "asistencia.webp", t: "Parte firmado", d: "Trabajo, materiales, kilómetros y firma del cliente. La huella del parte indica que no se ha modificado después de firmar." },
{ src: SHOT + "pedidos.webp", t: "Pedidos", d: "Del presupuesto a la recepción: en administración, pendiente del cliente, pedido al proveedor y recibido. Sin importes en la plataforma." },
{ src: SHOT + "inventario.webp", t: "Inventario", d: "Los equipos de cada cliente con su número de serie, la persona que lo usa y su estado." },
{ src: SHOT + "empresa.webp", t: "Ficha de la empresa cliente", d: "Datos, contrato con sus plazos, bolsa de horas consumida, contactos, conexión con su Intune y últimos tickets." },
{ src: SHOT + "conocimiento.webp", t: "Base de conocimiento", d: "Artículos por categoría con sus usos y su porcentaje de acierto; internos o visibles para el cliente." },
{ src: SHOT + "pedido.webp", t: "Ficha del pedido", d: "Qué hace falta y para qué cliente. Administración registra el presupuesto y si el cliente lo acepta." },
{ src: SHOT + "equipo_ficha.webp", t: "Ficha del equipo", d: "Datos, quién lo usa, garantía, cambios de equipo, configuración y asistencias en las que ha intervenido." },
{ src: SHOT + "empresas.webp", t: "Empresas cliente", d: "Cada cliente con sus dominios de correo, contactos, tickets abiertos y bolsa de horas contratada." },
{ src: SHOT + "contactos.webp", t: "Contactos", d: "Las personas de cada cliente, con su cargo y si tienen acceso al portal." },
{ src: SHOT + "externas.webp", t: "Subcontratas", d: "Autónomos y empresas externas para las asistencias, con su zona y sus técnicos." },
{ src: SHOT + "articulo.webp", t: "Artículo de conocimiento", d: "Síntomas, causa y solución interna; aparte, la solución que verá el cliente en su portal." }
]
},
{
id: "portal", label: "Portal de sus clientes", shots: [
{ src: SHOT + "portal.webp", t: "Portal del cliente", d: "Sus solicitudes abiertas y cerradas, pedidos, equipos y ayuda, con el nombre de su empresa de soporte." },
{ src: SHOT + "portal_ticket.webp", t: "Seguimiento de una solicitud", d: "El cliente sigue la conversación, añade personas en copia y puede reabrirla. Las notas internas nunca le llegan." },
{ src: SHOT + "portal_nueva.webp", t: "Nueva solicitud", d: "Qué ocurre, en qué equipo y cuánto le afecta. Un diagnóstico descargable añade el nombre y el estado del ordenador." },
{ src: SHOT + "portal_ayuda.webp", t: "Ayuda", d: "Soluciones a los problemas más habituales, por temas, para que el cliente lo resuelva sin esperar." },
{ src: SHOT + "portal_articulo.webp", t: "Una solución de la ayuda", d: "Cuándo pasa y qué hacer, paso a paso. Si no se soluciona, abre la solicitud desde ahí mismo." }
]
},
{
id: "it", label: "Informático del cliente", shots: [
{ src: SHOT + "it_inicio.webp", t: "Inicio del informático del cliente", d: "Si su cliente tiene informático propio, este ve todos los tickets y equipos de su empresa: abiertos, esperas y última actividad." },
{ src: SHOT + "it_tickets.webp", t: "Tickets de su empresa", d: "Todas las solicitudes de su empresa, con filtros, quién las atiende y si están en plazo." },
{ src: SHOT + "it_ticket.webp", t: "Ficha del ticket", d: "La conversación completa y sus plazos. Puede añadir notas para el equipo de soporte; el resto es de consulta." },
{ src: SHOT + "it_inventario.webp", t: "Inventario de su empresa", d: "Los equipos de su empresa con la persona que los usa, la garantía y su estado." },
{ src: SHOT + "it_equipo.webp", t: "Ficha del equipo", d: "Datos, configuración y tickets de cada equipo, solo de consulta." }
]
},
{
id: "ajustes", label: "Ajustes y personalización", shots: [
{ src: SHOT + "admin_usuarios.webp", t: "Equipo y permisos", d: "Cada persona con su rol, su doble factor, su uso de la IA y su último acceso. También el personal de subcontratas." },
{ src: SHOT + "admin_ajustes.webp", t: "Ajustes de la empresa", d: "Prioridad según la vía de entrada, cierre automático, sesiones, días de confianza del doble factor y logotipo." },
{ src: SHOT + "oscuro_inicio.webp", t: "Tema oscuro", d: "Cada persona elige tema claro u oscuro. Aquí, el inicio del técnico." },
{ src: SHOT + "oscuro_ticket.webp", t: "Ficha del ticket en tema oscuro", d: "La misma información, más cómoda para jornadas largas delante de la pantalla." },
{ src: SHOT + "admin_categorias.webp", t: "Categorías de ticket", d: "Las categorías propias de su empresa, en el orden que quiera, para filtrar y para las estadísticas." },
{ src: SHOT + "admin_auditoria.webp", t: "Auditoría", d: "Quién hizo qué y cuándo, con filtros y exportación. Los registros solo se añaden: nadie puede cambiarlos." },
{ src: SHOT + "admin.webp", t: "Administración", d: "Equipo, grupos, plazos, correo, respuestas, ajustes, doble factor, dominios, datos legales y auditoría en un mismo sitio." },
{ src: SHOT + "admin_grupos.webp", t: "Grupos", d: "Departamentos para repartir los tickets: por turnos, al que menos tiene o de forma manual." },
{ src: SHOT + "admin_correo.webp", t: "Correo y Microsoft 365", d: "Buzones de soporte que crean tickets y envían las respuestas, y entrada con la cuenta de Microsoft." },
{ src: SHOT + "admin_respuestas.webp", t: "Respuestas predefinidas", d: "Textos que el equipo inserta al responder un ticket." },
{ src: SHOT + "admin_legal.webp", t: "Datos legales", d: "Los datos de su empresa para el aviso legal y la información de privacidad del portal." },
{ src: SHOT + "oscuro_coordinacion.webp", t: "Coordinación en tema oscuro", d: "Escalados, cola sin asignar y carga del equipo." },
{ src: SHOT + "oscuro_estadisticas.webp", t: "Estadísticas en tema oscuro", d: "Todas las pantallas están disponibles en los dos temas." },
{ src: SHOT + "oscuro_portal.webp", t: "Portal del cliente en tema oscuro", d: "El cliente también elige su tema." }
]
}
];
const MOVIL = [
{ src: SHOT + "movil_ticket.webp", t: "El ticket en el móvil" },
{ src: SHOT + "movil_asistencia.webp", t: "El parte, donde esté" },
{ src: SHOT + "movil_portal_ticket.webp", t: "Su cliente, desde su móvil" },
{ src: SHOT + "movil_portal_nueva.webp", t: "Abrir una solicitud" }
];
const PERFILES = [
["Administrador", "Todo lo de su empresa: equipo, clientes, ajustes, buzones, plazos, datos legales y exportaciones."],
["Coordinación", "Reparte y reasigna, atiende escalados, valida partes, aprueba informes y ve la agenda y las cifras del equipo."],
["Supervisión", "Lo mismo que coordinación, limitado a sus grupos."],
["Técnico", "Sus tickets, sus asistencias, su tiempo y su agenda. Nada que no le corresponda."],
["Administración", "Los pedidos (presupuesto, aceptación y compra), el control horario y los kilómetros."],
["Subcontratas", "Solo las asistencias que se les encargan, con su responsable y sus técnicos."],
["IT propio del cliente", "Si el cliente tiene su propio informático: consulta los tickets y el inventario de su empresa y deja notas."],
["Clientes", "Su portal: sus solicitudes (o las de su empresa, si tienen ese permiso), pedidos, equipos y ayuda."]
];
// Seguridad: cada punto está implementado y comprobado en el código de la 0.27.0.
const SEG_BD = [
{ icon: "database", h: "Aislamiento dentro de PostgreSQL", p: "Row Level Security forzada en las tablas de cada empresa: la propia base de datos solo devuelve las filas de la empresa de la sesión, aunque una consulta olvidara filtrar." },
{ icon: "lock", h: "Falla cerrado", p: "Si una petición no tiene empresa fijada, la base de datos no devuelve ninguna fila. Un error nunca abre la puerta: la cierra." },
{ icon: "key", h: "La aplicación no puede saltárselo", p: "La aplicación se conecta con un usuario sin privilegio para evitar esas reglas. Solo las migraciones usan el propietario de las tablas." },
{ icon: "code", h: "Consultas parametrizadas", p: "Todas las consultas se construyen con SQLAlchemy y parámetros; nunca se compone SQL con lo que escribe el usuario. Así se evita la inyección SQL." }
];
const SEG_APP = [
{ icon: "shield", h: "Contraseñas y accesos", p: "Contraseñas cifradas con bcrypt (mínimo 12 caracteres), bloqueo tras 5 intentos fallidos, límite de intentos por conexión y doble factor con códigos de recuperación." },
{ icon: "users", h: "Cada perfil, lo suyo", p: "Los permisos se comprueban en el servidor en cada petición, no escondiendo botones. Un técnico no puede abrir un ticket que no es suyo aunque conozca su dirección." },
{ icon: "globe", h: "Navegador blindado", p: "HTTPS siempre, protección CSRF en todos los formularios, política de contenidos estricta sin scripts incrustados, cookies seguras y sesiones que se pueden cerrar todas a la vez." },
{ icon: "lock", h: "Secretos cifrados", p: "Claves de buzones, de Microsoft y de Intune se guardan cifradas y no se vuelven a mostrar. Ninguna contraseña está escrita en el código." },
{ icon: "file-text", h: "Adjuntos controlados", p: "Tamaño y tipos limitados, guardados con nombre aleatorio fuera de la parte pública y descargados solo por quien tiene permiso. El HTML de los correos se limpia." },
{ icon: "smartphone", h: "App móvil", p: "Cada móvil se vincula con un código QR de un solo uso que caduca a los 10 minutos. Su acceso se puede revocar y en el servidor solo se guarda su huella." },
{ icon: "eye", h: "Auditoría", p: "Accesos, cambios de permisos, exportaciones y supresiones quedan registrados: quién, qué y cuándo." },
{ icon: "server", h: "Copias de seguridad cifradas", p: "Copia diaria de la base de datos y los archivos, cifrada antes de guardarse, con la clave para descifrarla fuera del servidor. Se conservan 14 días." }
];
const SEG_PROCESO = [
["Pruebas automáticas", "Más de 240 pruebas contra una base de datos PostgreSQL real, también de aislamiento entre empresas, pasadas antes de cada versión."],
["Revisión de aislamiento", "Comprobado con cada perfil contra todos los tickets de la demostración, sin una sola fuga entre empresas ni entre personas."],
["Dependencias", "Versiones fijadas (se instala exactamente lo probado) y revisadas en busca de vulnerabilidades conocidas."],
["Masoft no lee sus tickets", "La administración de la plataforma da de alta empresas y ve recuentos, nunca el contenido de sus tickets."],
["Normativa", "RGPD (Masoft actúa como encargado del tratamiento, con su contrato), LOPDGDD (bloqueo al suprimir, desconexión digital, la app no guarda la ubicación), LSSI (solo cookies técnicas) y eIDAS (el parte firmado es firma electrónica simple)."]
];
const PRUEBA = [
{ n: "30", h: "días gratis", p: "MASupport totalmente funcional durante 30 días, sin coste." },
{ n: "0", h: "instalación", p: "Le damos de alta su empresa y entra con el navegador. La app Android, si la quiere, se descarga desde su perfil." },
{ n: "7", h: "días tras el final", p: "Si no continúa, la plataforma se bloquea al terminar la prueba y a los 7 días se elimina toda la información." }
];
const PREGUNTAS = [
["¿Tengo que instalar algo?", "No. MASupport funciona en el navegador, también en el móvil. La app Android para los técnicos es opcional."],
["¿Puedo usar mi propio dominio?", "Sí. Su empresa entra por su dirección en masupport.es y, si quiere, también por un dominio suyo, con HTTPS automático."],
["¿Un cliente puede ver lo de otro?", "No. Cada empresa cliente ve solo lo suyo, y entre empresas de soporte la separación está en la propia base de datos."],
["¿Puedo traer mis tickets de otro programa?", "Sí: desde Freshdesk o Zendesk directamente, y desde Jira, GLPI y otros con un archivo exportado."],
["¿MASupport factura?", "No. Registra tiempos, partes y kilómetros, y exporta el tiempo facturable a Excel para su programa de facturación. En la plataforma no hay importes."],
["¿Funciona con Microsoft 365?", "Sí: buzones de Microsoft 365, inicio de sesión con Microsoft (Entra ID) e importación de equipos desde Intune."],
["¿Y si al acabar la prueba no sigo?", "La plataforma se bloquea al terminar los 30 días y a los 7 días se elimina toda la información. Mientras dura la prueba puede exportar sus datos cuando quiera."],
["¿La IA lee mis datos?", "Solo si el administrador la activa. Siempre sugiere (una persona decide), anonimiza los datos personales y deja registro de cada uso."]
];
/* ---------- Subcabecera propia ---------- */
const MSSubnav = ({ active }) => (
);
/* ---------- Pantallas por áreas ---------- */
const Pantallas = () => {
const [area, setArea] = useState(GALERIAS[0].id);
const actual = GALERIAS.find(g => g.id === area);
return (
<>
{GALERIAS.map(g => (
))}
{/* Sin efecto de aparición: las capturas se ven siempre, al cambiar de pestaña y al volver (ver .ms-galeria en styles.css). */}
Prueba de 30 días, totalmente funcionalSin coste ni compromiso
Le ayudamos a traer sus datosDesde Freshdesk, Zendesk, Jira, GLPI u otros
{state === "done" ? (
Solicitud enviada
{form.motivo === "prueba"
? "Preparamos su empresa en MASupport y le escribimos con el acceso a la mayor brevedad."
: "Le responderemos a la mayor brevedad con la información de MASupport."}
) : (
)}
);
};
/* ---------- Tarjeta con icono ---------- */
const Tarjeta = ({ x }) => (
Producto principal de Masoft · Prueba 30 días gratis
MASupport — el soporte informático de su empresa, ordenado de principio a fin.
Tickets, coordinación, agenda, visitas con parte firmado, tiempo, material, inventario y
un portal para sus clientes, en una sola plataforma. Para empresas que dan soporte
informático a otras empresas.
MultiempresaPortal de clientesApp AndroidMicrosoft 365Seguridad en la base de datos
MASupport reúne lo que hoy suele estar repartido entre el programa de tickets, la agenda,
las hojas de horas, los partes en papel y el correo. Cada empresa de soporte tiene su
espacio, separado del resto, con su equipo, sus clientes y su dirección.
{CIFRAS.map(c => (
{c.n}
{c.t && {c.t}}
{c.d}
))}
Para su equipo
Cada técnico sabe qué tiene, qué vence y dónde tiene que estar. El tiempo se registra
trabajando, no rellenando hojas al final del día.
Para quien coordina
La cola, la carga de cada persona, los escalados y las reclamaciones a la vista, y las
cifras de cada técnico y de cada cliente sin preparar nada.
Para sus clientes
Un portal con su nombre donde abren solicitudes, ven en qué punto están, aprueban
presupuestos y consultan sus equipos. Menos llamadas preguntando «¿cómo va lo mío?».
{/* ---- Cómo trabaja ---- */}
Cómo trabaja
De la llamada al informe, sin perder nada.
Cada paso deja rastro en el ticket: quién, qué y cuándo. Nada se pierde en un correo ni en
una libreta.
{PIPELINE.map((p, i) => (
{p.k}
{p.label}{p.sub}
{p.desc}
))}
{/* ---- Funciones ---- */}
Funciones
Pensado por gente que da soporte.
Hecho a partir de años de trabajo diario en soporte informático: lo que se necesita a las
ocho de la mañana con la cola llena, no lo que queda bien en una presentación.
{FUNCIONES.map(x => )}
{/* ---- Pantallas ---- */}
Capturas
Así se ve MASupport.
Capturas reales de la demostración, con empresas y personas ficticias. Elija un área y
pulse una captura para ampliarla.
En el móvil
En la oficina, en casa del cliente y en el bolsillo.
Toda la plataforma se adapta al móvil, para su equipo y para sus clientes. Además, los
técnicos tienen una app Android con sus tickets, sus asistencias, el parte con firma y
el cronómetro.
{MOVIL.map(m => (
{m.t}
))}
{/* ---- Perfiles ---- */}
Perfiles
Cada persona ve solo lo suyo.
Ocho perfiles para su equipo, sus subcontratas y sus clientes. La regla se comprueba en el
servidor en cada petición, no solo en lo que se ve en pantalla.
{PERFILES.map(([k, v]) => (
{k}
{v}
))}
{/* ---- Seguridad ---- */}
Seguridad
Sus datos y los de sus clientes, protegidos desde la base de datos.
La seguridad no es un añadido de MASupport: está en cómo se diseñó desde el primer día.
Esto es exactamente lo que hace, sin letra pequeña.
1
En el código
Cada consulta filtra por la empresa de la sesión.
+
2
En la base de datos
PostgreSQL aplica sus propias reglas por fila y empresa.
=
Doble barrera
Aunque fallara una, la otra impide ver datos de otra empresa.
Base de datos y SQL
{SEG_BD.map(x => )}
Aplicación, accesos y copias
{SEG_APP.map(x => )}
Cómo lo comprobamos
{SEG_PROCESO.map(([k, v]) => (
{k}
{v}
))}
{/* ---- Preguntas ---- */}
Preguntas frecuentes
Lo que nos preguntan siempre.
{PREGUNTAS.map(([q, a]) => (
{q}
{a}
))}
{/* ---- Prueba gratis ---- */}
Prueba gratuita
Pruébelo 30 días, gratis.
Totalmente funcional y sin coste. Si contrata, sigue trabajando con todo lo que ya tiene
en la plataforma.
{PRUEBA.map(x => (
{x.n}
{x.h}
{x.p}
))}
1Nos la pide con el formulario.
2Le damos de alta su empresa y le enviamos el acceso.
3Invita a su equipo y a sus clientes, y empieza a trabajar.
Al terminar la prueba
Si no continúa con MASupport, la plataforma se bloquea al acabar los 30 días y
nadie puede entrar. Siete días después se elimina definitivamente toda la
información que contiene: tickets, clientes, equipos, archivos y cuentas. Mientras
dura la prueba puede exportar sus datos a Excel, CSV o JSON en cualquier momento.