添加英雄卡会导致邮件与Skype挂起

时间:2017-06-27 04:24:38

标签: azure botframework azure-functions

我的机器人服务中有一个类,可以在英雄卡片的旋转木马中返回任务。我发现在本地调试时,这可以工作,并且在天蓝色门户网站上使用测试客户端时,它也能正常工作。然而,通过Skype,我发现在几次调用相同功能“获取所有任务”后,僵尸程序永远不会返回响应消息。它的前几次会起作用。用户的请求消息将说“发送”然后“发送”,但机器人将永远不会响应。

    var tasksFound = false;

    var stringBuilder = new StringBuilder();

    var message = context.MakeMessage();
    message.Attachments = new List<Attachment>();
    message.AttachmentLayout = AttachmentLayoutTypes.Carousel;

    foreach (var contact in contacts)
    {
        if (contact.Tasks.Count > 0)
        {
            foreach (var task in contact.Tasks)
            {
                if (task.Completed == false)
                {
                    tasksFound = true;

                    var cardButtons = new List<CardAction>();

                    var plButtonComplete = new CardAction()
                    {
                        Value = $"buttonevent,task,complete,{contact.id},{task.Id}",
                        Type = "postBack",
                        Title = "Complete"
                    };

                    cardButtons.Add(plButtonComplete);

                    var plButtonDelete = new CardAction()
                    {
                        Value = $"buttonevent,task,delete,{contact.id},{task.Id}",
                        Type = "postBack",
                        Title = "Delete"
                    };

                    cardButtons.Add(plButtonDelete);

                    var plCard = new HeroCard()
                    {
                        Title = contact.FullName,
                        Subtitle = $"Due: {task.DueDate.ToString("MMM dd")}",
                        Text = $"{task.Description}",
                        Buttons = cardButtons
                    };

                    message.Attachments.Add(plCard.ToAttachment());
                }
            }
            stringBuilder.AppendLine("");
        }
    }

我已经尝试删除所有卡功能,并且一个简单的字符串构建器可以在Skype和测试客户端中组合消息。

我有什么遗失的吗?我确保使用context.Wait调用DispatchDialog调用堆栈。我也很确定等待等等。

0 个答案:

没有答案