SDK y API REST
Las funcionalidades de Azure Communication Services están organizadas conceptualmente en ocho áreas. La mayoría de las áreas tienen SDK de código abierto totalmente programados con las API de REST publicadas que puede usar directamente a través de Internet. Calling SDK usa interfaces de red propietarias y tiene formato de código cerrado.
En las tablas siguientes se resumen estas áreas y la disponibilidad de las API REST y las bibliotecas del SDK. Observe también si las API y los SDK están diseñados para clientes de usuario final o entornos de servicio de confianza. Los dispositivos de usuario final no deben acceder directamente a las API y SDK, como SMS, en entornos de confianza baja.
El desarrollo de aplicaciones de llamadas y chat basadas en web puede acelerarse con las bibliotecas de interfaz de usuario de Azure Communication Services. La biblioteca de interfaz de usuario proporciona componentes de interfaz de usuario preparados para la producción que puede colocar en sus aplicaciones.
API de REST
Las API de Communication Services están documentadas junto con otras API REST de Azure en docs.microsoft.com. Esta documentación le indicará cómo estructurar los mensajes HTTP y ofrece instrucciones para el uso de Postman. La documentación de la interfaz de REST también se ofrece en formato Swagger en GitHub.
SDK
| Ensamblado | Protocolos | Entorno | Funcionalidades |
|---|---|---|---|
| Azure Resource Manager | REST | Servicio | Aprovisiona y administra recursos de Communication Services. |
| Comunes | N/D | Cliente y servicio | Proporciona tipos base para otros SDK |
| Identidad | REST | Servicio | Administración de usuarios y tokens de acceso |
| Números de teléfono | REST | Servicio | Adquisición y administración de números de teléfono |
| SMS | REST | Servicio | Envía y recibe mensajes SMS. |
| Chat | REST con señalización propietaria | Cliente y servicio | Incorpora chat de texto en tiempo real a las aplicaciones. |
| Llamar | Transporte propietario | Cliente | Permite usar la voz, el vídeo, el uso compartido de pantalla y otras comunicaciones en tiempo real. |
| Servidor de llamadas | REST | Servicio | Permite hacer y administrar llamadas, reproducir audio y configurar la grabación. |
| Network Traversal | REST | Servicio | Permite acceder a servidores TURN para el transporte de datos de bajo nivel. |
| Biblioteca de interfaz de usuario | N/D | Cliente | Componentes de interfaz de usuario listos para producción para aplicaciones de chat y de llamadas |
Idiomas y ubicaciones de publicación
A continuación se detallan las ubicaciones de publicación para los paquetes de SDK individuales.
| Área | JavaScript | .NET | Python | Java SE | iOS | Android | Otros |
|---|---|---|---|---|---|---|---|
| Azure Resource Manager | npm | NuGet | PyPi | Maven | - | - | Go a través de GitHub |
| Comunes | npm | NuGet | N/D | Maven | GitHub | Maven | - |
| Identidad | npm | NuGet | PyPi | Maven | - | - | - |
| Números de teléfono | npm | NuGet | PyPi | Maven | - | - | - |
| Chat | npm | NuGet | PyPi | Maven | GitHub | Maven | - |
| SMS | npm | NuGet | PyPi | Maven | - | - | - |
| Llamar | npm | NuGet | - | - | GitHub | Maven | - |
| Automatización de llamadas | NuGet | Maven | |||||
| Network Traversal | npm | NuGet | |||||
| Biblioteca de interfaz de usuario | npm | - | - | - | - | - | GitHub, Storybook |
| Documentación de referencia | docs | docs | - | docs | docs | docs | - |
La asignación entre nombres de ensamblado de confianza y espacios de nombres es:
| Ensamblado | Espacios de nombres |
|---|---|
| Azure Resource Manager | Azure.ResourceManager.Communication |
| Comunes | Azure.Communication.Common |
| Identidad | Azure.Communication.Identity |
| Números de teléfono | Azure.Communication.PhoneNumbers |
| SMS | Azure.Communication.SMS |
| Chat | Azure.Communication.Chat |
| Llamar | Azure.Communication.Calling |
| Servidor de llamadas | Azure.Communication.CallingServer |
| Network Traversal | Azure.Communication.NetworkTraversal |
| Biblioteca de interfaz de usuario | Azure.Communication.Calling |
Limitaciones de la API de REST
Ciertas API de REST y los métodos de SDK correspondientes tienen límites que se deben tener en cuenta. Si se superan estos límites, se desencadenará una respuesta de error 429 - Too Many Requests. Estos límites se pueden aumentar a través de una solicitud al Soporte técnico de Azure.
| API | Limitación |
|---|---|
| Todas las API de plan de número de teléfono de búsqueda | 4 solicitudes/día |
| Plan de número de teléfono de compra | 1 compra al mes |
| Envío de SMS | 200 solicitudes por minuto |
Detalles de compatibilidad de la plataforma de SDK
iOS y Android
- Los SDK de iOS de Communication Services tienen como destino iOS versión 13+ y Xcode 11+.
- Los SDK de Java para Android se dirigen al nivel de API de Android 21+ y Android Studio 4.0+.
.NET
A excepción de las llamadas, los paquetes de Communication Services tienen como destino .NET Standard 2.0, que es compatible con las plataformas que se enumeran a continuación.
Compatibilidad mediante .NET Framework 4.6.1
- Windows 10, 8.1, 8 y 7
- Windows Server 2012 R2, 2012 y 2008 R2 SP1
Compatibilidad mediante .NET Core 2.0:
- Windows 10 (1607+), 7 SP1+, 8.1
- Windows Server 2008 R2 SP1 y versiones posteriores
- Max OS X 10.12+
- Varias versiones o distribuciones de Linux
- UWP 10.0.16299 (RS3) septiembre 2017
- Unity 2018.1
- Mono 5.4
- Xamarin iOS 10.14
- Xamarin Mac 3.8
El paquete de llamadas admite la compilación de aplicaciones para UWP con .NET Native o C++/WinRT en:
- Windows 10 10.0.17763
- Windows Server 2019 10.0.17763
Expectativas de estabilidad de API
Importante
En esta sección se proporcionan instrucciones sobre las API DE REST y los SDK marcados como estables. Las API marcadas como versión preliminar o beta se pueden cambiar o dejar de usar sin previo aviso.
En el futuro, es posible que retiremos las versiones de los SDK de Communication Services y que introduzcamos cambios importantes en nuestras API de REST y SDK publicados. Azure Communication Services generalmente sigue dos directivas de compatibilidad para retirar versiones de servicio:
- Se le notificará con una antelación de al menos tres años cuando sea necesario cambiar el código debido a un cambio en la interfaz de Communication Services. Todas las API de REST documentadas y las API de los SDK generalmente disfrutan de un período de al menos tres años de advertencia antes de que se retiren las interfaces.
- Se le notificará al menos un año antes de que tenga que actualizar los ensamblados de los SDK a la versión secundaria más reciente. Estas actualizaciones necesarias no deben requerir ningún cambio en el código porque están en la misma versión principal. El uso del SDK más reciente es sumamente importante para las bibliotecas de Calling y Chat que usan componentes en tiempo real que a menudo requieren actualizaciones de seguridad y rendimiento. Le recomendamos encarecidamente que mantenga actualizados todos los SDK de Communication Services.
Ejemplos de retirada de API y SDK
Ha integrado la versión 24 de la API REST de SMS en la aplicación. Publicaciones de Azure Communication Services v25.
Recibirá una advertencia tres años antes de que estas API dejen de funcionar y sea obligatorio actualizarlas a la v25. Es posible que esta actualización requiera un cambio de código.
Ha integrado la versión v2.02 de los SDK de llamadas en la aplicación. Publicaciones de Azure Communication Services v2.05.
Es posible que se le pida que actualice a la versión v2.05 de los SDK de llamadas en un plazo de 12 meses a partir de la publicación de la v2.05. Debe ser un reemplazo sencillo del artefacto sin necesidad de un cambio de código porque la v2.05 está en la versión principal v2 y no tiene cambios importantes.
Pasos siguientes
Para obtener más información, consulte la siguiente información general de los SDK:
- Información general del SDK de llamada
- Información general del SDK de chat
- Información general del SDK de SMS
Para empezar a trabajar con Azure Communication Services: