Table of Contents

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

int

Address

The specific address where the command center is physically located (geographical position).

public IAddress? Address { get; set; }

Property Value

IAddress

AddressPackage

The package of addresses associated with the command center.

public AddressPackage? AddressPackage { get; set; }

Property Value

AddressPackage

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

IEnumerable<IUserInfo>

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

double?

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

string

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

string

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

string

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

string

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

string

CallTextPatientTransport

The standard greeting or statement used when accepting calls for patient transport.

public string? CallTextPatientTransport { get; set; }

Property Value

string

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

DispatchCenterCategory

ChangedOn

The date and time when the command center was last modified.

public DateTimeOffset? ChangedOn { get; init; }

Property Value

DateTimeOffset?

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

DispatchCenterClassification

Country

The country where the dispatch center is located.

public Country? Country { get; }

Property Value

Country?

CreatedOn

The date and time when the command center was created.

public DateTimeOffset CreatedOn { get; init; }

Property Value

DateTimeOffset

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

IEnumerable<IDispatchCenterCustomEquipment>

CustomGeocodingSearchFormat

public string? CustomGeocodingSearchFormat { get; set; }

Property Value

string

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

bool

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

long

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

bool

IsDispatchingPatientTransports

Indicates whether the command center coordinates normal patient transport services.

public bool IsDispatchingPatientTransports { get; set; }

Property Value

bool

IsDispatchingUrgentAmbulance

Indicates whether the command center coordinates urgent ambulance services, typically for emergency medical response.

public bool IsDispatchingUrgentAmbulance { get; set; }

Property Value

bool

IsPublic

Indicates whether the command center is accessible to the public (read-only).

public bool IsPublic { get; set; }

Property Value

bool

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

bool

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

int

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

int

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

string

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

int

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

IEnumerable<DispatchCenterOption>

Owner

Information about the owner of the command center, which includes details.

public IUserInfo? Owner { get; set; }

Property Value

IUserInfo

PatientHospitalAmbulantPercent

Percentage of patient transports that are for ambulatory services, not requiring hospitalization.

public int PatientHospitalAmbulantPercent { get; set; }

Property Value

int

Remarks

PatientHospitalDischargePercent

Percentage of patient transports that involve discharging patients from the hospital.

public int PatientHospitalDischargePercent { get; set; }

Property Value

int

Remarks

PatientHospitalDischargeToNursingHomePercent

For discharges, the percentage of patient transports to nursing homes as opposed to their own homes.

public int PatientHospitalDischargeToNursingHomePercent { get; set; }

Property Value

int

PatientHospitalTransferPercent

Percentage of patient transports that are transfers from one hospital to another.

public int PatientHospitalTransferPercent { get; set; }

Property Value

int

Remarks

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

int

PatientHospitalizationPercent

Percentage of patient transports that result in hospitalization.

public int PatientHospitalizationPercent { get; set; }

Property Value

int

Remarks

PatientPickupImmediatelyPercent

Percentage indicating how often patient transports are needed immediately as opposed to being scheduled.

public int PatientPickupImmediatelyPercent { get; set; }

Property Value

int

RecentlyActiveUsers

The amount of recently active users.

public int RecentlyActiveUsers { get; init; }

Property Value

int

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

int

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

int

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

int

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

int

ReducePatientSaturdayPercent

Reduction percentage for patient transports on Saturdays from 0 (no transports) and 100 (as normal).

public int ReducePatientSaturdayPercent { get; set; }

Property Value

int

ReducePatientSundayPercent

Reduction percentage for patient transports on Sundays from 0 (no transports) and 100 (as normal).

public int ReducePatientSundayPercent { get; set; }

Property Value

int

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

int

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

int

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

int

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

int

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

int

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

int

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

int

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

int

UnitStatusWhenUnitIsOnStandbyLocation

public UnitStatus UnitStatusWhenUnitIsOnStandbyLocation { get; set; }

Property Value

UnitStatus

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

duration double

The original duration of the drive.

isTruck bool

A boolean indicating whether the unit is a truck.

isSirenOn bool

A 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.