Dev & Engineering ✓ Microsoft · Official azure-communication-servicesjava-sdkreal-time-chatchat-messagingread-receiptstyping-notificationsmaven

Azure Communication Chat for Java

A practical Java SDK guide for building Azure real-time chat threads, messaging, and participant workflows.

FollowSkills review · FSRS-2.0
Not recommended
44/ 100 5-point scale 2.2 / 5
Trust12 / 25 · 2.4/5

The skill explicitly uses CommunicationTokenCredential and a user access token, and mentions token expiry; however, it does not explain secure token storage, what chat data is sent or retained, or require confirmation before external side effects such as creating/deleting threads, deleting messages, or changing participants. Rollback and least-privilege guidance are also absent, so points are deducted.

Reliability6 / 20 · 1.5/5

It covers client creation, threads, messages, participants, receipts, typing notifications, pagination, and HTTP error handling, with both synchronous and asynchronous examples. Reliability is reduced because the main document and references specify different dependency versions, some snippets omit required imports such as ChatAsyncClient, OffsetDateTime, and Context, and there is little coverage of retries, token refresh implementation, abnormal inputs, or API compatibility. Static calibration therefore limits the score.

Adaptability8 / 15 · 2.7/5

The audience, Java/Azure Communication Services domain, and trigger phrases are reasonably clear, and common chat capabilities are covered. It does not define non-fit scenarios, input/output boundaries, service prerequisites, regional reachability, or Chinese-language usage guidance, and its core function depends on an external Azure service, so points are deducted.

Convention8 / 15 · 2.7/5

The skill has front matter, an MIT license, a version field, installation instructions, organized examples, a reference file, error handling, and best practices. Points are deducted for inconsistent version metadata, no changelog, no clearly stated maintenance/update path, and incomplete disclosure of security limits, FAQs, and progressive-reference usage.

Effectiveness6 / 15 · 2.0/5

The examples directly address core chat CRUD and interaction tasks and offer useful implementation patterns. Effectiveness is reduced because snippets have version and import inconsistencies and do not provide a complete buildable project, authentication setup, service prerequisites, or robust boundary handling; users would need nontrivial correction, so the static ceiling applies.

Verifiability4 / 10 · 2.0/5

The skill and reference file contain auditable code and error-code material, and the repository shows general evaluation infrastructure. However, the supplied evidence contains no skill-specific committed tests, CI coverage, or third-party execution results proving the key API examples reproduce successfully, so the score remains limited.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a
Before you use it
  • Unify the azure-communication-chat version and verify each API, import, and async client type against the intended SDK release before use.
  • Do not hard-code or log user access tokens; add secure storage, refresh, revocation, and least-privilege guidance.
  • Creating or deleting threads, deleting messages, and changing participants have irreversible or externally visible effects; require confirmation and document the lack of rollback.
  • HTML and chat content create injection, privacy, and data-residency risks; the skill lacks filtering, encoding, and data-flow guidance.
  • The core capability depends on Azure Communication Services; confirm account configuration, permissions, regional networking, and mainland-China reachability.
See the full review method →

What it does & when to use it

This skill helps Java developers build real-time chat applications with the Azure Communication Services Chat Java SDK. It covers chat thread creation and deletion, message lifecycle operations, participant management, read receipts, typing notifications, pagination, and HTTP error handling. It includes Maven dependency setup, synchronous and asynchronous client creation, environment variables, and implementation best practices. It is a good fit for teams already using Azure Communication Services and seeking focused Java SDK guidance, but it is not a complete application template or deployment guide.

It shows how to add com.azure:azure-communication-chat:1.6.0, create synchronous or asynchronous clients with CommunicationTokenCredential, and connect to an Azure Communication Services endpoint. It provides examples for creating, listing, updating, and deleting chat threads; sending text and HTML messages; listing messages with pagination; retrieving, editing, and deleting individual messages. It also demonstrates listing, adding, and removing participants, setting shared history time, sending and listing read receipts, sending typing notifications, and reading or updating thread topics. It includes status-code handling for unauthorized, forbidden, and missing-thread errors, plus guidance on token refresh, pagination, filtering system messages, and sending receipts only after messages are viewed.

  1. A Java backend developer building a project discussion room can create a thread, add participants, and send messages with the SDK patterns shown here.
  2. A team implementing a message history view can use the paging examples to list messages and inspect sender, content, timestamps, edits, and deletions.
  3. A developer adding read-state and typing indicators can use the dedicated read receipt and typing notification examples.
  4. A product that controls how much history new participants can see can apply `shareHistoryTime` when adding participants.
  5. A developer troubleshooting chat requests can use the included 401, 403, and 404 handling patterns as a starting point.

Pros & cons

Pros
  • Covers the core chat thread, message, participant, read receipt, and typing notification workflows.
  • Includes synchronous and asynchronous client creation, pagination, and HTTP error handling examples.
  • Uses concrete Azure Communication Chat Java SDK classes and Maven coordinates.
  • The repository is MIT-licensed and described as actively maintained and under development.
Limitations
  • The examples depend on a CommunicationTokenCredential and a valid Azure Communication Services endpoint; token issuance and a complete identity architecture are not covered.
  • It does not provide a full application architecture, frontend, deployment workflow, or test suite.
  • Its scope is limited to the Java chat SDK and should not be expanded to capabilities of sibling skills in the monorepo.
  • The supplied material does not establish testing against a particular Java version, operating system, or production workload.

How to install

Run npx skills add microsoft/skills and select azure-communication-chat-java in the installation wizard. The README says skills are installed into the selected agent directory, such as .github/skills/ for GitHub Copilot. The source skill is located at .github/plugins/azure-sdk-java/skills/azure-communication-chat-java/SKILL.md. No other dedicated installation procedure is documented in the supplied material.

How to use

After installation, prompt the coding agent with a request such as: “Build a Java Azure Communication Services chat thread with messaging, participants, and read receipts.” Add the Maven dependency com.azure:azure-communication-chat:1.6.0, configure AZURE_COMMUNICATION_ENDPOINT and AZURE_COMMUNICATION_USER_TOKEN, and provide a valid CommunicationTokenCredential.

FAQ

Does this skill provision Azure Communication Services resources?
No. It documents client setup and chat operations, but does not document resource provisioning, deployment, or token issuance.
What credentials are required?
The examples require `CommunicationTokenCredential` initialized with a user access token, plus a configured Azure Communication Services endpoint.
How does it address common failures?
The sample maps 401 to token problems, 403 to the user not being in the thread, and 404 to a missing thread.
Is it sufficient for a production application?
It is a focused SDK integration reference. Production systems still need to add their own token refresh, identity management, persistence, observability, and testing.

More skills from this repository

All from microsoft/agent-skills

Dev & Engineering ✓ Microsoft · Official

Azure Identity for Python

A practical skill for securing Python Azure applications with Microsoft Entra ID credentials.

Dev & Engineering ✓ Microsoft · Official

Azure Event Hubs Java Skill

Build production-oriented Java event streaming applications on Azure Event Hubs.

Dev & Engineering ✓ Microsoft · Official

Azure Tables for Python

A practical guide to building authenticated Azure Tables applications with Python entity CRUD, queries, and partition-scoped batch operations.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for TypeScript

Configure secure, flexible Microsoft Entra ID authentication for TypeScript Azure applications.

Automation & Ops ✓ Microsoft · Official

Azure Reliability Advisor

Assess and improve reliability for Azure Functions and App Service.

Dev & Engineering ✓ Microsoft · Official

Azure Cloud Architect

Guides coding agents through production-grade Azure architecture design and review using Azure Architecture Center practices.

Dev & Engineering ✓ Microsoft · Official

Azure AI Text Analytics for Python

Guides Python developers through Azure-powered text analysis and NLP workflows.

Automation & Ops ✓ Microsoft · Official

Azure Resource Architecture Visualizer

Analyze Azure resource groups and turn their dependencies into detailed Mermaid architecture diagrams.

Dev & Engineering ✓ Microsoft · Official

Azure Maps for .NET

Build .NET location features for search, routing, maps, geolocation, and weather.

Dev & Engineering ✓ Microsoft · Official

Azure AI Vision Image Analysis

Guides Python coding agents in implementing Azure AI Vision image understanding.

Dev & Engineering ✓ Microsoft · Official

Azure Blob Storage for Python

Guides secure, production-minded Blob Storage operations in Python.

Dev & Engineering ✓ Microsoft · Official

Azure Queue Storage for Python

Gives coding agents reliable Python patterns for secure Azure Queue Storage messaging and asynchronous task processing.

Automation & Ops ✓ Microsoft · Official

Azure AI Gateway Governance

Use Azure API Management to govern traffic across AI models, MCP tools, and agents.

Automation & Ops ✓ Microsoft · Official

AKS Automatic Readiness

Assess Kubernetes workloads for AKS Automatic compatibility and identify migration blockers before you switch.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB ARM for .NET

Provision and manage Azure Cosmos DB resources from .NET through ARM.

Dev & Engineering ✓ Microsoft · Official

Azure Playwright Workspace Manager

Provision and manage Microsoft Playwright Testing workspaces with .NET and Azure Resource Manager.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB for Python

A practical guide for building reliable Python applications on Azure Cosmos DB’s NoSQL API.

Dev & Engineering ✓ Microsoft · Official

Azure Key Vault SDK for Python

Gives Python coding agents practical guidance for securely managing Azure Key Vault secrets, keys, and certificates.

Dev & Engineering ✓ Microsoft · Official

Azure API Management for Python

Gives coding agents practical Python SDK patterns for managing Azure API Management services, APIs, products, subscriptions, and policies.

Dev & Engineering ✓ Microsoft · Official

Azure Monitor Query for Python

Generate Python code for querying Azure Monitor logs and metrics.

Related skills