从bot框架FormFlow发送电子邮件

时间:2017-12-20 07:32:17

标签: botframework

我有一个使用FormFlow创建的示例bot:

public static IForm<SandwichOrder> BuildForm()
        {
            OnCompletionAsyncDelegate<SandwichOrder> processOrder = async (context, state) =>
            {
                await context.PostAsync("We are currently processing your sandwich. We will message you the status.");
            };

            return new FormBuilder<SandwichOrder>()
                        .Message("Welcome to the sandwich order bot!")
                        .Field(nameof(Sandwich))
                        .Field(nameof(Length))
                        .Field(nameof(Bread))
                        .Field(nameof(Cheese))
                        .AddRemainingFields()
                        .Message("Thanks for ordering a sandwich!")
                        .OnCompletion(processOrder)
                        .Build();
    }

完成表格后,控件出现在:

OnCompletionAsyncDelegate<SandwichOrder> processOrder = async (context, state) =>
                {
                    await context.PostAsync("We are currently processing your sandwich. We will message you the status.");
                };

我想向所有表格字段发送电子邮件给自己。如何连接SMTP并编写电子邮件功能以发送包含用户所有选定选项和输入的电子邮件?

1 个答案:

答案 0 :(得分:3)

此问题与Botframework无关,只是“如何从C#发送电子邮件”。

您有几个选项,例如:

  • 使用SendGrid
  • 使用SMTPClient(请点击此处查看:Send e-mail via SMTP using C#
  • 如果您使用Office 365帐户(或在内部使用,但它取决于配置等),则使用Graph API。
  • 使用EWS(Exchange Web服务)
  • 其他方式......

您要在电子邮件中添加的字段包含在state变量

相关问题