in sdk/csharp/libraries/microsoft.bot.solutions/Extensions/ActivityEx.cs [15:53]
public static bool IsStartActivity(this Activity activity)
{
switch (activity.ChannelId)
{
case Channels.Skype:
{
if (activity.Type == ActivityTypes.ContactRelationUpdate && activity.Action == "add")
{
return true;
}
return false;
}
case Channels.Directline:
case Channels.Emulator:
case Channels.Webchat:
case Channels.Msteams:
case Channels.DirectlineSpeech:
case Channels.Test:
{
if (activity.Type == ActivityTypes.ConversationUpdate)
{
// When bot is added to the conversation (triggers start only once per conversation)
if (activity.MembersAdded != null && activity.MembersAdded.Any(m => m.Id == activity.Recipient.Id))
{
return true;
}
}
return false;
}
default:
{
return false;
}
}
}