Azure Communication Services (ACS)

repository·master·Indexed 43 days ago

https://github.com/azure/communication

Cloud-based APIs and SDKs for integrating voice, video, chat, SMS, and email into applications. Provides specialized libraries for Calling, Chat, Email, and Identity across JavaScript, .NET, Python, Java SE, iOS, and Android, as well as production-ready UI components and administrative tools for phone number management and porting.

Tokens
46.1K
Snippets
85
Records
299
Agent score
56%

What's inside Azure Communication Services

  1. Overview of Azure Communication Services

    master
    Azure Communication Services provides cloud-based services with REST APIs and client library SDKs to integrate communication features (like voice, video, chat, and SMS) into applications without requiring expertise in telecommunications networking, media encoding, or PSTN.
  2. Overview of Azure Communication Services Email APIs

    master

    Azure Communication Services provides new Email APIs designed for Application-to-Person (A2P) communication. These APIs support high-volume use cases such as appointment reminders, alerts, MFA notifications, and password resets.

    Key capabilities include:

    • Simple REST APIs and SDKs (.NET and JavaScript).
    • Custom domain support for sending emails from verified domains.
    • Provisioning of Azure Managed Domains.
    • Near real-time delivery status tracking.
  3. Available features in ACS Calling Windows SDK

    master

    The ACS Calling Windows SDK supports the following capabilities for building communication applications:

    • Calling: Place and receive 1-1 audio/video calls and 1-N (group) audio/video calls. You can also join existing group calls.
    • Call Escalation & Dial-out: Escalate a 1-1 call to a group call by adding a VoIP participant, or dial-out to a VoIP participant to join an ongoing group call.
    • Video Management: Preview local video camera, share local video camera streams, render video from participants, and render screenshare from participants.
    • Device & Media Control: List audio/video devices and perform mid-call operations such as Mute/Unmute, Turn Video on/off, and switching between video devices.
    • Participant Management: Add or remove participants from an ongoing audio/video call.
    • PSTN Support: Place calls to PSTN (Public Switched Telephone Network) participants.
    • Notifications: Support for push notifications for incoming audio/video calls.
    • Testing: Test microphone, speaker, and camera via the audio testing service by calling 8:echo123.
  4. View the Azure Communication Services roadmap

    master

    The Azure Communication Services roadmap provides visibility into significant features currently in development or planned for upcoming quarters. The roadmap tracks features by Area (e.g., Calling, SMS, Chat, Rooms), Release status (Public Preview or GA), and current Status (Launched, In Progress, etc.).

    Note that these plans are subject to change and are intended to provide visibility into key investments rather than a comprehensive list of all work.

  5. Initial capabilities of the ACS Calling Web (JavaScript) SDK

    master

    The initial release (v1.0.0-beta.1) of the Azure Communication Services for JavaScript (Web) SDK provides core audio and video calling capabilities.

    Supported Features:

    • Call Types: 1-1 audio/video calls, 1-N (group) audio/video calls, and joining existing group calls.
    • Call Management: Escalate 1-1 calls to group calls by adding VOIP participants, joining calls with microphone muted, and hold/unhold functionality.
    • Media Control: Mid-call operations including mute/unmute, turning video on/off, and adding/removing participants.
    • Device Management: Using DeviceManager to list and set audio/video devices, setting camera devices before or during a call, and local camera previews.
    • Visuals & Sharing: Remote video rendering, screen-sharing support, and remote participant states.
    • Events: Monitoring Call and RemoteParticipant states via property changed and collection updated events.
    • PSTN: Ability to place calls to PSTN participants (requires a PSTN number in ACS).
    • Testing: Audio testing service available by calling 8:echo123 to test mic, speaker, and camera.
  6. Access transaction forms for Azure Communication Services

    master

    This repository contains specific forms required to perform certain administrative or bulk transactions within Azure Communication Services. These forms are used for:

    • Number porting: Moving existing phone numbers to Azure Communication Services.
    • Special bulk orders: Placing large-scale orders for communication resources.
    • Bulk file for toll-free verification: Submitting files to verify toll-free numbers for compliance.

    For conceptual guidance on how these resources work, refer to the official Azure documentation for phone number types, telephony concepts, and SMS concepts.

  7. Chat SDK features for Android and iOS

    master

    Recent updates to the Azure Communication Services Chat SDKs include:

    Android (v1.1.0):

    • General Availability (GA) support for push notifications.

    iOS (v1.1.0):

    • General Availability (GA) release of the SDK.
    • Support for adding metadata to chat messages.
    • Support for adding a display name to typing indicators.
  8. Available features in ACS Calling iOS SDK (Public Preview)

    master

    The following calling capabilities are available in the SDK:

    • Call Types: Place and receive 1-1 and 1-N (group) audio/video calls; join group calls; escalate 1-1 calls to group calls by adding a VOIP participant; dial-out to a VOIP participant to join an ongoing group call.
    • Media & Video: Preview local video camera; share local video camera stream; render video from participants; render screenshare from participants.
    • Device Management: List audio/video devices; switch between video devices.
    • Mid-call Operations: Mute/Unmute; Turn Video on/off; Add/Remove participants from an ongoing call.
    • Connectivity: Push notification support for incoming calls; place calls to PSTN participants.
    • Testing: Test mic, speaker, and camera via the audio testing service by calling 8:echo123.

    Note on PSTN: While the SDK supports PSTN calls, you must have a PSTN number in ACS. PSTN functionality is subject to availability and may be under private preview.

  9. Handle User Facing Diagnostics (UFDs)

    master

    The SDK provides User Facing Diagnostics (UFDs) to help developers identify and communicate device or network issues to the end user.

    Key UFDs include:

    • capturerStartFailed: Triggered when failing to start screen-share or recovery.
    • capturerStoppedUnexpectedly: Triggered when screen-share stops working unexpectedly.
    • cameraStoppedUnexpectedly: Triggered when the camera stops working unexpectedly.
    • networkSendQuality: Triggered when network send quality is poor or during recovery.
    • isSpeakingWhileDeviceIsMuted: Triggered when a user speaks while their microphone is muted.