From 73e8dc0e30d76f35d4bf2f9d3fd1f31113216da9 Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Thu, 10 Jul 2025 10:59:59 +0330 Subject: [PATCH] last ... --- Base/XBaseHub.cs | 2 +- Interfaces/IXBaseHub.cs | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 Interfaces/IXBaseHub.cs diff --git a/Base/XBaseHub.cs b/Base/XBaseHub.cs index b15aac2..1375fd7 100644 --- a/Base/XBaseHub.cs +++ b/Base/XBaseHub.cs @@ -14,7 +14,7 @@ namespace xPushService.Base { /// /// a base class for implementing Hubs ... /// - public abstract class XBaseHub : Hub { + public abstract class XBaseHub : Hub, IXBaseHub { // #region Props ... protected readonly IXPushGroupStore groupStore; diff --git a/Interfaces/IXBaseHub.cs b/Interfaces/IXBaseHub.cs new file mode 100644 index 0000000..af941bb --- /dev/null +++ b/Interfaces/IXBaseHub.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using xPushService.Models; + +namespace xPushService.Interfaces +{ + public interface IXBaseHub + { + Task OnConnectedAsync(); + Task OnDisconnectedAsync(Exception exception); + Task NotifyNewConnection(string connectionId); + Task UpdateLastSeen(); + Task PushMessageAsync(XPushMessage message); + Task AuthorizedMessageAsync(XPushMessage message); + Task PushMessageToAll(XPushMessage message); + Task PushMessageToConnection( + string connectionId, + XPushMessage message + ); + Task PushMessageToConnections( + IEnumerable connectionIds, + XPushMessage message + ); + } +} \ No newline at end of file