EasyUC
4.8.7

EasyUC para Microsoft Teams

Teams Direct Routing de principio a fin

Lista de comprobación completa, desde un sistema vacío hasta la primera llamada desde Teams a un script de EasyUC.

EasyUC · Versión 4.8.7

En EasyUC: EasyUC Teams → Teams → SBC Setup, después Teams Tenants

Para qué sirve

Este capítulo guía, en un orden fijo, por toda la configuración de Microsoft Teams Direct Routing con el SBC integrado de EasyUC. Al final, un usuario de Teams llama a un número y llega a un script de EasyUC. Cada etapa remite al capítulo con los detalles.

Para comprender el funcionamiento: el tenant de Teams envía las llamadas a determinados números, a través de un trunk SIP cifrado, al SBC del servidor EasyUC. El SBC las entrega al script que corresponde al número. Allí se encargan anuncios, menús, colas, agentes o la consola de operador. En sentido contrario, EasyUC entrega llamadas a usuarios de Teams a través del mismo trunk, por ejemplo a operadores con un dispositivo de Teams.

Desde Teams, el SBC solo acepta llamadas a números de script. Por ello el orden es: red, SBC, tenant, certificado, inicio de sesión, script con número, trunk y rutas de voz, política para los usuarios, llamada de prueba.

Requisitos previos

  • EasyUC está instalado, el módulo de licencia teams está presente y activado en EasyUC Manager.
  • Un usuario de EasyUC con el rol EasyUC Teams (ROLE_APP_TEAMS_WORKSPACE) y los subpermisos SBC bearbeiten, TENANTS bearbeiten y SCRIPTS bearbeiten.
  • Una dirección IPv4 pública fija y acceso al firewall y al NAT.
  • Acceso a la zona DNS pública del dominio del cliente.
  • Un administrador del tenant de Microsoft 365: para el dominio, para un registro de aplicación con consentimiento de administrador y con el rol Teams Administrator.
  • Usuarios de Teams con licencia de Teams Phone y Enterprise Voice para la prueba.

Paso a paso, etapa 1: preparar la red y el DNS

  1. Elija el nombre de host, por ejemplo sbc.kunde.de, y cree un registro DNS A que apunte a la IP pública.
  2. Compruebe que el dominio del nombre de host está verificado en el tenant de Microsoft 365.
  3. Permita TCP 5061 entrante y UDP 20000 a 20999 desde las redes 52.112.0.0/14 y 52.120.0.0/14, y TCP 5061 saliente hacia Microsoft.
  4. Detalles: capítulo “DNS, IP pública y firewall para el SBC”.

Paso a paso, etapa 2: activar el SBC

  1. Abra EasyUC Teams → Teams → SBC Setup y haga clic en Enable integrated SBC.
  2. Introduzca Public IP, Media IP y Contact e-mail. Deje Environment en producción y Validation en DNS-01.
  3. Haga clic en Enable integrated SBC y compruebe que SBC service aparece con last seen.
  4. Detalles: capítulo “Activar el SBC de Teams y definir los datos de red”.

Paso a paso, etapa 3: crear el tenant y obtener el certificado

  1. Abra Teams Tenants y haga clic en Add tenant.
  2. Introduzca Customer name, SBC hostname for this tenant y Directory (tenant) ID y haga clic en Create.
  3. Abra el tenant y, en el cuadro Certificate for this hostname, haga clic en Request certificate.
  4. Cree en el DNS el registro TXT mostrado y haga clic en Check and issue now hasta que aparezca issued, valid until.
  5. Detalles: capítulos “Crear y gestionar un tenant de Teams” y “Certificado del SBC por tenant”.

Paso a paso, etapa 4: almacenar el acceso a Microsoft

  1. En el tenant del cliente, registre una aplicación con los permisos de Graph User.Read.All, Presence.Read.All, TeamworkDevice.Read.All y Organization.Read.All, conceda el consentimiento de administrador y asígnele el rol de directorio Teams Administrator.
  2. En la página del tenant, en Microsoft Graph, introduzca el Application (client) ID y el Client secret y haga clic en Save.
  3. Haga clic en Test credentials hasta que aparezca Checked.
  4. En el cuadro Set up the trunk in Teams, compruebe que se muestran PowerShell service reachable y Signs in automatically. Sin registro de aplicación, haga clic en Sign in with a Teams admin.
  5. Detalles: capítulo “Acceso a Graph e inicio de sesión del administrador de Teams”.

Paso a paso, etapa 5: crear un script con un número de Teams

  1. Abra la lista de scripts y haga clic en Create IVR.
  2. Asigne un Name, marque Reachable via MS Teams, seleccione el Teams tenant y la tarjeta Direct Routing.
  3. Introduzca el Number dialled in Teams, por ejemplo +49 40 1234567, y haga clic en Save.
  4. Detalles: capítulo “Hacer accesible un script a través de Microsoft Teams”.

Paso a paso, etapa 6: configurar el trunk y las rutas de voz en Teams

  1. Abra la página del tenant y compruebe el estado Reachable en Scripts over this trunk.
  2. Haga clic en Show what would happen y lea la vista previa.
  3. Haga clic en Set up the trunk now y confirme el aviso.
  4. Compruebe Set up in Microsoft: yes. Tras unos minutos, Reached from Microsoft muestra “Microsoft answers our OPTIONS”.
  5. En el Teams admin center, asigne la política de enrutamiento de voz denominada EasyUC-… a los usuarios que vayan a llamar al número del script. Como alternativa, marque Enable for all users (global policy) antes de la configuración.
  6. Detalles: capítulo “Configurar el trunk y las rutas de voz en Teams”.

Paso a paso, etapa 7: asignar números y realizar la llamada de prueba

  1. Si los usuarios van a recibir sus propios números de teléfono, asígnelos en la sección Number plan mediante Actions → Assign … (capítulo “Plan de numeración de Teams y asignación de números”).
  2. Espere unos minutos hasta que Teams haya aplicado la ruta y la política.
  3. Seleccione Show calls en la barra del tenant.
  4. Llame al número del script desde el cliente de Teams de un usuario con la política de EasyUC.
  5. La llamada aparece en Show calls y se oye el saludo del script.
  6. A continuación, abra Call history, haga clic en la llamada y compruebe el diagrama de escalera SIP.
  7. En caso de errores: capítulo “Llamadas de Teams, flujo SIP y capturas”.

Campos y opciones

Campos y opciones
Campo / acciónSignificado y uso
HostnameUn nombre por tenant en el dominio del cliente, por ejemplo sbc.kunde.de.
Public IP / Media IPDirección externa para Microsoft y dirección local para RTP.
TLS portPor defecto 5061, el siguiente puerto libre para cada tenant adicional.
RTP rangePor defecto UDP 20000 a 20999.
CertificateLet’s Encrypt mediante DNS-01, manualmente con un registro TXT o automáticamente con Cloudflare.
Graph permissionsUser.Read.All, Presence.Read.All, TeamworkDevice.Read.All; para el inicio de sesión de la aplicación en Teams PowerShell, Organization.Read.All y el rol de directorio Teams Administrator; para la sincronización de presencia, Presence.ReadWrite.All.
Objects in TeamsGateway PSTN, uso de PSTN, ruta de voz y política de enrutamiento de voz, denominados EasyUC- más la primera etiqueta del nombre de host.
Script numberFormato internacional con un + inicial, exactamente un script por número y por tenant.
Further tenantsRepita las etapas 1 y 3 a 7 para cada cliente con su propio nombre de host y su propio puerto TLS. La etapa 2 se aplica a todos los tenants conjuntamente.

Comprobar el resultado y acotar errores

  • Éxito: certificado valid, trunk active, Last OPTIONS actual, script Reachable, Routes in Teams Up to date y la llamada de prueba llega al saludo.
  • El servicio SBC no se registra: compruebe la etapa 2 y el servicio en EasyUC Manager.
  • El certificado permanece en DNS entry required: el registro TXT todavía no es visible públicamente o tiene un valor antiguo.
  • „Microsoft kennt die Domain dieses SBC-Namens in diesem Tenant nicht.“ Verifique el dominio en el tenant de Microsoft 365 (etapa 1).
  • El trunk permanece down: compruebe el firewall para el puerto TLS entrante y el TCP 5061 saliente, el entorno producción en lugar de staging y el nombre de host exactamente igual que en el certificado.
  • Teams muestra un error inmediatamente al marcar y la llamada no aparece en el historial de llamadas: el usuario no tiene la política de EasyUC o Teams todavía no la ha aplicado.
  • La llamada figura en el historial pero se rechaza: el número no pertenece a ningún script activo de este tenant. Compruebe Scripts over this trunk en la página del tenant.
  • La llamada se contesta pero no hay audio: compruebe la IP pública, la IP de medios y la regla UDP.
  • Para los números de Operator Connect se aplica una vía distinta: capítulo “Operator Connect mediante reenvío de Teams”.

Capítulos relacionados