C# 在MS Team Bot中管理长期运行的操作
我正在使用以下示例/文章来管理MS Team Bot中的一个长时间运行的操作 在步骤5中,将创建DirectLineClient,并使用PostActivityAsync将事件活动发送给BotC# 在MS Team Bot中管理长期运行的操作,c#,events,botframework,microsoft-teams,long-running-processes,C#,Events,Botframework,Microsoft Teams,Long Running Processes,我正在使用以下示例/文章来管理MS Team Bot中的一个长时间运行的操作 在步骤5中,将创建DirectLineClient,并使用PostActivityAsync将事件活动发送给Bot var responseActivity = new Activity("event"); responseActivity.Value = originalActivity; responseActivity.Name = "LongOperationRespon
var responseActivity = new Activity("event");
responseActivity.Value = originalActivity;
responseActivity.Name = "LongOperationResponse";
responseActivity.From = new ChannelAccount("GenerateReport", "AzureFunction");
var directLineSecret = Environment.GetEnvironmentVariable("DirectLineSecret");
using(DirectLineClient client = new DirectLineClient(directLineSecret))
{
var conversation = await client.Conversations.StartConversationAsync();
await client.Conversations.PostActivityAsync(conversation.ConversationId, responseActivity);
}
但是,我需要上面的示例来为MS Team Bot而不是DirectLineClient工作
我使用了Microsoft.Bot.Connector.ConnectorClient,但StartconversationAsync和PostActivityAsync方法不可用。
我尝试了Microsoft.Bot.Connector.ConnectorClient中可用的方法
- connectorClient.Conversations.CreateConversationAsync(conversationparameters)
- connectorClient.ConversationsCreateDirectConversationAsync(botAccount、userAccount、(活动)newActivity)李>
- connectorClient.Conversations.SendToConversationAsync(conversationid,(Activity)newActivity)李>
var messagnewActivity = new Activity("event");
newActivity.Value = originalActivity;
newActivity.From = new ChannelAccount("GenerateReport", "AzureFunction");
newActivity.Type = "event";
newActivity.Conversation = new ConversationAccount { Id = originalActivity.Conversation.Id };
newActivity.ChannelId = originalActivity.ChannelId;
有人能建议我如何将活动(活动类型)传递给MS团队机器人吗
谢谢
Gagan我对Direct Line不太熟悉,但我认为它实际上是团队的一种替代机器人类型,因此,如果您试图在团队内部实现这一点,它可以解释这个问题。原则上,基本思想非常简单:
我不太熟悉Direct Line,但我认为它是一种有效的团队机器人的替代类型,因此如果您试图在团队内部实现这一点,它可以解释这个问题。原则上,基本思想非常简单:
这是为了通知您,在调试代码时,我在代码中发现了一个调整,在此之前的某个时候我也遇到了同样的问题。当它递归调用两次时,活动Id与前一个相同。您可以检查活动id是否相同,然后返回请求,否则继续执行。这是为了通知您,在调试代码时,我在某个时候遇到了相同的问题。当它递归调用两次时,活动Id与前一个相同。您可以检查活动id是否相同,然后返回请求,否则请继续。感谢您分享信息。如果可能的话,你可以通过分享代码片段来帮助我确切地知道需要做什么。谢谢你分享信息。如果可能的话,你能通过分享一段代码片段来帮助我确切地知道需要做什么吗。