Class DispatchCenter
- Namespace
- XENBIT.ResQueServe.Core.Models
- Assembly
- RQS.Core.dll
public record DispatchCenter : IDispatchCenter, IDispatchCenterInfo, IEquatable<DispatchCenter>
- Inheritance
-
DispatchCenter
- Implements
- Inherited Members
Properties
ActivePlayers
The number of active players or users at the command center within the last 30 days, indicating its operational activity.
public int ActivePlayers { get; set; }
Property Value
Address
The specific address where the command center is physically located (geographical position).
public IAddress? Address { get; set; }
Property Value
AddressPackage
The package of addresses associated with the command center.
public AddressPackage? AddressPackage { get; set; }
Property Value
Administrators
A list of users who have administrative rights to contribute to and manage the data and operations of the command center. These administrators are responsible for overseeing the daily operations and ensuring that the command center's data and settings are correctly maintained and updated.
public IEnumerable<IUserInfo>? Administrators { get; set; }
Property Value
AverageRating
The average rating of the command center based on user reviews, on a scale from 1 to 5 stars.
public double? AverageRating { get; init; }
Property Value
CallNumberEmergency
The emergency phone number for the dispatch center, which is typically 911 in North America or 112 in Europe. This number is used for emergency calls requiring immediate response.
public string? CallNumberEmergency { get; set; }
Property Value
CallNumberOffice
The standard office phone number of the dispatch center, used for non-emergency calls. This number provides a way for the public to contact the dispatch center for general inquiries.
public string? CallNumberOffice { get; set; }
Property Value
CallNumberPatientTransport
The specific phone number for arranging patient transports, such as 19222 in Germany. This number is designated for services that are urgent but not life-threatening.
public string? CallNumberPatientTransport { get; set; }
Property Value
CallTextEmergency
The scripted emergency greeting or statement used by call takers when they answer an emergency call, e.g., "911, what's your emergency?"
public string? CallTextEmergency { get; set; }
Property Value
CallTextOffice
The standard greeting or statement given by a call taker when answering a regular office call at the dispatch center.
public string? CallTextOffice { get; set; }
Property Value
CallTextPatientTransport
The standard greeting or statement used when accepting calls for patient transport.
public string? CallTextPatientTransport { get; set; }
Property Value
Category
The category of the command center, which helps classify the center according to its primary function or operational scope.
public DispatchCenterCategory Category { get; set; }
Property Value
ChangedOn
The date and time when the command center was last modified.
public DateTimeOffset? ChangedOn { get; init; }
Property Value
Classification
The classification of the command center based on an automatic scoring system ranging from A (best) to F (not rated).
public DispatchCenterClassification Classification { get; set; }
Property Value
Country
The country where the dispatch center is located.
public Country? Country { get; }
Property Value
CreatedOn
The date and time when the command center was created.
public DateTimeOffset CreatedOn { get; init; }
Property Value
CustomEquipments
A list of custom equipment configurations available for the command center. This property allows the command center to specify unique equipment setups for automated unit suggestions, tailoring the available resources to the specific needs of operations.
public IEnumerable<IDispatchCenterCustomEquipment>? CustomEquipments { get; set; }
Property Value
CustomGeocodingSearchFormat
public string? CustomGeocodingSearchFormat { get; set; }
Property Value
DefaultStatus
The status of a unit if no status was provided / received yet.
public int? DefaultStatus { get; set; }
Property Value
- int?
DiscourseTopicId
The identifier for a discussion topic associated with the command center on the forums.sim-dispatcher.com platform.
public long? DiscourseTopicId { get; init; }
Property Value
- long?
HasErrors
Indicates if there are configuration problems with the command center. If true, new sessions cannot be initiated.
public bool HasErrors { get; set; }
Property Value
HeaderImageId
The identifier for the header image of the command center, used for display purposes in interfaces.
public Guid? HeaderImageId { get; set; }
Property Value
- Guid?
Id
This is the dpcId (Dispatch Center ID).
public long Id { get; set; }
Property Value
IsDispatchingFireAndRescue
Indicates whether the command center coordinates fire and rescue operations, addressing both fire-related emergencies and other rescue missions.
public bool IsDispatchingFireAndRescue { get; set; }
Property Value
IsDispatchingPatientTransports
Indicates whether the command center coordinates normal patient transport services.
public bool IsDispatchingPatientTransports { get; set; }
Property Value
IsDispatchingUrgentAmbulance
Indicates whether the command center coordinates urgent ambulance services, typically for emergency medical response.
public bool IsDispatchingUrgentAmbulance { get; set; }
Property Value
IsPublic
Indicates whether the command center is accessible to the public (read-only).
public bool IsPublic { get; set; }
Property Value
IsRecommended
Indicates whether the command center is recommended within the system, possibly based on performance or user ratings.
public bool IsRecommended { get; init; }
Property Value
KeywordsPerOperation
Defines the number of keywords that can be associated with an operation, ranging from 1 (default) to 6 (maximum). This impacts how operations are classified and searched within the system.
public int KeywordsPerOperation { get; set; }
Property Value
MaxPlayers
The maximum number of players allowed in a single session within the command center. This limit ensures that the system can manage user loads effectively without overloading resources.
public int MaxPlayers { get; set; }
Property Value
Name
The name of the command center. This field may be null if the name has not been set.
public required string Name { get; set; }
Property Value
OperationsPerYear
An initial value used to calculate the number of operations per year. This property does not influence the actual number of emergencies created but helps in setting up operational expectations.
public int OperationsPerYear { get; set; }
Property Value
Options
A list of configurable options that can be set per command center. These options allow for the customization of operational settings,
public IEnumerable<DispatchCenterOption>? Options { get; set; }
Property Value
Owner
Information about the owner of the command center, which includes details.
public IUserInfo? Owner { get; set; }
Property Value
PatientHospitalAmbulantPercent
Percentage of patient transports that are for ambulatory services, not requiring hospitalization.
public int PatientHospitalAmbulantPercent { get; set; }
Property Value
Remarks
Must total 100% with the other values: PatientHospitalizationPercent PatientHospitalDischargePercent PatientHospitalTransferPercent PatientHospitalAmbulantPercent
PatientHospitalDischargePercent
Percentage of patient transports that involve discharging patients from the hospital.
public int PatientHospitalDischargePercent { get; set; }
Property Value
Remarks
Must total 100% with the other values: PatientHospitalizationPercent PatientHospitalDischargePercent PatientHospitalTransferPercent PatientHospitalAmbulantPercent
PatientHospitalDischargeToNursingHomePercent
For discharges, the percentage of patient transports to nursing homes as opposed to their own homes.
public int PatientHospitalDischargeToNursingHomePercent { get; set; }
Property Value
PatientHospitalTransferPercent
Percentage of patient transports that are transfers from one hospital to another.
public int PatientHospitalTransferPercent { get; set; }
Property Value
Remarks
Must total 100% with the other values: PatientHospitalizationPercent PatientHospitalDischargePercent PatientHospitalTransferPercent PatientHospitalAmbulantPercent
PatientHospitalizationFromHomePercent
For hospitalizations, the percentage of transports originating from a home address versus a point of interest like a doctor's office or nursing home.
public int PatientHospitalizationFromHomePercent { get; set; }
Property Value
PatientHospitalizationPercent
Percentage of patient transports that result in hospitalization.
public int PatientHospitalizationPercent { get; set; }
Property Value
Remarks
Must total 100% with the other values: PatientHospitalizationPercent PatientHospitalDischargePercent PatientHospitalTransferPercent PatientHospitalAmbulantPercent
PatientPickupImmediatelyPercent
Percentage indicating how often patient transports are needed immediately as opposed to being scheduled.
public int PatientPickupImmediatelyPercent { get; set; }
Property Value
RecentlyActiveUsers
The amount of recently active users.
public int RecentlyActiveUsers { get; init; }
Property Value
ReduceAmbulanceSaturdayPercent
Reduction percentage in emergency medical services operations on Saturdays from 0 (no transports) and 100 (as normal).
public int ReduceAmbulanceSaturdayPercent { get; set; }
Property Value
ReduceAmbulanceSundayPercent
Reduction percentage in emergency medical services operations on Sundays from 0 (no transports) and 100 (as normal).
public int ReduceAmbulanceSundayPercent { get; set; }
Property Value
ReduceIcuTransferSaturdayPercent
Reduction percentage for intensive care unit transports on Saturdays from 0 (no transports) and 100 (as normal).
public int ReduceIcuTransferSaturdayPercent { get; set; }
Property Value
ReduceIcuTransferSundayPercent
Reduction percentage for intensive care unit transports on Sundays from 0 (no transports) and 100 (as normal).
public int ReduceIcuTransferSundayPercent { get; set; }
Property Value
ReducePatientSaturdayPercent
Reduction percentage for patient transports on Saturdays from 0 (no transports) and 100 (as normal).
public int ReducePatientSaturdayPercent { get; set; }
Property Value
ReducePatientSundayPercent
Reduction percentage for patient transports on Sundays from 0 (no transports) and 100 (as normal).
public int ReducePatientSundayPercent { get; set; }
Property Value
ResponseTimeNonVolunteerMax
The maximum time in seconds it takes for a non-volunteer unit to depart from a department after dispatch.
public int ResponseTimeNonVolunteerMax { get; set; }
Property Value
ResponseTimeNonVolunteerMin
The minimum time in seconds it takes for a non-volunteer unit to be dispatched and leave the department.
public int ResponseTimeNonVolunteerMin { get; set; }
Property Value
ResponseTimeVolunteerMax
The maximum time in seconds it takes for a volunteer unit to depart from a station after being dispatched.
public int ResponseTimeVolunteerMax { get; set; }
Property Value
ResponseTimeVolunteerMin
The minimum time in seconds it takes for a volunteer unit to be dispatched and leave the station.
public int ResponseTimeVolunteerMin { get; set; }
Property Value
UnitSpeedCarPercent
Adjustment percentage for the speed of cars under normal conditions, used to simulate varying response times based on vehicle type and urgency from 50 (fast) and 200 (slow). Default 100 (%).
public int UnitSpeedCarPercent { get; set; }
Property Value
UnitSpeedCarSirenPercent
Adjustment percentage for the speed of cars when a siren is used, simulating faster travel during emergencies from 50 (fast) and 200 (slow). Default 100 (%).
public int UnitSpeedCarSirenPercent { get; set; }
Property Value
UnitSpeedTruckPercent
Adjustment percentage for the speed of trucks under normal conditions from 50 (fast) and 200 (slow). Default 100 (%).
public int UnitSpeedTruckPercent { get; set; }
Property Value
UnitSpeedTruckSirenPercent
Adjustment percentage for the speed of trucks when a siren is used from 50 (fast) and 200 (slow). Default 100 (%).
public int UnitSpeedTruckSirenPercent { get; set; }
Property Value
UnitStatusWhenUnitIsOnStandbyLocation
public UnitStatus UnitStatusWhenUnitIsOnStandbyLocation { get; set; }
Property Value
Methods
GetAdjustedDriveDuration(double, bool, bool)
Adjusts the drive duration based on unit type, siren status, and speed percentage.
public double GetAdjustedDriveDuration(double duration, bool isTruck, bool isSirenOn)
Parameters
durationdoubleThe original duration of the drive.
isTruckboolA boolean indicating whether the unit is a truck.
isSirenOnboolA boolean indicating whether the siren is activated.
Returns
- double
The adjusted drive duration.
GetFullName()
Gets the full name by combining its localized category description and name.
public string GetFullName()
Returns
- string
The full name of the dispatch center.
GetSaturdayReductions()
Retrieves the reduction percentages for various mission categories on Saturday.
public Dictionary<MissionCategory, int> GetSaturdayReductions()
Returns
- Dictionary<MissionCategory, int>
A dictionary where the keys are mission categories and the values are the reduction percentages for Saturday.
Remarks
The method checks if the reduction percentage for each mission category is different from 100%. If it is, the category and its reduction percentage are added to the dictionary.
GetSundayReductions()
Retrieves the reduction percentages for various mission categories on Sunday.
public Dictionary<MissionCategory, int> GetSundayReductions()
Returns
- Dictionary<MissionCategory, int>
A dictionary where the keys are mission categories and the values are the reduction percentages for Sunday.
Remarks
The method checks if the reduction percentage for each mission category is different from 100%. If it is, the category and its reduction percentage are added to the dictionary.
ToString()
Returns a string that represents the current object.
public override string ToString()
Returns
- string
A string that represents the current object.