Ir al contenido principal
DocumentaciónFunciones opcionales

Push y voz opcionales en el SDK

Añade push o voz solo cuando el host quiera permisos nativos adicionales, configuración de proveedores y responsabilidad por el ciclo de vida.

En esta página

El SDK de chat base no pide permisos y los hosts seleccionados pueden activar APNs, FCM o el micrófono de forma explícita.

Elige una capacidad explícitamente

El chat y el widget nativo son la versión base. Los productos opcionales de iOS son DobroDeskPush y DobroDeskVoice. Las coordenadas opcionales de Android son com.dobrodesk:dobrodesk-push:0.2.0 y com.dobrodesk:dobrodesk-voice:0.2.0 en el repositorio Maven local del bundle. Son productos nativos: los wrappers de Flutter, React Native, NativeScript y Capacitor no exportan un cliente push. El asset público es https://github.com/comstud-io/dobrodesk-mobile-sdk/releases/download/v0.2.0/dobrodesk-mobile-sdk-0.2.0-bundle.tar.gz.

No añadas ninguna capacidad a todos los hosts por defecto. Push requiere registro APNs o FCM propiedad del host, rotación de tokens, permiso de notificaciones y un relay autenticado. Voz requiere permiso de micrófono y ciclo de audio propiedad del host. El SDK base nunca pide ninguno de estos permisos ni inicia trabajo en segundo plano.

Módulos Android opt-in
// Register the extracted bundle's native/maven directory in host settings first.
dependencies {
  implementation("com.dobrodesk:dobrodesk-voice:0.2.0") // optional
  // implementation("com.dobrodesk:dobrodesk-push:0.2.0") // optional
}

Mantén el registro push fuera del SDK base

Registra el device token mediante el flujo autenticado del proveedor y vincúlalo a la cuenta o sesión DobroDesk verificada. Rota los tokens, elimínalos al hacer logout y deja que el servidor descarte los tokens inválidos. Limita el payload de notificación a los identificadores documentados. No incluyas texto de respuesta, mensajes de clientes ni credenciales.

El cliente base no importa Firebase ni crea un registro APNs o FCM. Un host que no necesite push no debe pedir permiso de notificaciones ni incluir el artefacto opcional.

Mantén explícitos el permiso de voz y la limpieza

Solicita el permiso de micrófono solo después de que el cliente elija voz y la integración esté autorizada para usarla. Si se deniega el permiso o la capacidad del servidor no está disponible, oculta la acción de voz en lugar de mostrar un control desactivado permanentemente.

Libera la fachada de voz conectada durante logout o el reemplazo del wrapper. Los hosts nativos directos deben liberarla antes de reset y de reemplazar el cliente. Detén el trabajo de audio pendiente, cancela los listeners e ignora los inicios tardíos después de close, reset o cambio de cuenta.

Conecta voz solo después de la configuración nativa

Después de instalar el módulo nativo de voz elegido, el adaptador de la plataforma crea el DobroDeskVoicePort que necesita el wrapper del framework. El port lo crea el host. El SDK base no proporciona una implementación pública de audio ni solicita permisos por sí mismo.

Ciclo de voz del framework
const voice = await client.attachVoice(nativeVoicePort);
await voice.start();

// On logout or host teardown:
await voice.dispose();