Backup and Clean Push Service and implement new Structure of Push Service ...

This commit is contained in:
2025-11-14 16:40:45 +03:30
parent cfcb2d12b4
commit 3bd4b8d562
40 changed files with 333 additions and 2560 deletions
+34
View File
@@ -0,0 +1,34 @@
using xModels.Base;
using xIdentityModels.Constants;
using System;
using System.Collections.Generic;
namespace xPushService.Models
{
public class XHubUserInfo : XBaseDto
{
//
#region Properties ...
public string UserId { get; set; }
public string UserName { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Picture { get; set; }
public string Email { get; set; }
public string PhoneNumber { get; set; }
public XGender Gender { get; set; }
public bool IsBanned { get; set; }
public bool IsEnabled { get; set; }
public bool EmailConfirmed { get; set; }
public bool PhoneNumberConfirmed { get; set; }
public long? ExpiredOn { get; set; }
public long? AuthenticatedOn { get; set; }
public DateTime? BrithDate { get; set; }
public IEnumerable<string> Issuers { get; set; } = new HashSet<string>();
public IEnumerable<string> Audiences { get; set; } = new HashSet<string>();
public IEnumerable<string> ClientIds { get; set; } = new HashSet<string>();
public IEnumerable<string> Scopes { get; set; } = new HashSet<string>();
public IEnumerable<string> Roles { get; set; } = new HashSet<string>();
#endregion
}
}
-35
View File
@@ -1,35 +0,0 @@
using System;
using xModels.Base;
using xModels.Dtos;
namespace xPushService.Models {
/// <summary>
/// a Hub Connection ...
/// </summary>
public class XPushConnectionDto : XBaseStorableDto<string> {
/// <summary>
/// Connection Id ...
/// </summary>
/// <value></value>
public override string Id { get; set; }
/// <summary>
/// Connected User Name ...
/// </summary>
/// <value></value>
public string User { get; set; }
/// <summary>
/// Connected Hub Type Name ...
/// </summary>
public string Type { get; set; }
/// <summary>
/// Connected User Device ...
/// </summary>
/// <value></value>
public XDeviceDto Device { get; set; }
/// <summary>
/// Connected User's Last Seen ...
/// </summary>
/// <value></value>
public DateTime LastSeen { get; set; }
}
}
-9
View File
@@ -1,9 +0,0 @@
using System.Collections.Generic;
using xModels.Base;
namespace xPushService.Models {
public class XPushGroupDto : XBaseStorableDto<string> {
public override string Id { get; set; }
public List<string> Connections { get; set; }
}
}
-50
View File
@@ -1,50 +0,0 @@
using System;
namespace xPushService.Models {
public class XPushMessage {
/// <summary>
/// Specify the Type of Push Notification ...
/// </summary>
/// <value></value>
public string Type { get; set; }
/// <summary>
/// Specify the Topic of PushNotification ...
/// NOTE: XPushTopic enum contains default Values and User can Extends it ...
/// </summary>
/// <value></value>
public string Topic { get; set; }
/// <summary>
/// Specify the Action Name by passing String Values ...
/// NOTE: XPushAction enum contains default Values for Actions ...
/// </summary>
/// <value></value>
public string Action { get; set; }
/// <summary>
/// if this is a User Push Action, we had to pass Actor ...
/// </summary>
/// <value></value>
public string Actor { get; set; }
/// <summary>
/// in CRUD actions or some Custom Actions, we can pass propper data
/// to clients ...
/// </summary>
/// <value></value>
public string Payload { get; set; }
/// <summary>
/// the message or additional Informations for passing to client ...
/// </summary>
/// <value></value>
public string Message { get; set; }
/// <summary>
/// Push notification date and time ...
/// </summary>
/// <value></value>
public DateTime TimeStamp { get; set; }
}
}
-34
View File
@@ -1,34 +0,0 @@
using System;
using xModels.Base;
using xModels.Dtos;
using xPushService.Constants;
namespace xPushService.Models {
public class XWebRTCCalleeDto : XBaseDto {
/// <summary>
/// Callee User Name ...
/// </summary>
/// <value></value>
public string User { get; set; }
/// <summary>
/// Callee Device ...
/// </summary>
/// <value></value>
public XDeviceDto Device { get; set; }
/// <summary>
/// Calee Connection Id ...
/// </summary>
/// <value></value>
public string ConnectionId { get; set; }
/// <summary>
/// call end time ...
/// </summary>
/// <value></value>
public DateTime EndTime { get; set; }
/// <summary>
/// call end reason ...
/// </summary>
/// <value></value>
public XCallEndReason EndReason { get; set; }
}
}
-49
View File
@@ -1,49 +0,0 @@
using System;
using System.Collections.Generic;
using xModels.Base;
using xModels.Dtos;
using xPushService.Constants;
namespace xPushService.Models {
/// <summary>
/// describe a WebRTC Call ...
/// </summary>
public class XWebRTCConnectionDto : XBaseStorableDto<string> {
public override string Id { get; set; }
/// <summary>
/// Call Type ...
/// </summary>
/// <value></value>
public XCallType Type { get; set; }
/// <summary>
/// call request Time ...
/// </summary>
/// <value></value>
public DateTime RequestTime { get; set; }
/// <summary>
/// Payload object ...
/// </summary>
/// <value></value>
public object Payload { get; set; }
/// <summary>
/// Caller User Name ...
/// </summary>
/// <value></value>
public string CallerUser { get; set; }
/// <summary>
/// Caller Device ...
/// </summary>
/// <value></value>
public XDeviceDto CallerDevice { get; set; }
/// <summary>
/// Caller Connection Id ...
/// </summary>
/// <value></value>
public string CallerConnectionId { get; set; }
/// <summary>
/// Callees Informations ...
/// </summary>
/// <value></value>
public IEnumerable<XWebRTCCalleeDto> Callees { get; set; }
}
}
-22
View File
@@ -1,22 +0,0 @@
using System.Collections.Generic;
using xModels.Base;
namespace xPushService.Models {
public class XWebRTCSignalDto : XBaseDto {
/// <summary>
/// Signalign Offer ...
/// </summary>
/// <value></value>
public object Offer { get; set; }
/// <summary>
/// Signaling Answer ...
/// </summary>
/// <value></value>
public object Answer { get; set; }
/// <summary>
/// Signaling Candidates
/// </summary>
/// <value></value>
public IEnumerable<object> Cadidates { get; set; }
}
}