Создание соединителей Office 365

С Microsoft Teams приложениями можно добавить существующие Office 365 соединителю или создать новый в Teams. Дополнительные сведения см. в дополнительных сведениях о создании собственного соединитетеля.

Добавление соединителю в Teams приложение

Вы можете создать пакет и опубликовать соединители в рамках отправки AppSource. Вы можете распространять зарегистрированный соединитатель как часть пакета Teams приложения. Сведения о точках входа для Teams приложения см. в таблице capabilities. Вы также можете предоставить пакет пользователям непосредственно для загрузки в Teams.

Для распространения соединитетеля необходимо зарегистрироваться через панель мониторинга разработчиков соединители. При регистрации соединитетеля предполагается, что он работает во всех Office 365, поддерживаюх приложения, включая Outlook и Teams. Если это не так, и необходимо создать соединителя, который работает только в Microsoft Teams, свяжитесь: Microsoft Teams отправки приложений по электронной почте.

Важно!

Соединитель регистрируется после выбора сохранить в панели мониторинга разработчика соединители. Если вы хотите опубликовать соединителе в AppSource, следуйте инструкциям в публикации Microsoft Teams приложения в AppSource. Если вы не хотите публиковать приложение в AppSource, раздайте его непосредственно организации. После публикации соединители для организацииникаких дополнительных действий на панели мониторинга соединители не требуется.

Интеграция опытом настройки

Пользователи могут выполнить весь процесс настройки соединитетеля, не покидая Teams клиента. Чтобы получить опыт, Teams встраить страницу конфигурации непосредственно в iframe. Последовательность операций следующим образом:

  1. Для начала процесса настройки пользователь выбирает соединител.

  2. Пользователь взаимодействует с веб-интерфейсом для завершения конфигурации.

  3. Пользователь выбирает сохранить , который вызывает вызов в коде.

    Примечание

    • Код может обработать событие сохранения путем восстановления параметров веб-ок. Код хранит веб-сайт для публикации событий позже.
    • В пределах Teams загружается Teams.

Вы можете повторно использовать существующие возможности веб-конфигурации или создать отдельную версию, которая будет организована в Teams. Код должен включать Microsoft Teams JavaScript SDK. Это дает коду доступ к API для выполнения общих операций, таких как получение текущего контекста пользователя, канала или группы и начало потоков проверки подлинности.

Интеграция опытом конфигурации

  1. Инициализация SDK происходит путем вызова microsoftTeams.initialize().

  2. Вызов, microsoftTeams.settings.setValidityState(true) чтобы включить сохранить.

    Примечание

    Вы должны вызвать microsoftTeams.settings.setValidityState(true) в качестве ответа на выбор пользователя или обновление поля.

  3. Регистрируйте microsoftTeams.settings.registerOnSaveHandler() обработник событий, который называется, когда пользователь выбирает Сохранить.

  4. Вызов microsoftTeams.settings.setSettings() для сохранения параметров соединитетеля. Сохраненные параметры также показаны в диалоговом окне конфигурации, если пользователь пытается обновить существующую конфигурацию для соединитетеля.

  5. Вызов microsoftTeams.settings.getSettings() для получения свойств веб-сайта, включая URL-адрес.

    Примечание

    При первой загрузке страницы в случае перенастройки необходимо вызвать microsoftTeams.settings.getSettings() вызов.

  6. Регистрируйте microsoftTeams.settings.registerOnRemoveHandler() обработчик событий, который называется, когда пользователь удаляет соединители.

Это событие предоставляет службе возможность выполнять любые действия по очистке.

В следующем коде содержится пример HTML для создания страницы конфигурации соединителя без обслуживания и поддержки клиентов:

<h2>Send notifications when tasks are:</h2>
<div class="col-md-8">
    <section id="configSection">
        <form id="configForm">
            <input type="radio" name="notificationType" value="Create" onclick="onClick()"> Created
            <br>
            <br>
            <input type="radio" name="notificationType" value="Update" onclick="onClick()"> Updated
        </form>
    </section>
</div>

<script src="https://statics.teams.microsoft.com/sdk/v1.5.2/js/MicrosoftTeams.min.js" crossorigin="anonymous"></script>
<script src="/Scripts/jquery-1.10.2.js"></script>

<script type="text/javascript">

        function onClick() {
            microsoftTeams.settings.setValidityState(true);
        }

        microsoftTeams.initialize();
        microsoftTeams.settings.registerOnSaveHandler(function (saveEvent) {
            var radios = document.getElementsByName('notificationType');

            var eventType = '';
            if (radios[0].checked) {
                eventType = radios[0].value;
            } else {
                eventType = radios[1].value;
            }

            microsoftTeams.settings.setSettings({
                 entityId: eventType,
                contentUrl: "https://YourSite/Connector/Setup",
                removeUrl:"https://YourSite/Connector/Setup",
                 configName: eventType
                });

            microsoftTeams.settings.getSettings(function (settings) {
                // We get the Webhook URL in settings.webhookUrl which needs to be saved. 
                // This can be used later to send notification.
            });

            saveEvent.notifySuccess();
        });

        microsoftTeams.settings.registerOnRemoveHandler(function (removeEvent) {
            alert("Removed" + JSON.stringify(removeEvent));
        });

</script>

Чтобы проверить подлинность пользователя в рамках загрузки страницы, см. поток проверки подлинности для вкладки для интеграции в систему при вложении страницы.

Примечание

В связи с перекрестной совместимостью клиента перед вызовом код должен звонить с URL-адресом и методами успешного или неудачного microsoftTeams.authentication.registerAuthenticationHandlers() authenticate() вызова.

GetSettings Свойства ответа

Примечание

Параметры, возвращенные вызовом, отличаются при вызове этого метода из вкладки и отличаются от параметров getSettings js.

В следующей таблице параметров и сведений о свойствах GetSetting отклика:

Параметры Details
entityId Код сущности, задаваемый кодом при setSettings() вызове.
configName Имя конфигурации, заданная кодом при setSettings() вызове.
contentUrl URL-адрес страницы конфигурации, заданная кодом при setSettings() вызове.
webhookUrl URL-адрес веб-страницы, созданный для соединителя. Для отправки карт на канал используйте URL-адрес веб-сайта POST, структурированный JSON. Возвращается webhookUrl только тогда, когда приложение возвращает данные успешно.
appType Возвращенные значения могут быть mail groups соответствующими Office 365, Office 365 группам или Microsoft Teams teams соответственно.
userObjectId Уникальный ID, соответствующий Office 365, который инициировал настройка соединиттеля. Она должна быть защищена. Это значение можно использовать для связи пользователя в Office 365, который настроил конфигурацию в службе.

Обработка изменений

Код должен обрабатывать пользователей, которые возвращаются, чтобы изменить существующую конфигурацию соединитетеля. Для этого необходимо вызвать microsoftTeams.settings.setSettings() во время начальной конфигурации со следующими параметрами:

  • entityId это пользовательский ID, который представляет то, что пользователь настроил и понял в вашей службе.
  • configName это имя, которое код конфигурации может получить.
  • contentUrl это настраиваемый URL-адрес, загружаемый при редактировании существующей конфигурации соединителя.

Этот вызов выполнен в рамках обработки событий сохранения. Затем при загрузке кода необходимо вызвать для предварительного заполнения любых параметров или форм contentUrl getSettings() в пользовательском интерфейсе конфигурации.

Обработка удалений

Обработчик событий можно выполнить, если пользователь удаляет существующую конфигурацию соединитетеля. Этот обработок регистрируется по вызову microsoftTeams.settings.registerOnRemoveHandler() . Этот обработок используется для выполнения операций очистки, например для удаления записей из базы данных.

Включите соединители в манифест

Скачайте авто, Teams app manifest сгенерированную с портала. Выполните следующие действия перед тестированием или публикацией приложения:

  1. Включение двух значков.
  2. Измените icons часть манифеста, чтобы включить имена файлов значков вместо URL-адресов.

В следующем файле manifest.json содержатся элементы, необходимые для тестирования и отправки приложения:

Примечание

Замените id connectorId и в следующем примере guID соединитетеля.

Пример manifest.json с соединитетелем

{
  "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.8/MicrosoftTeams.schema.json",
  "manifestVersion": "1.5",
  "id": "e9343a03-0a5e-4c1f-95a8-263a565505a5",
  "version": "1.0",
  "packageName": "com.sampleapp",
  "developer": {
    "name": "Publisher",
    "websiteUrl": "https://www.microsoft.com",
    "privacyUrl": "https://www.microsoft.com",
    "termsOfUseUrl": "https://www.microsoft.com"
  },
  "description": {
    "full": "This is a small sample app we made for you! This app has samples of all capabilities Microsoft Teams supports.",
    "short": "This is a small sample app we made for you!"
  },
  "icons": {
    "outline": "sampleapp-outline.png",
    "color": "sampleapp-color.png"
  },
  "connectors": [
    {
      "connectorId": "e9343a03-0a5e-4c1f-95a8-263a565505a5",
      "scopes": [
        "team"
      ]
    }
  ],
  "name": {
    "short": "Sample App",
    "full": "Sample App"
  },
  "accentColor": "#FFFFFF",
  "needsIdentity": "true"
}

Включить или отключить соединители в Teams

Модуль Exchange Online PowerShell V2 использует современную проверку подлинности и работает с многофакторной проверкой подлинности под названием MFA для подключения Exchange связанных сред PowerShell в Microsoft 365. Администраторы могут использовать Exchange Online PowerShell для отключения соединители для всего клиента или определенного почтового ящика группы, затрагивая всех пользователей в этом клиенте или почтовом ящике. Отключение для одних и не для других невозможно. Кроме того, соединители отключены по умолчанию для облако сообщества для государственных организаций, называемых GCC клиентов.

Параметр уровня клиента переопределяет параметр группового уровня. Например, если администратор включает соединители для группы и отключает их в клиенте, соединители для группы отключены. Чтобы включить соединитель в Teams, подключите Exchange Online PowerShell с помощью современной проверки подлинности с помощью MFA или без него.

Команды, позволяющие включить или отключить соединители

В Exchange Online PowerShell выполните следующие команды.

  • Отключение соединители для клиента: Set-OrganizationConfig -ConnectorsEnabled:$false .
  • Отключение действий для клиента: Set-OrganizationConfig -ConnectorsActionableMessagesEnabled:$false .
  • Чтобы включить соединители для Teams, запустите следующие команды:
    • Set-OrganizationConfig -ConnectorsEnabled:$true
    • Set-OrganizationConfig -ConnectorsEnabledForTeams:$true
    • Set-OrganizationConfig -ConnectorsActionableMessagesEnabled:$true

Дополнительные сведения об обмене модулями PowerShell см. в сайте Set-OrganizationConfig. Чтобы включить или отключить Outlook соединители, подключите приложения кгруппам в Outlook.

Тестирование соединитетеля

Чтобы проверить соединители, загрузите его в команду с любым другим приложением. Вы можете создать пакет .zip с помощью файла манифеста из двух файлов значков и соединителов Панели мониторинга разработчика, измененных как указано в Включите соединитетель в манифесте.

После отправки приложения откройте список соединитений из любого канала. Прокрутите вниз, чтобы просмотреть приложение в разделе Uploaded:

Снимок экрана загруженного раздела в диалоговом окне соединитель

Примечание

Поток происходит полностью в пределах Microsoft Teams в качестве хозяйского опыта.

Чтобы убедиться, что действие работает правильно, отправьте сообщения в HttpPOST соединителю.

Публикация соединители для организации

Если вы хотите, чтобы соединители были доступны только пользователям в организации, вы можете загрузить свое настраиваемое приложение соединители в каталог приложений организации.

После отправки пакета приложений для настройки и использования соединителя в команде установите соединители из каталога приложений организации.

Настройка соединитетеля

  1. Выберите Приложения из левой панели навигации.
  2. В разделе Приложения выберите соединители.
  3. Выберите соединителю, который необходимо добавить. Появляется всплывающее диалоговое окно.
  4. В меню dropdown выберите Добавить в команду.
  5. В поле поиска введите команду или имя канала.
  6. Выберите Настройка соединителя из выпадаемого меню в правом нижнем углу окна диалогов.

Важно!

В настоящее время настраиваемые соединители недоступны в облако сообщества для государственных организаций (GCC), GCC-High и Department of Defense (DoD).

Соединитектор доступен в разделе ●●● > Дополнительные параметры > Соединители > Все > соединители для вашей команды для этой группы. Вы можете перемещаться путем прокрутки в этот раздел или поиска соединитеного приложения. Чтобы настроить или изменить соединители, выберите Настройка.

Распространение веб-ок и соединители

  1. Настройка входящих веб-ок непосредственно для вашей команды.
  2. Добавьте страницу конфигурации и опубликуйте входящий веб-сайт в соединителю O365.
  3. Пакет и публикация соединитетеля в рамках отправки AppSource.

Пример кода

В следующей таблице приводится пример имени и его описания:

Название примера Описание .NET Node.js
Connectors Пример Office 365 соединители, генерирующие уведомления для Teams канала. View View
Общий пример соединители Пример кода для общего соединители, который легко настроить для любой системы, поддерживающую веб-сайты. Просмотр

Дополнительные ресурсы