C# 截取虚拟助手模板框架中的传出活动

C# 截取虚拟助手模板框架中的传出活动,c#,botframework,C#,Botframework,我正在寻找Microsoft Bot代码(使用Virtual Assistant模板4.9.1.1创建)中的一个位置,在该代码中,我可以在任何传出活动从Bot发送到客户端之前拦截它 据我所知,一种解决方案是在DefaultAdapter中重写这两种方法: bool CanProcessOutgoingActivity(Activity activity) Task<ResourceResponse> ProcessOutgoingActivityAsync(ITurnContext

我正在寻找Microsoft Bot代码(使用Virtual Assistant模板4.9.1.1创建)中的一个位置,在该代码中,我可以在任何传出活动从Bot发送到客户端之前拦截它

据我所知,一种解决方案是在DefaultAdapter中重写这两种方法:

bool CanProcessOutgoingActivity(Activity activity)

Task<ResourceResponse> ProcessOutgoingActivityAsync(ITurnContext turnContext, Activity activity, CancellationToken cancellationToken)
bool可以处理支出活动(活动)
任务进程OutgoingActivityAsync(ITurnContext turnContext,Activity Activity,CancellationToken CancellationToken)
因为我只需要对活动进行一些更改,所以我想我可以直接在CanProcessOutgoingActivity中进行更改。但我错了,因为我还需要一些上下文信息

所以我让CanProcessOutgoingActivity()返回true,并移动ProcessOutgoingActivityAsync中的逻辑,所有信息都可用

但是,我不明白它应该如何工作,以及该方法应该在ResourceResponse参数中返回什么

是否有任何示例或文档可以让我理解它是如何工作的?

将是推荐的最简单(更不用说模块化)的方法。它是为这种类型的场景而设计的,应该可以满足您的需要