Ejemplo n.º 1
0
        public async Task <SendMessagePayload> SendMessage(
            SendMessageInput input,
            [Service] IMessageDb messageDb,
            [Service] ITopicEventSender eventSender
            )
        {
            var(authorId, groupId, authorName, content) = input;
            var message = new ChatMessage(
                MessageId: Guid.NewGuid(),
                Timestamp: DateTimeOffset.UtcNow,
                GroupId: groupId,
                AuthorId: authorId,
                AuthorUsername: authorName,
                Content: content
                );
            await eventSender.SendAsync(new Topic.NewMessage(groupId), message);

            await messageDb.AddMessage(message);

            return(new SendMessagePayload(message));
        }
Ejemplo n.º 2
0
 public ChatHub(IMessageDb chatDb)
 {
     this.chatDb = chatDb;
 }
Ejemplo n.º 3
0
 public UserController(MainDbContext dbContext, UserManager <User> userManager, SignInManager <User> signInManager, IMessageDb db)
 {
     this.dbContext     = dbContext;
     this.userManager   = userManager;
     this.signInManager = signInManager;
 }