我正在使用他们的REST API构建Microsoft Teams机器人。漫游器需要发送Started at 1:43 PM
或Ended at 5:30 PM
之类的事件状态。该信息将被发送到频道,这些频道自然会拥有属于不同时区的用户。是否可以发送ISO_8601格式的日期时间文本(或任何其他格式),并让MS Teams在用户的语言环境和时区中显示时间?
答案 0 :(得分:0)
我不知道Team中有什么类似的东西,至少在普通短信中没有。作为一种可能的替代建议,可能是将日期时间设置为UTC,然后告诉用户这种情况,并使文本本身成为指向显示用户当地时间的网页的超链接。
在您的网页中,您可以使用
获取用户的时区 Intl.DateTimeFormat().resolvedOptions().timeZone
然后从那里查找并计算偏移量,以向他们显示相关时间。
要实际上使机器人消息中的文本成为超链接,您需要发送回自适应卡并使用Markdown格式的URL,该URL类似于以下内容:[My Link](https://whatever.com)(但不包含)一个空间,所以应该是](<-我在这里放了一个空间,否则StackOverflow本身就是一个真正的链接!)
答案 1 :(得分:0)
自适应卡确实提供了一种方法。 TIME
函数采用ISO_8601格式的日期时间文本,并将时间显示在最终用户的语言环境和时区中。
格式:{{TIME(ISO_8601_Formatted_Date_String)}}
可悲的是,这仅在附件卡内有效。