我有一个机器人,该机器人具有消息传递扩展功能。我遵循了一个示例here。但是我没有使用卡视图,而是使用嵌入式Web视图来显示我的自定义UI(这是S3中托管的React应用)
这是我用来打开邮件扩展预览的代码:
handleTeamsMessagingExtensionFetchTask(context, action) {
const url = process.env.POPUP_VIEW_URL;
return {
task: {
type: 'continue',
value: {
url: url,
fallbackUrl: url,
width: 680,
height: 400,
title: 'Feedback & praise',
},
},
};
}
我试图找到一个示例/文档,该示例/文档介绍了当用户单击“提交请求”按钮,但到目前为止找不到该机器人如何从UI接收请求。我看过这个this,但它使用的是自适应卡片示例。
我想知道嵌入式Webview文档中是否有示例?我还以为当用户单击按钮时只进行一次API调用,但是仍然对如何在API调用返回成功后关闭预览窗口感到困惑。
答案 0 :(得分:0)
您需要在按钮单击中使用SubmitTask
microsoftTeams.tasks.submitTask(JSON);
答案 1 :(得分:0)
就像@Rajesh的回答一样。这基本上就是我所做的
@microsoft/teams-js
添加到我的应用程序中import * as microsoftTeams from "@microsoft/teams-js";
...
export const myComponent = () => {
const submitRequest = () => {
// make API request
if (success) {
microsoftTeams.initialize(); // This is a must
microsoftTeams.tasks.submitTask();
}
}
return (
<>
...
<button onClick={submitRequest} type="button">Submit request</button>
</>
);
}