Remove RichMessageBase which cause Messenger doesn't work.
This commit is contained in:
parent
2cd5337c18
commit
8c1b0bc1e0
|
|
@ -2,6 +2,5 @@ namespace BotSharp.Abstraction.Messaging;
|
|||
|
||||
public interface IRichMessage
|
||||
{
|
||||
string Type { get; }
|
||||
string Text { get; set; }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
namespace BotSharp.Abstraction.Messaging.Models.RichContent
|
||||
{
|
||||
public class QuickReplyMessage : RichMessageBase, IRichMessage
|
||||
public class QuickReplyMessage : IRichMessage
|
||||
{
|
||||
public override string Type => "quick reply";
|
||||
public string Text { get; set; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("quick_replies")]
|
||||
public List<QuickReplyElement> QuickReplies { get; set; } = new List<QuickReplyElement>();
|
||||
|
|
|
|||
|
|
@ -3,12 +3,12 @@ namespace BotSharp.Abstraction.Messaging.Models.RichContent.Template
|
|||
/// <summary>
|
||||
/// https://developers.facebook.com/docs/messenger-platform/send-messages/buttons
|
||||
/// </summary>
|
||||
public class ButtonTemplateMessage : RichMessageBase, IRichMessage, ITemplateMessage
|
||||
public class ButtonTemplateMessage : IRichMessage
|
||||
{
|
||||
public override string Type => "template";
|
||||
public string Text { get; set; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("template_type")]
|
||||
public override string TemplateType => "button";
|
||||
public string TemplateType => "button";
|
||||
public List<ButtonElement> Buttons { get; set; } = new List<ButtonElement>();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,18 +4,16 @@ namespace BotSharp.Abstraction.Messaging.Models.RichContent.Template;
|
|||
/// Coupon Template
|
||||
/// https://developers.facebook.com/docs/messenger-platform/send-messages/template/coupon
|
||||
/// </summary>
|
||||
public class CouponTemplateMessage : RichMessageBase, IRichMessage, ITemplateMessage
|
||||
public class CouponTemplateMessage : IRichMessage, ITemplateMessage
|
||||
{
|
||||
public override string Type => "template";
|
||||
|
||||
[JsonPropertyName("template_type")]
|
||||
public override string TemplateType => "coupon";
|
||||
|
||||
[JsonIgnore]
|
||||
public override string Text { get; set; }
|
||||
public string Text { get; set; }
|
||||
public string Title { get; set; }
|
||||
public string Subtitle { get; set; }
|
||||
|
||||
[JsonPropertyName("template_type")]
|
||||
public string TemplateType => "coupon";
|
||||
|
||||
[JsonPropertyName("coupon_code")]
|
||||
public string CouponCode { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
namespace BotSharp.Abstraction.Messaging.Models.RichContent.Template
|
||||
{
|
||||
public class MultiSelectTemplateMessage : RichMessageBase, IRichMessage
|
||||
public class MultiSelectTemplateMessage : IRichMessage
|
||||
{
|
||||
public override string Type => "template";
|
||||
public string Text { get; set; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("template_type")]
|
||||
public string TemplateType => "multi-select";
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
namespace BotSharp.Abstraction.Messaging.Models.RichContent.Template
|
||||
{
|
||||
public class TemplateMessageBase<T> : RichMessageBase
|
||||
public class TemplateMessageBase<T>
|
||||
{
|
||||
[JsonIgnore]
|
||||
public string Text { get; set; }
|
||||
|
||||
public override string Type => "template";
|
||||
|
||||
[JsonPropertyName("template_type")]
|
||||
public virtual string TemplateType => string.Empty;
|
||||
|
||||
public T[] Elements { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
namespace BotSharp.Abstraction.Messaging.Models.RichContent;
|
||||
|
||||
public class TextMessage : RichMessageBase, IRichMessage
|
||||
public class TextMessage : IRichMessage
|
||||
{
|
||||
public string Type => "text";
|
||||
public string Text { get; set; } = string.Empty;
|
||||
|
||||
public TextMessage(string text)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,11 +0,0 @@
|
|||
namespace BotSharp.Abstraction.Messaging;
|
||||
|
||||
public class RichMessageBase
|
||||
{
|
||||
public virtual string Type { get; }
|
||||
|
||||
public virtual string Text { get; set; }
|
||||
|
||||
[JsonPropertyName("template_type")]
|
||||
public virtual string TemplateType { get; }
|
||||
}
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
using BotSharp.Abstraction.Messaging;
|
||||
using BotSharp.Abstraction.Messaging.Models.RichContent;
|
||||
using Microsoft.AspNetCore.SignalR;
|
||||
|
||||
namespace BotSharp.Plugin.ChatHub.Hooks;
|
||||
|
|
@ -24,7 +25,7 @@ public class ChatHubConversationHook : ConversationHookBase
|
|||
var welcomeTemplate = agent.Templates.FirstOrDefault(x => x.Name == "welcome");
|
||||
if (welcomeTemplate != null)
|
||||
{
|
||||
var messages = JsonSerializer.Deserialize<RichMessageBase[]>(welcomeTemplate.Content, new JsonSerializerOptions
|
||||
var messages = JsonSerializer.Deserialize<TextMessage[]>(welcomeTemplate.Content, new JsonSerializerOptions
|
||||
{
|
||||
PropertyNameCaseInsensitive = true
|
||||
});
|
||||
|
|
|
|||
|
|
@ -10,6 +10,4 @@ public class AttachmentMessage : IRichMessage
|
|||
|
||||
[JsonPropertyName("attachment")]
|
||||
public AttachmentBody Attachment { get; set; }
|
||||
|
||||
public string Type => "template";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -107,10 +107,11 @@ public class MessageHandleService
|
|||
// Response to user
|
||||
foreach(var reply in replies)
|
||||
{
|
||||
var content = JsonSerializer.Serialize(reply, _serializerOptions);
|
||||
await messenger.SendMessage(setting.ApiVersion, setting.PageId,
|
||||
new SendingMessageRequest(setting.PageAccessToken, recipient)
|
||||
{
|
||||
Message = JsonSerializer.Serialize(reply, _serializerOptions)
|
||||
Message = content
|
||||
});
|
||||
Thread.Sleep(500);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue