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 ); } }