message, entities, ImessageService
This commit is contained in:
parent
7e4fe211ff
commit
905347552a
|
|
@ -12,20 +12,20 @@ namespace AyCode.Entities.Messages
|
||||||
|
|
||||||
public MessageBase() { }
|
public MessageBase() { }
|
||||||
|
|
||||||
public MessageBase(Guid sender, Guid receiver, string message) : this(Guid.NewGuid(), sender, receiver, message) { }
|
public MessageBase(Guid senderId, Guid receiverId, string message) : this(Guid.NewGuid(), senderId, receiverId, message) { }
|
||||||
public MessageBase(Guid id, Guid sender, Guid receiver, string message) : this()
|
public MessageBase(Guid id, Guid senderId, Guid receiverId, string message) : this()
|
||||||
{
|
{
|
||||||
Id = id;
|
Id = id;
|
||||||
Sender = sender;
|
SenderId = senderId;
|
||||||
Receiver = receiver;
|
ReceiverId = receiverId;
|
||||||
Message = message;
|
Message = message;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
|
[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; }
|
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.Entities;
|
||||||
|
using AyCode.Interfaces.Enums;
|
||||||
using AyCode.Interfaces.TimeStampInfo;
|
using AyCode.Interfaces.TimeStampInfo;
|
||||||
|
|
||||||
namespace AyCode.Interfaces.Messages
|
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>
|
<Nullable>enable</Nullable>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
|
||||||
|
<PackageReference Include="SendGrid" Version="9.28.1" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\AyCode.Core.Server\AyCode.Core.Server.csproj" />
|
<ProjectReference Include="..\AyCode.Core.Server\AyCode.Core.Server.csproj" />
|
||||||
<ProjectReference Include="..\AyCode.Core\AyCode.Core.csproj" />
|
<ProjectReference Include="..\AyCode.Core\AyCode.Core.csproj" />
|
||||||
|
|
@ -19,4 +24,8 @@
|
||||||
<ProjectReference Include="..\AyCode.Services\AyCode.Services.csproj" />
|
<ProjectReference Include="..\AyCode.Services\AyCode.Services.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<Folder Include="Messages\" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue