# azure-messaging-webpubsubservice-py

Скилл по Python SDK для Azure Web PubSub Service: рассылка сообщений по WebSocket, группы, токены доступа и управление подключениями.

- скилл · `type=skill` · Claude Code, GitHub Copilot · 1 установка · ★ 3148
- Автор: Microsoft
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/microsoft/skills/tree/HEAD/.github/plugins/azure-sdk-python/skills/azure-messaging-webpubsubservice-py/SKILL.md
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/skills/azure-messaging-webpubsubservice-py

## Что делает

Скилл подсказывает агенту, как писать серверный код на Python для Azure Web PubSub Service. Внутри — примеры на `WebPubSubServiceClient`: выдача клиентского токена доступа, отправка сообщения всем, конкретному пользователю, группе или одному подключению. Отдельно разобраны группы и подключения: добавить пользователя, проверить, живо ли соединение, закрыть его.

Есть и клиентская часть — `WebPubSubClient` из пакета `azure-messaging-webpubsubclient` с обработчиками событий `connected`, `server-message` и `group-message`. Асинхронный вариант лежит в `azure.messaging.webpubsubservice.aio` и требует `DefaultAzureCredential` из `azure.identity.aio`.

Перед запуском понадобится переменная `AZURE_WEBPUBSUB_HUB` — она нужна при любом способе аутентификации. Для продакшена с `DefaultAzureCredential` скилл советует выставить `AZURE_TOKEN_CREDENTIALS=prod`, иначе цепочка учётных данных может подхватить не то. Смешивать синхронные клиенты `azure.xxx` с асинхронными `azure.xxx.aio` в одном пути вызова нельзя — выберите один режим на модуль.

## Требования
- Работает с: Azure

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add microsoft/skills --skill azure-messaging-webpubsubservice-py -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/azure-messaging-webpubsubservice-py/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/azure-messaging-webpubsubservice-py/

### Codex

**Вручную: положить файлы**
- Файл: `.agents/skills/azure-messaging-webpubsubservice-py/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

**Вручную: положить файлы**
- Файл: `.cursor/skills/azure-messaging-webpubsubservice-py/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install microsoft/skills azure-messaging-webpubsubservice-py
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/azure-messaging-webpubsubservice-py/SKILL.md`

### Gemini CLI

**Командой платформы**
```bash
gemini skills install https://github.com/microsoft/skills --path .github/plugins/azure-sdk-python/skills/azure-messaging-webpubsubservice-py
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/azure-messaging-webpubsubservice-py/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/microsoft/skills/tree/HEAD/.github/plugins/azure-sdk-python/skills/azure-messaging-webpubsubservice-py/SKILL.md

## Когда брать
- выдать клиенту токен доступа к WebSocket-подключению
- разослать уведомление всем подключениям хаба
- отправить сообщение конкретному пользователю или группе
- добавить и убрать пользователя из группы
- проверить, существует ли подключение, и закрыть его

## Примеры запросов агенту
- Напиши серверный код на Python: выдай клиентский токен доступа для user123 с ролью webpubsub.sendToGroup
- Сделай рассылку JSON-сообщения всем клиентам хаба через WebPubSubServiceClient
- Покажи асинхронный вариант: отправка в группу через aio-клиент с DefaultAzureCredential

## Похожие
- [bun-websocket-server](https://affpapa.org/nevibecode/skills/bun-websocket-server.md) — скилл · 394 установки
- [python-azure-iot-edge-modules](https://affpapa.org/nevibecode/skills/python-azure-iot-edge-modules.md) — скилл · 47 установок
- [azure-functions](https://affpapa.org/nevibecode/skills/microsoftdocs-azure-functions.md) — скилл · 378 установок
- [azure-functions-csharp](https://affpapa.org/nevibecode/rules/azure-functions-csharp.md) — правило · ★ 40418
- [azure-verified-modules](https://affpapa.org/nevibecode/skills/azure-verified-modules.md) — скилл · 3300 установок
- [dt-obs-azure](https://affpapa.org/nevibecode/skills/dt-obs-azure.md) — скилл · 2000 установок

Из того же набора: [microsoft/skills](https://affpapa.org/nevibecode/by/microsoft/skills.md) — 64 карточки

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
