BotSharp/src/Infrastructure/BotSharp.Abstraction/Messaging/Models/RichContent/Template/ButtonTemplateMessage.cs

31 lines
1,011 B
C#
Raw Normal View History

namespace BotSharp.Abstraction.Messaging.Models.RichContent.Template
{
2023-11-26 17:53:44 +00:00
/// <summary>
/// https://developers.facebook.com/docs/messenger-platform/send-messages/buttons
/// </summary>
2023-11-27 21:00:26 +00:00
public class ButtonTemplateMessage : RichMessageBase, IRichMessage, ITemplateMessage
{
2023-11-27 21:00:26 +00:00
public override string Type => "template";
2023-11-08 22:27:42 +00:00
2023-10-27 20:54:16 +00:00
[JsonPropertyName("template_type")]
2023-11-27 21:00:26 +00:00
public override string TemplateType => "button";
public List<ButtonElement> Buttons { get; set; } = new List<ButtonElement>();
}
public class ButtonElement
{
2023-11-26 17:53:44 +00:00
/// <summary>
/// web_url, postback, phone_number
/// </summary>
public string Type { get; set; } = "web_url";
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public string? Url { get; set; }
2023-11-26 17:53:44 +00:00
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public string? Payload { get; set; }
2023-10-29 01:56:21 +00:00
public string Title { get; set; } = string.Empty;
}
}