Служба Microsoft Bot — настройка приветственного сообщения

Сегодня я хотел реализовать приветственное сообщение для своего чат-бота, когда пользователи входят в чат. Я посмотрел на какой-то учебник и увидел, что это кажется простым. Чат-бот работает, когда я запускаю WebChat в службе Microsoft Azure Bot. Вот скриншот, который показывает, что я сделал. На первом рисунке вы можете видеть, что я помещаю код в активность ConversationUpdate, и когда я запускаю команду build.cmd в терминале, она показывает ошибку, которую вы видите на втором рисунке. Имейте в виду, что я новичок в службе Microsoft Bot. Может ли кто-нибудь сказать мне, что я делаю неправильно? Спасибо

https://prnt.sc/k7vl8h https://prnt.sc/k7vl1l


person Dusan    schedule 18.07.2018    source источник


Ответы (1)


из вашего первого сообщения об ошибке изображения говорится, что ваша «Активность» не определена. Вы должны объявить свою активность message и заменить на activity.

Обновите метод HandleSystemMessage, чтобы он выглядел следующим образом:

private Activity HandleSystemMessage(Activity activity)
{
    if (activity.Type == ActivityTypes.DeleteUserData)
    {
        // Implement user deletion here
        // If we handle user deletion, return a real message
    }
    else if (activity.Type == ActivityTypes.ConversationUpdate)
    {
        // Handle conversation state changes, like members being added and removed

        IConversationUpdateActivity update = activity;
        var client = new ConnectorClient(new Uri(activity.ServiceUrl), new MicrosoftAppCredentials());
        if (update.MembersAdded != null && update.MembersAdded.Any())
        {
            foreach (var newMember in update.MembersAdded)
            {
                if (newMember.Id != activity.Recipient.Id)
                {
                    var reply = activity.CreateReply();
                    reply.Text = $"Welcome {newMember.Name}!";
                    client.Conversations.ReplyToActivityAsync(reply);
                }
            }
        }
    }
    else if (activity.Type == ActivityTypes.ContactRelationUpdate)
    {
        // Handle add/remove from contact lists
    }
    else if (activity.Type == ActivityTypes.Typing)
    {
        // Handle knowing tha the user is typing
    }
    else if (activity.Type == ActivityTypes.Ping)
    {
    }

    return null;
}
person hongguan    schedule 19.11.2018