message, entities, ImessageService
This commit is contained in:
parent
7e4fe211ff
commit
905347552a
|
|
@ -12,20 +12,20 @@ namespace AyCode.Entities.Messages
|
|||
|
||||
public MessageBase() { }
|
||||
|
||||
public MessageBase(Guid sender, Guid receiver, string message) : this(Guid.NewGuid(), sender, receiver, message) { }
|
||||
public MessageBase(Guid id, Guid sender, Guid receiver, string message) : this()
|
||||
public MessageBase(Guid senderId, Guid receiverId, string message) : this(Guid.NewGuid(), senderId, receiverId, message) { }
|
||||
public MessageBase(Guid id, Guid senderId, Guid receiverId, string message) : this()
|
||||
{
|
||||
Id = id;
|
||||
Sender = sender;
|
||||
Receiver = receiver;
|
||||
SenderId = senderId;
|
||||
ReceiverId = receiverId;
|
||||
Message = message;
|
||||
}
|
||||
|
||||
|
||||
[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
|
||||
public Guid Sender { get; set; }
|
||||
public Guid SenderId { get; set; }
|
||||
|
||||
public Guid Receiver { get; set; }
|
||||
public Guid ReceiverId { get; set; }
|
||||
|
||||
public string Message { get; set; }
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,14 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AyCode.Interfaces.Enums
|
||||
{
|
||||
public interface IMessageTypes
|
||||
{
|
||||
public enum MessageTypesEnum { }
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
|
||||
using AyCode.Interfaces.Entities;
|
||||
using AyCode.Interfaces.Enums;
|
||||
using AyCode.Interfaces.TimeStampInfo;
|
||||
|
||||
namespace AyCode.Interfaces.Messages
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
namespace AyCode.Interfaces.Messages
|
||||
using AyCode.Interfaces.Enums;
|
||||
|
||||
namespace AyCode.Interfaces.Messages
|
||||
{
|
||||
internal interface IMessageSenderService
|
||||
public interface IMessageSenderService
|
||||
{
|
||||
public Task SendMessageAsync(IMessageBase message);
|
||||
public Task<bool> SendMessageAsync(IMessageBase message, int[] messageTypes);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,25 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AyCode.Models.Enums
|
||||
{
|
||||
|
||||
public enum MessageContentType
|
||||
{
|
||||
Text,
|
||||
Image,
|
||||
Video,
|
||||
Audio,
|
||||
File,
|
||||
Location,
|
||||
Contact,
|
||||
Sticker,
|
||||
Gif,
|
||||
VoiceNote,
|
||||
System
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
using AyCode.Interfaces.Enums;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AyCode.Models.Enums
|
||||
{
|
||||
public enum MessageTypesEnum
|
||||
{
|
||||
email = 1,
|
||||
sms = 2,
|
||||
push = 3,
|
||||
chat = 4
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
using AyCode.Entities.Messages;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AyCode.Models.Messages
|
||||
{
|
||||
public class EMailMessage : MessageBase
|
||||
{
|
||||
public EMailMessage() { }
|
||||
public string Subject { get; set; }
|
||||
public string HtmlContent { get; set; }
|
||||
public EMailMessage(Guid senderId, Guid receiverId, string message, string subject, string htmlContent) : base(senderId, receiverId, message )
|
||||
{
|
||||
Subject = subject;
|
||||
HtmlContent = htmlContent;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -6,6 +6,11 @@
|
|||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
|
||||
<PackageReference Include="SendGrid" Version="9.28.1" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\AyCode.Core.Server\AyCode.Core.Server.csproj" />
|
||||
<ProjectReference Include="..\AyCode.Core\AyCode.Core.csproj" />
|
||||
|
|
@ -19,4 +24,8 @@
|
|||
<ProjectReference Include="..\AyCode.Services\AyCode.Services.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Messages\" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
|
|
|||
Loading…
Reference in New Issue