Выходные данные в ArcGIS Velocity позволяют отправлять Адаптивные карты в чаты или каналы в Microsoft Teams. Адаптивные карты могут содержать текст, графику и кнопки, обеспечивая интерактивный и увлекательный механизм передачи информации.С помощью Velocity векторные данные могут быть включены в Адаптивную карту, размещенную в Microsoft Teams. Это механизм эффективной передачи информации пользователям различных систем.
Чтобы использовать этот тип выходных данных, необходимо сначала сгенерировать URL-адрес вебхука в Microsoft Teams. Затем URL-адрес вебхука используется для настройки выходных данных Microsoft Teams в Velocity.
Пример
Ниже приводится пример использования выходных данных Microsoft Teams:
Специалист настраивает аналитику в реальном времени для публикации Адаптивной карты на канале Microsoft Teams в случае появления предупреждения об опасных погодных условиях, которые затрагивают территорию обслуживания организации.
Примечания по использованию
При работе с выходными данными Microsoft Teams учитывайте следующее:
- URL-адрес вебхука Microsoft Teams должен быть настроен в Microsoft Teams.
- При отправке JSON в теле сообщения его нужно отформатировать в формате Microsoft Teams Адаптивной карты. Примеры JSON приведены в разделе ниже.
Примеры JSON Адаптивной карты Microsoft Teams
При форматировании JSON в теле сообщения оберните выходной JSON функцией Text() Arcade, чтобы правильно отформатировать JSON. JSON должен быть в формате Адаптивной карты Microsoft Teams со следующими свойствами:
- Поле type должно быть задано на message.
- Массив attachments содержит набор объектов карточки.
- Для поля contentType должен быть задан тип Adaptive Card.
- Объект content - это карточка, отформатированная в JSON.
В примерах ниже показаны выражения Arcade, настроенные для вывода Адаптивных карт в формате JSON. Полученные Адаптивные карты публикуются в чате или канале, связанном с URL-адресом вебхука Microsoft Teams.
В приведенном ниже примере создается базовая Адаптивная карта, которая отображает информацию о судне, включая его название и идентификатор.
Пример 1 — основная Адаптивная карта
// Output is wrapped in Text()
Text({
//type is set to "message":
"type":"message",
//attachments contains an array of card objects:
"attachments":[
{
//contentType is set to "application/vnd.microsoft.card.adaptive":
"contentType":"application/vnd.microsoft.card.adaptive",
"contentUrl":null,
//content is the Adaptive Card formatted in JSON
"content":{
"type": "AdaptiveCard",
"speak": "Vessel Information",
"version": "1.5",
"$schema": "https://adaptivecards.io/schemas/adaptive-card.json",
"body": [
{
"type": "TextBlock",
"text": "Vessel Information",
"wrap": true,
"style": "heading",
"color": "Good"
},
{
"type": "FactSet",
"facts": [
{
"title": "Vessel Name",
"value": $feature.name
},
{
"title": "Vessel ID",
"value": $feature.num
}
]
}]
}
}]
})
В примере 1 создается следующее сообщение, которое отображает информацию о судне, включая его название и идентификатор.

В следующем примере создается Адаптивная карта с изображением и кнопкой.
Пример 2 — Адаптивная карта с изображением и кнопкой
// Output is wrapped in Text()
Text({
//type is set to "message":
"type":"message",
//attachments contains an array of card objects:
"attachments":[
{
//contentType is set to "application/vnd.microsoft.card.adaptive":
"contentType":"application/vnd.microsoft.card.adaptive",
"contentUrl":null,
//content is the Adaptive Card formatted in JSON
"content":{
"type": "AdaptiveCard",
"speak": "New vessel detected",
"version": "1.5",
"body": [
{
"type": "TextBlock",
"text": "New vessel detected at " + $feature.ts,
"wrap": true,
"size": "Large",
"weight": "Bolder",
"color": "Attention"
},
{
"type": "ColumnSet",
"columns": [
{
"type": "Column",
"width": "auto",
"items": [
{
"type": "Image",
"url": "https://www.esri.com/content/dam/esrisites/en-us/common/icons/product-logos/Analytics_for_IoT_220.png",
"width": "24px",
"height": "24px",
"style": "Person",
"altText": "ArcGIS Velocity"
}
],
"verticalContentAlignment": "Center"
},
{
"type": "Column",
"width": "stretch",
"items": [
{
"type": "TextBlock",
"text": "ArcGIS Velocity ",
"wrap": true
}
],
"spacing": "Small",
"verticalContentAlignment": "Center"
}
]
},
{
"type": "TextBlock",
"targetWidth": "AtLeast:Narrow",
"text": "Vessel Name " + $feature.name + ", traveling at " + $feature.speed + " miles per hour, was detected entering the service territory.\n \nClick the link below to see additional information.",
"wrap": true
},
{
"type": "ActionSet",
"actions": [
{
"type": "Action.OpenUrl",
"title": "Open",
"url": "https://www.esri.com/en-us/arcgis/products/arcgis-velocity/overview"
}
]
}
],
"$schema": "https://adaptivecards.io/schemas/adaptive-card.json"
}
}]
})
Пример 2 создает следующее сообщение о новом обнаруженном судне, включая название судна, дату и время, а также кнопку для получения дополнительной информации.

Параметры
Ниже приводятся параметры выходных данных Microsoft Teams:
Параметр | Описание | Тип данных |
---|---|---|
URL-адрес вебхука Microsoft Teams (Обязательный) | URL-адрес входящего вебхука, созданного в Microsoft Teams. | Строка |
Текст POST (Обязательный) | Выражение JSON Arcade. JSON должен быть отформатирован с использованием формата Microsoft Teams Adaptive Card и должен быть заключен в выражение Text() Arcade. | Выражение Arcade |
Дополнительное ведение журнала (Дополнительный) | При необходимости вы можете включить ведение журнала запросов и ответов HTTP, созданных Velocity. Примечание:Этот параметр следует включать только в целях устранения неполадок и отключать сразу после завершения устранения неполадок. После включения запустите аналитику, и журналы уровня отладки будут доступны на странице журналов аналитики. При необходимости обратитесь в Esri TechnicalПоддержка за помощью в устранении неполадок. | Boolean |
Советы и ограничения
Ниже приведены соображения и ограничения при использовании выходных данных:
- Важно понимать скорость передачи данных. Каждая запись, отправленная в эти выходные данные, генерирует отдельный запрос, и если в секунду выполняется более четырех запросов, клиентское соединение может быть ограничено. Лучше всего использовать эти выходные данные для инцидентов, которые ожидаются нечасто.
- Важно понимать посылаемое сообщение. Текущий предельный размер сообщения составляет 28 КБ. Если размер сообщения превысит этот предел, вы получите сообщение об ошибке.
Более подробную информацию см. в разделе Создание входящих вебхуков.