Есть ли способ узнать, работает ли ваше приложение в командах Microsoft? - PullRequest
0 голосов
/ 20 марта 2020

У меня есть веб-приложение, которое должно выполнять указанный c код, если оно выполняется в Microsoft Teams, однако я пока не выяснил, есть ли способ узнать, работает ли ваше приложение в командах. Есть идеи или идеи?

1 Ответ

2 голосов
/ 20 марта 2020

Как вы, вероятно, уже видели, звонок на microsoftTeams.getContext(...) никогда не возвращается, если вы не в командах.

Поэтому у меня есть флаг, который я отслеживаю с setInterval и если this._teamsContext верно и имеет вменяемые значения; и только если if имеет this._hasAttemptedConnection

Это немного обходной путь.

Еще один механизм, который я реализовал чуть позже, передавал флаг с точкой входа URL ( в нашем случае: это вкладка «Команды» https://<oururl>?context=teams и используется только кодовый путь команд в командах.

Я видел запросы в Microsoft Teams. js github для возврата ошибки из microsoftTeams.getContext(...) см .: [есть ли какой-либо API для обнаружения работы в командах или нет?] [1]

До флага у меня был некоторый код Typescript, который выглядит как

 WireTeams(): Promise<boolean> {
        this._hasAttemptedConnection = false
        return new Promise<boolean>((resolve, reject) => {
            microsoftTeams.initialize()
            microsoftTeams.getContext((context) => {
                if (context === null || context === undefined) {
                    resolve(false)
                }
                this._teamsContext = context
              })
           })
       this._hasAttemptedConnection = true
}


  [1]: https://github.com/OfficeDev/microsoft-teams-library-js/issues/310
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...