Reformatted typing code
This commit is contained in:
@@ -52,6 +52,8 @@ public class SupportAdminService
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region Typing
|
||||||
|
|
||||||
private void HandleTyping(User user)
|
private void HandleTyping(User user)
|
||||||
{
|
{
|
||||||
var name = $"{user.FirstName} {user.LastName}";
|
var name = $"{user.FirstName} {user.LastName}";
|
||||||
@@ -85,6 +87,18 @@ public class SupportAdminService
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Task TriggerTyping()
|
||||||
|
{
|
||||||
|
Task.Run(async () =>
|
||||||
|
{
|
||||||
|
await MessageService.Emit($"support.{Recipient.Id}.admintyping", Self);
|
||||||
|
});
|
||||||
|
|
||||||
|
return Task.CompletedTask;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public async Task<SupportMessage[]> GetMessages()
|
public async Task<SupportMessage[]> GetMessages()
|
||||||
{
|
{
|
||||||
return await SupportServerService.GetMessages(Recipient);
|
return await SupportServerService.GetMessages(Recipient);
|
||||||
@@ -110,16 +124,6 @@ public class SupportAdminService
|
|||||||
await SupportServerService.Close(Recipient);
|
await SupportServerService.Close(Recipient);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task TriggerTyping()
|
|
||||||
{
|
|
||||||
Task.Run(async () =>
|
|
||||||
{
|
|
||||||
await MessageService.Emit($"support.{Recipient.Id}.admintyping", Self);
|
|
||||||
});
|
|
||||||
|
|
||||||
return Task.CompletedTask;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
MessageService.Unsubscribe($"support.{Recipient.Id}.message", this);
|
MessageService.Unsubscribe($"support.{Recipient.Id}.message", this);
|
||||||
|
|||||||
@@ -50,6 +50,8 @@ public class SupportClientService : IDisposable
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region Typing
|
||||||
|
|
||||||
private void HandleTyping(User user)
|
private void HandleTyping(User user)
|
||||||
{
|
{
|
||||||
var name = $"{user.FirstName} {user.LastName}";
|
var name = $"{user.FirstName} {user.LastName}";
|
||||||
@@ -83,6 +85,18 @@ public class SupportClientService : IDisposable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Task TriggerTyping()
|
||||||
|
{
|
||||||
|
Task.Run(async () =>
|
||||||
|
{
|
||||||
|
await MessageService.Emit($"support.{Self.Id}.typing", Self);
|
||||||
|
});
|
||||||
|
|
||||||
|
return Task.CompletedTask;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public async Task<SupportMessage[]> GetMessages()
|
public async Task<SupportMessage[]> GetMessages()
|
||||||
{
|
{
|
||||||
return await SupportServerService.GetMessages(Self);
|
return await SupportServerService.GetMessages(Self);
|
||||||
@@ -102,16 +116,6 @@ public class SupportClientService : IDisposable
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task TriggerTyping()
|
|
||||||
{
|
|
||||||
Task.Run(async () =>
|
|
||||||
{
|
|
||||||
await MessageService.Emit($"support.{Self.Id}.typing", Self);
|
|
||||||
});
|
|
||||||
|
|
||||||
return Task.CompletedTask;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
MessageService.Unsubscribe($"support.{Self.Id}.message", this);
|
MessageService.Unsubscribe($"support.{Self.Id}.message", this);
|
||||||
|
|||||||
@@ -199,10 +199,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private async void OnUpdateTyping(object? sender, EventArgs e)
|
#region Message handling
|
||||||
{
|
|
||||||
await InvokeAsync(StateHasChanged);
|
|
||||||
}
|
|
||||||
|
|
||||||
private async void OnNewMessage(object? sender, SupportMessage e)
|
private async void OnNewMessage(object? sender, SupportMessage e)
|
||||||
{
|
{
|
||||||
@@ -215,6 +212,8 @@
|
|||||||
Messages = (await SupportAdminService.GetMessages()).Reverse().ToArray();
|
Messages = (await SupportAdminService.GetMessages()).Reverse().ToArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
private async Task Send()
|
private async Task Send()
|
||||||
{
|
{
|
||||||
await SupportAdminService.SendMessage(Content);
|
await SupportAdminService.SendMessage(Content);
|
||||||
@@ -226,6 +225,8 @@
|
|||||||
await SupportAdminService.Close();
|
await SupportAdminService.Close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region Typing
|
||||||
|
|
||||||
private async Task OnTyping()
|
private async Task OnTyping()
|
||||||
{
|
{
|
||||||
if ((DateTime.UtcNow - LastTypingTimestamp).TotalSeconds > 5)
|
if ((DateTime.UtcNow - LastTypingTimestamp).TotalSeconds > 5)
|
||||||
@@ -235,4 +236,11 @@
|
|||||||
await SupportAdminService.TriggerTyping();
|
await SupportAdminService.TriggerTyping();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async void OnUpdateTyping(object? sender, EventArgs e)
|
||||||
|
{
|
||||||
|
await InvokeAsync(StateHasChanged);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
@@ -6,7 +6,6 @@
|
|||||||
@using Moonlight.App.Services.Support
|
@using Moonlight.App.Services.Support
|
||||||
|
|
||||||
@inject ResourceService ResourceService
|
@inject ResourceService ResourceService
|
||||||
@inject IdentityService IdentityService
|
|
||||||
@inject SupportClientService SupportClientService
|
@inject SupportClientService SupportClientService
|
||||||
@inject SmartTranslateService SmartTranslateService
|
@inject SmartTranslateService SmartTranslateService
|
||||||
|
|
||||||
@@ -143,8 +142,6 @@
|
|||||||
|
|
||||||
@code
|
@code
|
||||||
{
|
{
|
||||||
private User User;
|
|
||||||
|
|
||||||
private SupportMessage[] Messages;
|
private SupportMessage[] Messages;
|
||||||
private string Content = "";
|
private string Content = "";
|
||||||
|
|
||||||
@@ -152,8 +149,6 @@
|
|||||||
|
|
||||||
private async Task Load(LazyLoader lazyLoader)
|
private async Task Load(LazyLoader lazyLoader)
|
||||||
{
|
{
|
||||||
User = (await IdentityService.Get())!;
|
|
||||||
|
|
||||||
await lazyLoader.SetText("Starting chat client");
|
await lazyLoader.SetText("Starting chat client");
|
||||||
|
|
||||||
SupportClientService.OnNewMessage += OnNewMessage;
|
SupportClientService.OnNewMessage += OnNewMessage;
|
||||||
@@ -162,17 +157,6 @@
|
|||||||
await SupportClientService.Start();
|
await SupportClientService.Start();
|
||||||
}
|
}
|
||||||
|
|
||||||
private async void OnUpdateTyping(object? sender, EventArgs e)
|
|
||||||
{
|
|
||||||
await InvokeAsync(StateHasChanged);
|
|
||||||
}
|
|
||||||
|
|
||||||
private async void OnNewMessage(object? sender, SupportMessage e)
|
|
||||||
{
|
|
||||||
Messages = (await SupportClientService.GetMessages()).Reverse().ToArray();
|
|
||||||
await InvokeAsync(StateHasChanged);
|
|
||||||
}
|
|
||||||
|
|
||||||
private async Task Send()
|
private async Task Send()
|
||||||
{
|
{
|
||||||
await SupportClientService.SendMessage(Content);
|
await SupportClientService.SendMessage(Content);
|
||||||
@@ -180,11 +164,28 @@
|
|||||||
await InvokeAsync(StateHasChanged);
|
await InvokeAsync(StateHasChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region Message handling
|
||||||
|
|
||||||
|
private async void OnNewMessage(object? sender, SupportMessage e)
|
||||||
|
{
|
||||||
|
Messages = (await SupportClientService.GetMessages()).Reverse().ToArray();
|
||||||
|
await InvokeAsync(StateHasChanged);
|
||||||
|
}
|
||||||
|
|
||||||
private async Task LoadMessages(LazyLoader arg)
|
private async Task LoadMessages(LazyLoader arg)
|
||||||
{
|
{
|
||||||
Messages = (await SupportClientService.GetMessages()).Reverse().ToArray();
|
Messages = (await SupportClientService.GetMessages()).Reverse().ToArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Typing
|
||||||
|
|
||||||
|
private async void OnUpdateTyping(object? sender, EventArgs e)
|
||||||
|
{
|
||||||
|
await InvokeAsync(StateHasChanged);
|
||||||
|
}
|
||||||
|
|
||||||
private async void OnTyping()
|
private async void OnTyping()
|
||||||
{
|
{
|
||||||
if ((DateTime.UtcNow - LastTypingTimestamp).TotalSeconds > 5)
|
if ((DateTime.UtcNow - LastTypingTimestamp).TotalSeconds > 5)
|
||||||
@@ -194,4 +195,6 @@
|
|||||||
await SupportClientService.TriggerTyping();
|
await SupportClientService.TriggerTyping();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user