Skip to main content
skill

azure-communication-callingserver-java — Claude Code skill

A Microsoft skill for maintaining Java projects built on the deprecated Azure Communication Services CallingServer SDK and moving their code to Call Automation.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add microsoft/skills --skill azure-communication-callingserver-java -a claude-code
Open on GitHub

What azure-communication-callingserver-java does

This skill covers the legacy Java package com.azure:azure-communication-callingserver. It helps developers maintain existing integrations that create a CallingServerClient, work with call connections, or control recordings. Microsoft directs new development toward azure-communication-callautomation instead.

The examples cover client construction with a connection string and recording controls for starting, pausing, resuming, and stopping a recording. A class mapping explains the migration: CallingServerClient becomes CallAutomationClient, while the removed ServerCall class is replaced by CallConnection.

For Maven projects, the documented dependency change is from com.azure:azure-communication-callingserver version 1.0.0-beta.5 to com.azure:azure-communication-callautomation version 1.6.0. Code that uses the old client classes must also be updated. The CallingServer SDK is deprecated, so this skill belongs in legacy maintenance work rather than new implementations. It supports Claude Code and GitHub Copilot.

What it helps with

  • Locate legacy CallingServer classes in a Java codebase
  • Replace the deprecated SDK dependency with Call Automation
  • Update client construction to use the new builder
  • Move call recording controls to the replacement SDK
  • Replace references to the removed ServerCall class

Example prompts for the agent

  • Help me maintain this existing Java integration built on azure-communication-callingserver-java.
  • Migrate azure-communication-callingserver to azure-communication-callautomation and update the affected client classes.
  • Show me how to move recording start, pause, resume, and stop operations to Call Automation.

How to install azure-communication-callingserver-java

1Skills CLI (Vercel)

npx skills add microsoft/skills --skill azure-communication-callingserver-java -a claude-code

2Manually: put the files in place

~/.claude/skills/azure-communication-callingserver-java/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/azure-communication-callingserver-java/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about azure-communication-callingserver-java

How do I install azure-communication-callingserver-java in Claude Code?

Run npx skills add microsoft/skills --skill azure-communication-callingserver-java -a claude-code. The skill file is located at ~/.claude/skills/azure-communication-callingserver-java/SKILL.md.

What does azure-communication-callingserver-java do?

It guides maintenance of Java applications using the deprecated Azure Communication Services CallingServer SDK. Its examples cover client creation, call connections, recording controls, and migration to Call Automation.

Which classes change when migrating from CallingServer to Call Automation?

CallingServerClient and CallingServerClientBuilder become CallAutomationClient and CallAutomationClientBuilder. ServerCall is removed and replaced by CallConnection.

Source text

SKILL.md · MIT
---
name: azure-communication-callingserver-java
description: Azure Communication Services CallingServer (legacy) Java SDK. Note - This SDK is deprecated. Use azure-communication-callautomation instead for new projects. Only use this skill when maintaining legacy code.
license: MIT
metadata:
  author: Microsoft
  version: "1.0.0"
  package: com.azure:azure-communication-callingserver
---

# Azure Communication CallingServer (Java) - DEPRECATED

> **⚠️ DEPRECATED**: This SDK has been renamed to **Call Automation**. For new projects, use `azure-communication-callautomation` instead. This skill is for maintaining legacy code only.

## Migration to Call Automation

```xml
<!-- OLD (deprecated) -->
<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-communication-callingserver</artifactId>
    <version>1.0.0-beta.5</version>
</dependency>

<!-- NEW (use this instead) -->
<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-communication-callautomation</artifactId>
    <version>1.6.0</version>
</dependency>
```

## Class Name Changes

| CallingServer (Old) | Call Automation (New) |
|---------------------|----------------------|
| `CallingServerClient` | `CallAutomationClient` |
| `CallingServerClientBuilder` | `CallAutomationClientBuilder` |
| `CallConnection` | `CallConnection` (same) |
| `ServerCall` | Removed - use `CallConnection` |

## Legacy Client Creation

```java
// OLD WAY (deprecated)
import com.azure.communication.callingserver.CallingServerClient;
import com.azure.communication.callingserver.CallingServerClientBuilder;

CallingServerClient client = new CallingServerClientBuilder()
    .connectionString("<connection-string>")
    .buildClient();

// NEW WAY
import com.azure.communication.callautomation.CallAutomationClient;
import com.azure.communication.callautomation.CallAutomationClientBuilder;

CallAutomationClient client = new CallAutomationClientBuilder()
    .connectionString("<connection-string>")
    .buildClient();
```

## Legacy Recording

```java
// OLD WAY
StartRecordingOptions options = new StartRecordingOptions(serverCallId)
    .setRecordingStateCallbackUri(callbackUri);

StartCallRecordingResult result = client.startRecording(options);
String recordingId = result.getRecordingId();

client.pauseRecording(recordingId);
client.resumeRecording(recordingId);
client.stopRecording(recordingId);

// NEW WAY - see azure-communication-callautomation skill
```

## For New Development

**Do not use this SDK for new projects.** 

See the `azure-communication-callautomation-java` skill for:
- Making outbound calls
- Answering incoming calls
- Call recording
- DTMF recognition
- Text-to-speech / speech-to-text
- Adding/removing participants
- Call transfer

## Trigger Phrases

- "callingserver legacy", "deprecated calling SDK"
- "migrate callingserver to callautomation"

© Microsoft · MIT · microsoft/skills

Similar skills

All skills for Cloud: AWS, Azure, GCP →

From the same set143

The whole set →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor