Относительно стиля как кнопки отправки, так и кнопки микрофона:
Технически, можно отобразить обе кнопки, манипулируя DOM. Проблема в том, что веб-чат (когда речь не включена) использует набор классов и методов для рендеринга и обеспечения функциональности кнопки отправки. Но когда речь включена и микрофон воспроизводится, некоторые классы перезаписываются, что делает недоступными классы, необходимые для кнопки отправки. В результате, хотя обе кнопки могут отображаться одновременно, только речевая кнопка будет работать.
Я пытался играть с этой же концепцией некоторое время, но go не повезло. Для этого потребуется значительное изменение веб-чата.
Относительно карт и местоположений:
Это гораздо более достижимо и не требует каких-либо дополнительных пакетов, Тем не менее, есть те, которые могут быть полезны в зависимости от ваших потребностей.
Самый простой способ сделать это - опубликовать задание обратно в бота. Это может происходить при загрузке страницы, через некоторое взаимодействие с страницей (то есть нажатие кнопки) и т. Д. c. Пример d.post-activity-event из репозитория BotFramework-WebChat демонстрирует, как можно настроить что-то подобное.
Вы можете использовать встроенный в браузер метод геолокации, чтобы получить местоположение пользователя. Для этого пользователю потребуется согласие поделиться своим местоположением. При условии их согласия данные о местоположении могут быть отправлены боту во время публикации события.
const geoLoc = async () => {
await navigator.geolocation.getCurrentPosition(position => {
console.log('Latitude: ', position.coords.latitude);
console.log('Longitude: ', position.coords.longitude);
});
}
geoLoc();
Надежда на помощь!