Прямая ссылка на чат Teams
Вы можете создать прямую ссылку на чат Teams, например, чтобы начать новый чат, перейти в беседу на канале и получить доступ к файлу в канале.
В этой статье вы узнаете, как создать:
- Прямая ссылка для начала нового чата
- Прямая ссылка для перехода к чату
- Прямая ссылка для перехода к беседе канала
- Прямая ссылка для перехода к сообщениям чата
- Прямая ссылка для перехода к команде
- Прямая ссылка для перехода к каналу
- Создание прямой ссылки на файл в канале
Прямая ссылка для начала нового чата
Вы можете переходить к или создавать личные чаты между пользователями с помощью клиентской библиотеки JavaScript (TeamsJS) Microsoft Teams, указав набор участников. Если чат с указанными участниками не существует, пользователь будет перенаправлен в новый пустой чат.
Когда пользователь создает новый чат с помощью глубокой ссылки, Teams создает новый чат в состоянии черновика, пока пользователь не отправит первое сообщение. Вы также можете указать имя чата, если он еще не существует, а также текст, который следует вставить в поле создания пользователя. Считайте это ярлыком для пользователя, который выполняет вручную переход к чату или создает его, а затем создает сообщение.
В качестве примера использования, если вы получите данные профиля пользователя Microsoft 365 из бота в виде карточки, эта прямая ссылка может позволить пользователю приложения легко общаться с этим человеком.
Вы можете настроить глубокие ссылки для запуска нового чата одним из следующих двух способов:
- Настройка прямой ссылки для запуска чата вручную
- Настройка прямой ссылки для запуска чата с помощью библиотеки TeamsJS
Настройка прямой ссылки для запуска чата вручную
Рекомендуется использовать типизированные API, но также можно использовать следующий формат для созданной вручную прямой ссылки, которую можно использовать в боте, соединителе или карточке расширения для сообщений:
https://teams.microsoft.com/l/chat/0/0?tenantId=<tenantId>&users=<user1>,<user2>,...&topicName=<chat name>&message=<precanned text>
Чтобы использовать эту прямую ссылку с ботом, укажите прямую ссылку в качестве целевого URL-адреса в кнопке карточки или коснитесь действия с помощью openUrl
типа действия.
Параметры запроса:
users
: разделенный запятыми список идентификаторов пользователей, представляющих участников чата. Пользователь, выполняющий действие, всегда включен в качестве участника. Параметр User ID поддерживает Microsoft EntraUserPrincipalName
, например только адрес электронной почты.topicName
: необязательный параметр для отображаемого имени чата, если в чате есть три или более пользователей. Если это поле не указано, отображаемое имя чата основывается на именах участников.message
: необязательное поле для текста сообщения, которое вы хотите вставить в поле создания текущего пользователя приложения, пока чат находится в состоянии черновика.
Пример: https://teams.microsoft.com/l/chat/0/[email protected],[email protected]&topicName=Prep%20For%20Meeting%20Tomorrow&message=Hi%20folks%2C%20kicking%20off%20a%20chat%20about%20our%20meeting%20tomorrow
Настройка прямой ссылки для запуска чата с помощью библиотеки TeamsJS
В следующем примере показано, как открыть сообщение чата для группы участников с исходным сообщением. Вы можете настроить прямую ссылку на существующий или новый чат. Если чат уже существует, откроется прямая ссылка в этом чате.
if(chat.isSupported()) {
const chatPromise = chat.openGroupChat({ users: ["[email protected]","[email protected]"], topic: "Prep For Meeting Tomorrow", message: "Hi folks kicking off chat about our meeting tomorrow"});
chatPromise.
then((result) => {/*Successful operation*/}).
catch((error) => {/*Unsuccessful operation*/});
}
else { /* handle case where capability isn't supported */ }
Прямая ссылка для перехода к чату
Чтобы перейти к определенной беседе чата в Teams, используйте следующий формат глубокой ссылки:
https://teams.microsoft.com/l/chat/<chatId>/conversations
Параметр запроса — chatId
, который представляет идентификатор чата беседы. Поддерживаемый формат для chatId
— 19:xxx.
Пример: https://teams.microsoft.com/l/chat/19:[email protected]/conversations
Прямая ссылка для перехода к беседе канала
Для перехода к определенной беседе в потоке канала можно использовать следующий формат глубокой ссылки:
https://teams.microsoft.com/l/message/<channelId>/<parentMessageId>?tenantId=<tenantId>&groupId=<groupId>&parentMessageId=<parentMessageId>&teamName=<teamName>&channelName=<channelName>&createdTime=<createdTime>
Параметры запроса:
channelId
: идентификатор канала беседы. Например,19:[email protected]
.tenantId
: идентификатор клиента, например0d9b645f-597b-41f0-a2a3-ef103fbd91bb
.groupId
: идентификатор группы файла. Например,3606f714-ec2e-41b3-9ad1-6afb331bd35d
.parentMessageId
: идентификатор родительского сообщения в беседе.teamName
: имя команды.channelName
: название канала команды.
Примечание.
Вы можете увидеть channelId
и groupId
в URL-адресе канала.
Пример: https://teams.microsoft.com/l/message/<channelId>/1648741500652?tenantId=<tenantId>&groupId=<groupId>&parentMessageId=1648741500652&teamName=<teamName>&channelName=<channelName>&createdTime=1648741500652
Прямая ссылка для перехода к сообщениям чата
Используйте следующий формат глубокой ссылки для перехода пользователя к сообщению в личном или групповом чате в Teams:
https://teams.microsoft.com/l/message/{chatId}/{messageId}?tenantId=<tenantId>?context={"contextType":"chat"}
Пример: https://teams.microsoft.com/l/message/19:253f5895-9a62-4362-8d38-43f0205c702c_f1b94dcf-0aa3-4989-bcdf-ef4a5ed00f86@unq.gbl.spaces/1563480968434?context=%7B%22contextType%22:%22chat%22%7D
Параметры запроса:
chatId
: идентификатор чата беседы. Поддерживаемый формат —chatId
19: xxx. Например,19:253f5895-9a62-4362-8d38-43f0205c702c_f1b94dcf-0aa3-4989-bcdf-ef4a5ed00f86@unq.gbl.spaces
.
Приложения могут считывать идентификатор чата через контекст приложения в Teams, входящие полезные данные боту или через API Microsoft Graph.Примечание.
Для общения с ботом в входящие полезные данные для бота содержат идентификатор беседы в формате a:xxx.
messageId
: уникальный идентификатор каждого сообщения в чате. Когда бот публикует сообщение в чатеmessageId
, возвращается . Вы также можете получить черезmessageId
API Microsoft Graph. Например,1563480968434
.context
: укажите contextType в качестве чата.
Пример: http://teams.microsoft.com/l/message/19:253f5895-9a62-4362-8d38-43f0205c702c_f1b94dcf-0aa3-4989-bcdf-ef4a5ed00f86@unq.gbl.spaces/1563480968434?context=%7B%22contextType%22:%22chat%22%7D
Прямая ссылка для перехода к команде
Чтобы перейти к определенной команде, используйте следующий формат глубокой ссылки:
https://teams.microsoft.com/l/team/<channelId>/conversations?groupId=<groupId>&tenantId=<tenantId>
Параметры запроса:
channelId
: идентификатор канала беседы (в кодировке URL-адреса). Например, 19%3ATWLPKo8lD4v8zDxyw4FnDYY-ovnBJG5CSjmrHUAoOz41%40thread.tacv2.groupId
: идентификатор группы файла. Например, 72602e12-78ac-474c-99d6-f619710353a9.tenantId
: идентификатор клиента, например 72f988bf-86f1-41af-91ab-2d7cd011db47.
Примечание.
Вы можете получить channelId
и groupId
в URL-адресе от команды.
Пример: https://teams.microsoft.com/l/team/19%3ATWLPKo8lD4v8zDxyw4FnDYY-ovnBJG5CSjmrHUAoOz41%40thread.tacv2/conversations?groupId=72602e12-78ac-474c-99d6-f619710353a9&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47
Прямая ссылка для перехода к каналу
Для перехода по определенным каналам можно использовать следующие форматы глубоких ссылок:
Стандартный канал:
https://teams.microsoft.com/l/channel/<channelId>/<channelName>?groupId=<groupId>&tenantId=<tenantId>
Пример:
https://teams.microsoft.com/l/channel/19%3A9be3de4e70874c71a608dee9ba803ed3%40thread.tacv2/My%20example%20channel?groupId=72602e12-78ac-474c-99d6-f619710353a9&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47
Частный канал:
https://teams.microsoft.com/l/channel/<channelId>/<channelName>?groupId=<groupId>&tenantId=<tenantId>&ngc=true
Пример:
https://teams.microsoft.com/l/channel/19%3A9be3de4e70874c71a608dee9ba803ed3%40thread.tacv2/My%20example%20channel?groupId=72602e12-78ac-474c-99d6-f619710353a9&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&ngc=true
Общий канал:
https://teams.microsoft.com/l/channel/<channelId>/<channelName>?groupId=<groupId>&tenantId=<tenantId>&ngc=true&allowXTenantAccess=true
Пример:
https://teams.microsoft.com/l/channel/19%3A9be3de4e70874c71a608dee9ba803ed3%40thread.tacv2/My%20example%20channel?groupId=72602e12-78ac-474c-99d6-f619710353a9&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&ngc=true&allowXTenantAccess=true
Параметры запроса:
channelId
: идентификатор канала беседы (в кодировке URL-адреса). Например,19%3A9be3de4e70874c71a608dee9ba803ed3%40thread.tacv2
.channelName
: имя канала команды (в кодировке URL-адреса). Например,My%20example%20channel
.groupId
: идентификатор группы. Например,72602e12-78ac-474c-99d6-f619710353a9
.tenantId
: идентификатор клиента, например72f988bf-86f1-41af-91ab-2d7cd011db47
.ngc
: указывает канал следующего поколения. Для частных каналов необходимо задать значениеtrue
.allowXTenantAccess
: указывает канал, к которому можно получить доступ через границы клиента. Для общих каналов необходимо задать значениеtrue
.
Создание прямой ссылки на файл в канале
Используйте следующий формат глубокой ссылки, который можно использовать в боте, соединителе или карточке расширения сообщений для настройки глубокой ссылки для подключения к файлу в канале:
https://teams.microsoft.com/l/file/<fileId>?tenantId=<tenantId>&fileType=<fileType>&objectUrl=<objectUrl>&baseUrl=<baseUrl>&serviceName=<Name>&threadId=<threadId>&groupId=<groupId>
Параметры запроса:
fileId
: Идентификатор уникального документа Sharepoint Online, также известный какsourcedoc
. Например,1FA202A5-3762-4F10-B550-C04F81F6ACBD
.tenantId
: идентификатор клиента, например0d9b645f-597b-41f0-a2a3-ef103fbd91bb
.fileType
: поддерживаемый тип файла, например DOCX, PPTX, XLSX и PDF.objectUrl
: URL-адрес объекта файла. Представлено в форматеhttps://{tenantName}.sharepoint.com/sites/{TeamName}/SharedDocuments/{ChannelName}/FileName.ext
. Например,https://microsoft.sharepoint.com/teams/(filepath)
.baseUrl
: базовый URL-адрес файла. Представлено в форматеhttps://{tenantName}.sharepoint.com/sites/{TeamName}
. Например,https://microsoft.sharepoint.com/teams
.serviceName
: имя службы, идентификатор приложения Например,teams
.threadId
: threadID — это идентификатор команды, в которой хранится файл. Это необязательно и не может быть установлено для файлов, хранящихся в пользовательской папке OneDrive. Например,19:<[email protected]>
.groupId
: идентификатор группы файла. Например,ae063b79-5315-4ddb-ba70-27328ba6c31e
.
Примечание.
- Вы можете увидеть
threadId
иgroupId
в URL-адресе канала. - В новом клиенте Teams формат глубокой ссылки, использующий
objectURL
для файла в канале, не поддерживается и используетсяobjectUrl
в формате deep link.
Следующий пример формата иллюстрирует глубокую ссылку на файлы:
https://teams.microsoft.com/l/file/5E0154FC-F2B4-4DA5-8CDA-F096E72C0A80?tenantId=0d9b645f-597b-41f0-a2a3-ef103fbd91bb&fileType=pptx&objectUrl=https%3A%2F%2Fmicrosoft.sharepoint.com%2Fteams%2FActionPlatform%2FShared%20Documents%2FFC7-%20Bot%20and%20Action%20Infra%2FKaizala%20Actions%20in%20Adaptive%20Cards%20-%20Deck.pptx&baseUrl=https%3A%2F%2Fmicrosoft.sharepoint.com%2Fteams%2FActionPlatform&serviceName=teams&threadId=19:[email protected]&groupId=ae063b79-5315-4ddb-ba70-27328ba6c31e
Сериализация этого объекта
{
fileId: "5E0154FC-F2B4-4DA5-8CDA-F096E72C0A80",
tenantId: "0d9b645f-597b-41f0-a2a3-ef103fbd91bb",
filetype: = "pptx",
objectUrl: "https://microsoft.sharepoint.com/teams/ActionPlatform/Shared Documents/FC7- Bot and Action Infra/Kaizala Actions in Adaptive Cards - Deck.pptx",
baseUrl: "https://microsoft.sharepoint.com/teams/ActionPlatform",
serviceName: "teams",
threadId: = "19:[email protected]",
groupId: "ae063b79-5315-4ddb-ba70-27328ba6c31e"
}
Пример кода
Название примера | Описание | .NET | Node.js |
---|---|---|---|
Прямая ссылка, используюющая идентификатор subentity | В этом примере показано, как использовать прямую ссылку из чата бота на вкладку, используюющую идентификатор subentity. Здесь также показаны подробные ссылки для: — Переход к приложению — Переход к чату — Открытие диалогового окна профиля — Открытие диалогового окна планирования |
Просмотр | Просмотр |
Platform Docs