SIVO
← Volver al blog
#salesforce#scv#integraciones

Service Cloud Voice con SIVO en 10 minutos

De org SF sin telefonía a primera llamada entrando como VoiceCall + Conversation. Sin certificados manuales, sin Connected App, sin tocar Apex.

Iván Jerez ·

Salesforce Service Cloud Voice promete consola unificada, transcripción nativa y Einstein Conversation Insights — pero el partner telephony es lo que decide si el proyecto se entrega en una semana o en tres meses. Esta es la guía paso a paso de cómo conectar SIVO con una org de Salesforce y tener la primera llamada entrando como VoiceCall antes de comer.

Lo que NO vas a hacer

Las integraciones SCV tradicionales exigen:

  • Subir un certificado X.509 a SF.
  • Crear una Connected App con OAuth JWT bearer y registrar el iss correcto.
  • Configurar External Credentials y Named Credentials.
  • Mapear cada usuario SF ↔ usuario del partner manualmente.
  • Recordar refrescar el token cada 90 días.

Con SIVO no haces nada de esto. Lo gestiona el connector zero-touch.

Lo que SÍ vas a hacer

Paso 1 · Instalar el connector

Abre el package en tu org (sandbox o producción). Es una External Client App + un LWC + 2 metadata records. Un click.

https://login.salesforce.com/packaging/installPackage.apexp?p0=<package-id>

El connector autodetecta Organization.IsSandbox y configura el endpoint OAuth (test.salesforce.com vs login.salesforce.com) automáticamente.

Paso 2 · Conectar desde el LWC

Setup → buscar “SIVO Connector” → pestaña Setup. Pulsa el botón Conectar con SIVO. Salesforce abre una ventana OAuth con PKCE; SIVO recibe el callback en https://app.sivocenter.com/salesforce?autoConnect=1.

Si no estás logueado en SIVO, el router te redirige al login y vuelve a recoger el flow donde lo dejaste — no pierdes el contexto.

Paso 3 · Auto-discovery

Tras el callback, SIVO consulta SOQL:

SELECT Id, IsSandbox, Name FROM Organization LIMIT 1
SELECT Id, Endpoint FROM ScrtServiceConfiguration LIMIT 1
SELECT Id, InternalName FROM CallCenter
  WHERE InternalName LIKE 'SIVO_%' LIMIT 1

Y configura sin intervención manual:

  • org_id (15 char) y scrt_base_url real de tu org.
  • call_center_name (necesario para Omni-Channel routing).
  • Sandbox vs producción (en la BD del partner).

Paso 4 · Mapping de usuarios

Click en “Auto-import SF users”. SIVO consulta SELECT Id, Email, Name FROM User WHERE IsActive=true AND UserType='Standard' y busca matches por email con tus agentes SIVO existentes. Los matchados quedan vinculados; los no matchados los puedes crear con un click.

Paso 5 · Primera llamada entrante

Configura un DID en SIVO apuntando a un IVR (o cola directa). Llama desde tu móvil al número:

  1. Trunk Zadarma/Twilio entrega la llamada.
  2. SIVO crea VoiceCall en SF vía SCRT2 POST /voiceCalls.
  3. vendorCallKey se asigna al canal SIP.
  4. Omni-Channel enruta al agente disponible.
  5. El softphone WebRTC suena dentro de la consola SF.

Verificación: en tu org, SELECT Id, CallStatus FROM VoiceCall ORDER BY CreatedDate DESC LIMIT 1 debe devolver inProgress o completed.

Transcripción en vivo

Si activas la política de transcripción (Pro/Enterprise), cada turno se empuja a SF como:

POST /telephony/v1/voiceCalls/{vendorCallKey}/messages
Telephony-Provider-Name: calltree
Content-Type: application/json

{
  "messageId": "uuid-v4",
  "messageSequenceNumber": 1,
  "senderType": "ENDUSER",
  "senderName": "+34611222333",
  "content": "Hola, llamo por mi factura del mes pasado.",
  "timestamp": "2026-05-19T10:23:45Z"
}

Lo importante: uno por uno, no batch, con el header Telephony-Provider-Name. Salesforce materializa cada mensaje como Conversation + ConversationEntry, listos para Einstein CI sin código adicional.

Por qué este modelo es el moderno

VoiceCallTranscript está deprecated desde 2024. El nuevo modelo Conversation/ConversationEntry permite:

  • Mezclar canales (voz + chat + mail) en un solo thread por caller.
  • Einstein Sentiment, Topics, Coaching nativos.
  • Lifecycle independiente del VoiceCall (auditable, expiración configurable).
  • Soporte oficial para multi-participante (HUMAN_AGENT, ENDUSER, BOT, SUPERVISOR).

Si tu integrador todavía empuja a VoiceCallTranscript, esa integración está a 12 meses de romperse.

Multi-org

Una sola instancia SIVO conecta N orgs SF. Útil para holdings o BPOs operando llamadas para varias marcas con sus respectivas orgs. El mapping de usuarios es independiente por org — cada agente puede estar mapeado en una o más orgs sin conflictos de identidad.

Tiempo real medido

  • Conector instalado: 2 min
  • OAuth + auto-discovery: 30 s
  • Mapping de 5 usuarios: 1 min
  • Configurar DID + IVR simple: 3 min
  • Primera llamada: 1 min

Total: 8 minutos desde org limpia hasta VoiceCall.CallStatus = inProgress.

Empieza tu trial de 14 días y prueba la integración con tu propia org SF.

Tu centralita con superpoderes IA, en minutos.

Empieza con 14 días gratis. Sin tarjeta. Sin permanencia.