如何为 Outlook 和 Microsoft 团队设置连接器?

How to setup a connector for outlook and microsoft teams?

我正在为 MS Teams 和 Outlook 构建连接器。我已经在 Connectors Developer Dashboard 上注册了连接器,但是当我在 Outlook 上加载它并尝试配置连接器时......我的设置页面没有任何反应。的确,

microsoftTeams.settings.getSettings 不工作。

microsoftTeams js 库是否也适用于 Outlook?如果不是我该怎么办?

似乎“连接到 Office 365 按钮”并不是执行此操作的持续方式。

带有死链接的文档以及团队与 Outlook 之间的混合没有帮助:(

谢谢!

编辑 1:

AngularJS 在我的配置页面上调用的代码:

    $scope.setValidateState = function() {
        microsoftTeams.settings.setValidityState(true);
    };

    $scope.authenticate = function() {
        microsoftTeams.authentication.authenticate({
            url: isSettings.serverUrl + '/microsoft/auth-start/',
            with: 500,
            height: 800,
            successCallback: function(data) {
                $scope.isAuthenticated = data && data['accessToken'];
                localStorage.setItem("microsoft-oauth", JSON.stringify(data));
                displayConfiguration();
            },
            failureCallback: function(reason) {
                console.log(reason);
            }
        });
    };

    function displayConfiguration() {
        microsoftTeams.settings.setValidityState(true);
        microsoftTeams.settings.registerOnSaveHandler(function(saveEvent) {
            microsoftTeams.settings.setSettings({
                entityId: 'icescrum-connector-pkey-' + $scope.settings.project.pkey,
                contentUrl: isSettings.serverUrl + '/microsoft/setup/',
                configName: $scope.settings.project.name
            });
            microsoftTeams.settings.getSettings(function(settings) {
                $scope.settings.webhookUrl = settings.webhookUrl;
                console.log(settings.webhookUrl);
                saveEvent.notifySuccess();
            });
        });

        microsoftTeams.settings.getSettings(function(settings) {
            $scope.setup = !settings.configName;
            ProjectService.listByUserAndRole(Session.user.id, 'productOwner', {light: true}).then(function(projects) {
                $scope.projects = projects;
                if (settings.entityId) {
                    $scope.settings.project = _.find($scope.projects, {pkey: settings.entityId.split('icescrum-connector-pkey-')[1]});
                }
                $scope.ready = true;
            });
        });
    }

    // Init
    $scope.settings = {};
    $scope.projects = [];
    $scope.ready = false;
    var tokenData = JSON.parse(localStorage.getItem("microsoft-oauth"));
    $scope.isAuthenticated = tokenData && tokenData['accessToken'];

    microsoftTeams.initialize();

    if($scope.isAuthenticated){
        displayConfiguration();
    }

我的manifest.json:

{
  "$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.3/MicrosoftTeams.schema.json",
  "manifestVersion": "1.3",
  "id": "a15dcb92-35af-400e-ab9b-99efda40138f",
  "version": "1.0.0",
  "packageName": "com.iceScrum2",
  "developer": {
    "name": "Developer",
    "websiteUrl": "https://www.icescrum.com",
    "privacyUrl": "https://www.icescrum.com",
    "termsOfUseUrl": "https://www.icescrum.com"
  },
  "description": {
    "full": "iceScrum connector",
    "short": "integration iceScrum with Microsoft Teams with a bot, a connector and a tab"
  },
  "icons": {
    "outline": "icescrum-icon-32x32.png",
    "color": "icescrum-icon-192x192.png"
  },
  "connectors": [
    {
      "connectorId": "a15dcb92-35af-400e-ab9b-99efda40138f",
      "scopes": [
        "team"
      ],
      "configurationUrl": "https://icescrum.ngrok.io/icescrum/microsoft/setup/"
    }
  ],
  "name": {
    "full": "iceScrum2",
    "short": "iceScrum2"
  },
  "accentColor": "#FFFFFF",
  "validDomains": [
    "*.icescrum.com",
    "icescrum.ngrok.io"
  ]
}

我的 Microsoft Teams js 库已过时 (1.3.4)。在最新版本 (1.4.1) 中,它在 Outlook 和 Teams 上运行良好。