Быстрые ссылки
- Обзор
- Предварительные требования
- Регистрация приложения Azure AD
- Настройка виджета
- Подготовка архива виджета
- Использование виджета
- Устранение неполадок
Обзор
Виджет Microsoft 365 добавляет возможности Microsoft 365 в правую панель заявки ServiceDesk Plus. Специалисты могут планировать связанные встречи Teams, общаться с Microsoft 365 Copilot с предварительно загруженным контекстом заявки и искать статьи или файлы SharePoint и OneDrive.
Все три возможности используют одну регистрацию приложения Azure AD и одну учётную запись Microsoft. Специалист входит один раз за сеанс браузера.
Для кого это руководство:
-
Администраторы: раздел Configuration описывает регистрацию приложения Azure AD, настройку и загрузку виджета.
-
Специалисты: разделы Using the widget и Use cases объясняют повседневную работу.
Предварительные требования
Перед настройкой проверьте:
-
Доступ ServiceDesk Plus: роль SDAdmin для загрузки виджетов.
-
Доступ Microsoft Entra ID (Azure AD): права администратора для регистрации приложения и согласия на разрешения Graph.
-
Лицензии Microsoft 365: Специалисты должны иметь стандартные лицензии Microsoft 365. Для Ask Copilot каждому специалисту, который использует эту функцию, требуется лицензия Microsoft 365 Copilot.
-
Развёртывание HTTPS: ServiceDesk Plus работает по HTTPS. Аутентификация MSAL во всплывающем окне требует защищённого источника.
-
Всплывающие окна: браузеры специалистов разрешают окна домена ServiceDesk Plus.
Скачивание виджета
Перейдите сюда , чтобы скачать виджет.
Регистрация приложения Azure AD
Виджету нужна одна регистрация приложения Azure AD (Microsoft Entra ID). Выполните действия на портале Azure.
Создание регистрации
-
Перейдите в portal.azure.com > Microsoft Entra ID > App registrations > + New registration.
-
Введите отображаемое имя, например SDP Microsoft 365 Widget.
-
В Supported account types выберите Accounts in this organizational directory only (Single tenant).
-
Пока оставьте Redirect URI пустым: он настраивается далее.
-
Нажмите Register.
Настройка Redirect URI
Аутентификация выполняется во всплывающем окне. Redirect URI должен указывать на msteams-auth-redirect.html, развёрнутый вместе с виджетом.
-
Откройте регистрацию и перейдите в Authentication.
-
Нажмите + Add a platform и выберите Single-page application (SPA).
-
Введите Redirect URI:
https://<your-sdp-domain>/custom/msteams-auth-redirect.html
-
Замените <your-sdp-domain> именем узла SDP, например helpdesk.yourcompany.com.

-
Нажмите Configureзатем Save.
Разрешения API
Виджет использует делегированные разрешения Microsoft Graph. Добавьте все следующие разрешения.
-
В регистрации перейдите в API permissions > + Add a permission > Microsoft Graph > Delegated permissions.
-
Найдите и добавьте каждое разрешение:
|
Разрешение |
Назначение |
|
Calendars.ReadWrite.Shared |
Создание событий календаря, встреч Teams, от имени пользователя |
|
Sites.Read.All |
Поиск сайтов SharePoint и чтение содержимого |
|
Mail.Read |
Чтение почты вошедшего пользователя для проверки идентичности |
|
People.Read.All |
Определение пользователей и участников в организации |
|
OnlineMeetingTranscript.Read.All |
Чтение расшифровок онлайн-встреч |
|
OnlineMeetings.ReadWrite |
Создание онлайн-встреч Teams и управление ими |
|
Chat.Read |
Чтение сообщений чатов Teams |
|
ChannelMessage.Read.All |
Чтение сообщений каналов Teams |
|
ExternalItem.Read.All |
Чтение внешних элементов индекса Microsoft Search |
-
Нажмите Add permissions.

Согласие администратора
Некоторые разрешения, например People.Read.All и OnlineMeetingTranscript.Read.All, требуют согласия Global Administrator или Privileged Role Administrator.
-
В API permissions нажмите Grant admin consent for <your tenant>.
-
Подтвердите. Все разрешения должны иметь зелёный флажок в Status.
Получение необходимых значений
Перед изменением config.json получите два значения со страницы Overview регистрации:
|
Значение |
Где найти |
|
Application (client) ID |
GUID на странице Overview.
|
|
Directory (tenant) ID |
GUID клиента Azure AD на странице Overview. |
Настройка виджета (config.json)
Перед упаковкой откройте config.json и замените три шаблонных значения данными раздела 3.5.
Заменяемые шаблонные значения
|
Шаблонное значение |
Заменить на |
|
<client-id> |
Application (client) ID регистрации. |
|
<tenant-id> |
Directory (tenant) ID регистрации. |
|
<sdp-domain> |
Имя узла SDP, например helpdesk.yourcompany.com. |
Пример заполненного config.json:
{ "clientId": "12345678-abcd-efgh-ijkl-000000000000", "tenantId": "87654321-wxyz-abcd-1234-000000000000", "redirectUri": "https://helpdesk.yourcompany.com/custom/msteams-auth-redirect.html", "scopes": [ "Calendars.ReadWrite.Shared", "Sites.Read.All", "Mail.Read", "People.Read.All", "OnlineMeetingTranscript.Read.All", "OnlineMeetings.ReadWrite", "Chat.Read", "ChannelMessage.Read.All", "ExternalItem.Read.All" ], "slashCommands": [ ... ]}Команды со слешем
Массив slashCommands задаёт быстрые команды Copilot. По умолчанию включена одна; дополнительные можно добавить в любое время.
|
Поле |
Описание |
|
command |
Текст в поле чата, например /summarise ticket. |
|
description |
Краткая подсказка в выборе команд и начальных предложениях. |
|
prompt |
Инструкция Copilot при выполнении команды. |
|
shouldEnableWebSearch |
(необязательно) true/false — веб-поиск команды. По умолчанию false. |
|
includeRequestContext |
(необязательно) true/false — контекст заявки в инструкции. По умолчанию true. |
Шаблонные значения контекста поля prompt:
{{request.id}}
{{request.subject}}
{{request.description}}
{{request.descriptionSummary}}
{{request.status}}
{{request.priority}}
{{request.group}}
{{request.requesterName}}
{{request.requesterEmail}}
{{request.technicianName}}
{{request.technicianEmail}}
Подготовка ZIP-архива
Виджеты SDP загружаются ZIP-архивом с файлами в корне. Не архивируйте родительскую папку: выделите файлы по отдельности и упакуйте.
Файлы архива:
|
Файл |
Назначение |
|
msteams.html |
Основная оболочка виджета, точка входа |
|
msteams_util.js |
Вся логика: аутентификация, встречи, Copilot и SharePoint |
|
styles.css |
Стили виджета |
|
msteams-auth-redirect.html |
Обработчик перенаправления окна MSAL |
|
config.json |
Настройки Azure AD и команды со слешем с заменёнными шаблонными значениями |
|
plugin-manifest.json |
Определение плагина SDP |
|
m365_logo.png |
Логотип Microsoft 365 заголовка виджета |
|
teams_logo.png |
Логотип Teams экрана входа |
|
copilot_icon.png |
Значок Copilot карточки и чата |
Загрузка в ServiceDesk Plus
Для этих действий нужны права администратора SDP.
-
Войдите как администратор.
-
Перейдите в Admin > Пространство разработчика > Пользовательские виджеты.
-
Нажмите + New Custom Widget.
-
Загрузите подготовленный ZIP-архив.
-
Откройте заявку. Виджет Microsoft 365 должен появиться справа. Нажмите и проверьте экран входа.
Использование виджета
Authentication
Виджет использует MSAL полностью в браузере. Аутентификация выполняется один раз за сеанс во всплывающем окне.
-
При первом использовании нажмите Sign in with Microsoft.
-
Войдите с учётной записью Microsoft, почта которой совпадает с адресом входа ServiceDesk Plus.
-
Виджет проверяет соответствие и кеширует запись на сеанс.
При смене пользователя ServiceDesk Plus кеш очищается и нужен новый вход. Токены обновляются без окна, если возможно; окно появляется только при неудаче. Для выхода нажмите × в заголовке.
Создание встречи
Запланируйте онлайн-встречу Teams из панели заявки.
|
Поле |
Поведение |
|
Название встречи |
Предзаполнено как Request ID: {id} - {subject}. Можно изменить перед созданием. |
|
Участники |
Ввод адресов в виде меток. Почта заявителя добавляется автоматически при наличии в ServiceDesk Plus. Остальных добавьте вручную. |
|
Время — сейчас (When — Now) |
Создаёт встречу сразу с текущего времени. |
|
Время — по расписанию (When — Schedule) |
Показывает выбор даты и времени начала и окончания. |
|
Добавить примечание (Add note to ticket) |
Переключатель включён по умолчанию. После создания добавляет сведения встречи в примечание заявки. |
Добавление примечания заявки
При включённом Add note to ticket после встречи добавляется форматированное примечание:
-
Название встречи
-
Дата и время начала и окончания
-
Ссылка подключения Teams
-
ID события Microsoft Graph
-
Полный список участников
При отключении встреча создаётся без примечания. Если добавление примечания не удалось, экран результата сохраняет ссылку встречи и показывает ошибку.
Ask Copilot
Откройте встроенный чат Microsoft 365 Copilot. Контекст заявки загружается автоматически для соответствующих ответов.
-
Контекст заявки: ID, тема, описание, статус, приоритет, группа и сведения заявителя и специалиста передаются при каждом сообщении.
-
Переключатель веб-поиска: позволяет использовать актуальный веб-поиск для отдельного сообщения.
-
Переключатель контекста: включает или исключает сведения заявки для отдельной инструкции.
-
Новый чат (New Chat): сбрасывает разговор и начинает новый сеанс внутри виджета.
-
Команды со слешем: введите / для выбора команды.
Команды со слешем
Команды со слешем — готовые инструкции, запускаемые нажатием или вводом / в Copilot.
-
Начальные карточки показывают все настроенные команды.
-
Ввод / открывает выбор команд с навигацией клавиатурой. Используйте стрелки и Enter.
-
Каждая команда по умолчанию включает контекст. Его можно отключить для команды в config.json.
Стандартная /summarise ticket создаёт краткий обзор заявки: проблема, влияние, статус, приоритет и следующий шаг. Добавляйте команды в slashCommands файла config.json.
Поиск SharePoint
Ищите на всех доступных вашей записи Microsoft сайтах SharePoint и в OneDrive из панели заявки.
-
Поиск по ключевым словам: полнотекстовый поиск Microsoft Graph Search.
-
Файлы в результатах: Preview показывает файл внутри через Graph, Open открывает новую вкладку.
-
Статьи и страницы: Open открывает новую вкладку. Preview недоступен, поскольку просмотр и страница используют один URL SharePoint.
-
Копировать ссылку (Copy link): копирует URL элемента.
-
Добавить в примечание (Add to note): добавляет ссылку в примечание текущей заявки.
Устранение неполадок
|
Симптом |
Причина |
Устранение |
|
Окно входа заблокировано |
Браузер блокирует окна домена ServiceDesk Plus, необходимые MSAL. |
Разрешите окна домена в браузере. |
|
Ошибка redirect_uri_mismatch в окне входа |
redirectUri в config.json не совпадает точно с Azure. |
Проверьте завершающие слеши, HTTP/HTTPS и регистр. Повторно сохраните URI в обоих местах. |
|
403 Forbidden вызовов Graph после входа |
Нет согласия администратора для одного или нескольких разрешений. Конечный пользователь не может сам предоставить такое согласие. |
Откройте регистрацию > API permissions и нажмите Grant admin consent. |
|
Copilot возвращает 403 или «You do not have access» |
Специалисту не назначена лицензия Microsoft 365 Copilot. |
Назначьте её в центре администрирования Microsoft 365. |
|
Пустой или белый экран |
Частая причина — неверный config.json или файлы в подпапке архива вместо корня. |
Откройте F12 > Console для точной ошибки. Проверьте корректность JSON и файлы в корне ZIP. |
|
Встреча создана без примечания |
Виджет не смог записать данные через API заявки. Встреча сохраняется, ссылка доступна на экране результата. |
Проверьте доступность API и ID заявки. Повторите со страницы результата. |
|
Вход отклонён из-за несовпадения почты |
Почта Microsoft не совпадает с почтой ServiceDesk Plus. |
Войдите с учётной записью Microsoft, почта которой совпадает с адресом входа ServiceDesk Plus. |