在 IActivityLogger 中知道 IActivity 是来自机器人还是来自用户

Know if IActivity is from bot or user in IActivityLogger

我正在尝试实施 IActivityLogger 并根据机器人是 activity 的发件人还是用户是发件人来执行不同的操作。

我怎么知道 activity 是来自机器人还是用户。我可以在某处获取机器人的频道 ID 以将其与 Activity.From.Id 中的 ID 进行比较,还是有不同的解决方案?

您可以维护一个 ChannelId / BotId (Recipient.Id) 的静态字典,您可以在每次收到新消息时填写 MessagesController。那时,您知道 activity.Recipient.Id 将成为机器人,然后使用 activity.ChannelId 获取频道 ID,这将成为您字典的关键字。

之后,您可以在 IActivityLogger 中使用该词典来检查 ID。