diff --git a/.gitignore b/.gitignore
index 6ca0279d..6c814ded 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,7 @@
#OS junk files
[Tt]humbs.db
*.DS_Store
+._*
#Visual Studio files
*.[Oo]bj
diff --git a/Web/Resgrid.Web.Services/Resgrid.Web.Services.xml b/Web/Resgrid.Web.Services/Resgrid.Web.Services.xml
index 6f6f8dfd..8c590d4e 100644
--- a/Web/Resgrid.Web.Services/Resgrid.Web.Services.xml
+++ b/Web/Resgrid.Web.Services/Resgrid.Web.Services.xml
@@ -2425,52 +2425,6 @@
Is the user a group admin
-
-
- UserId (GUID/UUID) of the User to set. This field will be ignored if the input is used on a
- function that is setting status for the current user.
-
-
-
-
- The state/staffing level of the user to set for the user.
-
-
-
-
- Note for the staffing level
-
-
-
-
- The result object for a state/staffing level request.
-
-
-
-
- The UserId GUID/UUID for the user state/staffing level being return
-
-
-
-
- The full name of the user for the state/staffing level being returned
-
-
-
-
- The current staffing level (state) type for the user
-
-
-
-
- The timestamp of the last state/staffing level. This is converted UTC to the departments, or users, TimeZone.
-
-
-
-
- Staffing note for the User's staffing
-
-
Input data to add a staffing schedule in the Resgrid system
@@ -2576,6 +2530,52 @@
Note for this staffing schedule
+
+
+ UserId (GUID/UUID) of the User to set. This field will be ignored if the input is used on a
+ function that is setting status for the current user.
+
+
+
+
+ The state/staffing level of the user to set for the user.
+
+
+
+
+ Note for the staffing level
+
+
+
+
+ The result object for a state/staffing level request.
+
+
+
+
+ The UserId GUID/UUID for the user state/staffing level being return
+
+
+
+
+ The full name of the user for the state/staffing level being returned
+
+
+
+
+ The current staffing level (state) type for the user
+
+
+
+
+ The timestamp of the last state/staffing level. This is converted UTC to the departments, or users, TimeZone.
+
+
+
+
+ Staffing note for the User's staffing
+
+
A resrouce in the system this could be a user or unit
@@ -6530,374 +6530,209 @@
Identifier of the new npte
-
+
- The result of getting all personnel filters for the system
+ A GPS location for a point in time of a specificed person
-
+
- The Id value of the filter
+ PersonId of the person that the location is for
-
+
- The type of the filter
+ The timestamp of the location in UTC
-
+
- The filters name
+ GPS Latitude of the Person
-
+
- Result containing all the data required to populate the New Call form
+ GPS Longitude of the Person
-
+
- Response Data
+ GPS Latitude\Longitude Accuracy of the Person
-
+
- Result that contains all the options available to filter personnel against compatible Resgrid APIs
+ GPS Altitude of the Person
-
+
- Response Data
+ GPS Altitude Accuracy of the Person
-
+
- Result containing all the data required to populate the New Call form
+ GPS Speed of the Person
-
+
- Response Data
+ GPS Heading of the Person
-
+
- Information about a User
+ A unit location in the Resgrid system
-
+
- The UserId GUID/UUID for the user
+ Response Data
-
+
- DepartmentId of the deparment the user belongs to
+ The information about a specific unit's location
-
+
- Department specificed ID number for this user
+ Id of the Person
-
+
- The Users First Name
+ The Timestamp for the location in UTC
-
+
- The Users Last Name
+ GPS Latitude of the Person
-
+
- The Users Email Address
+ GPS Longitude of the Person
-
+
- The Users Mobile Telephone Number
+ GPS Latitude\Longitude Accuracy of the Person
-
+
- GroupId the user is assigned to (0 for no group)
+ GPS Altitude of the Person
-
+
- Name of the group the user is assigned to
+ GPS Altitude Accuracy of the Person
-
+
- Enumeration/List of roles the user currently holds
+ GPS Speed of the Person
-
+
- The current action/status type for the user
+ GPS Heading of the Person
-
+
- The current action/status string for the user
+ The result of getting the current staffing for a user
-
+
- The current action/status color hex string for the user
+ Response Data
-
+
- The timestamp of the last action. This is converted UTC to the departments, or users, TimeZone.
+ Information about a User staffing
-
+
- The current action/status destination id for the user
+ The UserId GUID/UUID for the user status being return
-
+
- The current action/status destination name for the user
+ DepartmentId of the deparment the user belongs to
-
+
- The current staffing level (state) type for the user
+ The current staffing type for the user
-
+
- The current staffing level (state) string for the user
+ The timestamp of the last staffing. This is converted UTC version of the timestamp.
-
+
- The current staffing level (state) color hex string for the user
+ The timestamp of the last staffing. This is converted UTC to the departments, or users, TimeZone.
-
+
- The timestamp of the last state/staffing level. This is converted UTC to the departments, or users, TimeZone.
+ Note for this staffing
-
+
- Users last known location
+ Saves (sets) and Personnel Staffing in the system, for a single user
-
+
- Sorting weight for the user
+ UnitId of the apparatus that the state is being set for
-
+
- A GPS location for a point in time of a specificed person
+ The UnitStateType of the Unit
-
+
- PersonId of the person that the location is for
+ The timestamp of the status event in UTC
-
+
- The timestamp of the location in UTC
+ The timestamp of the status event in the local time of the device
-
+
- GPS Latitude of the Person
+ User provided note for this event
-
+
- GPS Longitude of the Person
+ The event id used for queuing on mobile applications
-
+
- GPS Latitude\Longitude Accuracy of the Person
+ Depicts a result after saving a person status
-
+
- GPS Altitude of the Person
+ Response Data
-
+
- GPS Altitude Accuracy of the Person
-
-
-
-
- GPS Speed of the Person
-
-
-
-
- GPS Heading of the Person
-
-
-
-
- A unit location in the Resgrid system
-
-
-
-
- Response Data
-
-
-
-
- The information about a specific unit's location
-
-
-
-
- Id of the Person
-
-
-
-
- The Timestamp for the location in UTC
-
-
-
-
- GPS Latitude of the Person
-
-
-
-
- GPS Longitude of the Person
-
-
-
-
- GPS Latitude\Longitude Accuracy of the Person
-
-
-
-
- GPS Altitude of the Person
-
-
-
-
- GPS Altitude Accuracy of the Person
-
-
-
-
- GPS Speed of the Person
-
-
-
-
- GPS Heading of the Person
-
-
-
-
- The result of getting the current staffing for a user
-
-
-
-
- Response Data
-
-
-
-
- Information about a User staffing
-
-
-
-
- The UserId GUID/UUID for the user status being return
-
-
-
-
- DepartmentId of the deparment the user belongs to
-
-
-
-
- The current staffing type for the user
-
-
-
-
- The timestamp of the last staffing. This is converted UTC version of the timestamp.
-
-
-
-
- The timestamp of the last staffing. This is converted UTC to the departments, or users, TimeZone.
-
-
-
-
- Note for this staffing
-
-
-
-
- Saves (sets) and Personnel Staffing in the system, for a single user
-
-
-
-
- UnitId of the apparatus that the state is being set for
-
-
-
-
- The UnitStateType of the Unit
-
-
-
-
- The timestamp of the status event in UTC
-
-
-
-
- The timestamp of the status event in the local time of the device
-
-
-
-
- User provided note for this event
-
-
-
-
- The event id used for queuing on mobile applications
-
-
-
-
- Depicts a result after saving a person status
-
-
-
-
- Response Data
-
-
-
-
- Saves (sets) and Personnel Status in the system, for a single user
+ Saves (sets) and Personnel Status in the system, for a single user
@@ -7170,119 +7005,284 @@
Response Data
-
+
- Result containing all the data required to populate the New Call form
+ The result of getting all personnel filters for the system
-
+
- Response Data
+ The Id value of the filter
-
+
- Details of a protocol
+ The type of the filter
-
+
- Protocol id
+ The filters name
-
+
- Department id
+ Result containing all the data required to populate the New Call form
-
+
- Name of the Protocol
+ Response Data
-
+
- Protocol code
+ Result that contains all the options available to filter personnel against compatible Resgrid APIs
-
+
- This this protocol disabled
+ Response Data
-
+
- Protocol description
+ Result containing all the data required to populate the New Call form
-
+
- Text of the protocol
+ Response Data
-
+
- UTC date and time when the Protocol was created
+ Information about a User
-
+
- UserId of the user who created the protocol
+ The UserId GUID/UUID for the user
-
+
- UTC timestamp of when the Protocol was updated
+ DepartmentId of the deparment the user belongs to
-
+
- Minimum triggering Weight of the Protocol
+ Department specificed ID number for this user
-
+
- UserId that last updated the Protocol
+ The Users First Name
-
+
- Triggers used to activate this Protocol
+ The Users Last Name
-
+
- Attachments for this Protocol
+ The Users Email Address
-
+
- Questions used to determine if this Protocol needs to be used or not
+ The Users Mobile Telephone Number
-
+
- State type
+ GroupId the user is assigned to (0 for no group)
-
+
- Result containing all the data required to populate the New Call form
+ Name of the group the user is assigned to
-
+
- Response Data
+ Enumeration/List of roles the user currently holds
-
+
- A role in the Resgrid system
+ The current action/status type for the user
-
+
- Response Data
+ The current action/status string for the user
+
+
+
+
+ The current action/status color hex string for the user
+
+
+
+
+ The timestamp of the last action. This is converted UTC to the departments, or users, TimeZone.
+
+
+
+
+ The current action/status destination id for the user
+
+
+
+
+ The current action/status destination name for the user
+
+
+
+
+ The current staffing level (state) type for the user
+
+
+
+
+ The current staffing level (state) string for the user
+
+
+
+
+ The current staffing level (state) color hex string for the user
+
+
+
+
+ The timestamp of the last state/staffing level. This is converted UTC to the departments, or users, TimeZone.
+
+
+
+
+ Users last known location
+
+
+
+
+ Sorting weight for the user
+
+
+
+
+ Result containing all the data required to populate the New Call form
+
+
+
+
+ Response Data
+
+
+
+
+ Details of a protocol
+
+
+
+
+ Protocol id
+
+
+
+
+ Department id
+
+
+
+
+ Name of the Protocol
+
+
+
+
+ Protocol code
+
+
+
+
+ This this protocol disabled
+
+
+
+
+ Protocol description
+
+
+
+
+ Text of the protocol
+
+
+
+
+ UTC date and time when the Protocol was created
+
+
+
+
+ UserId of the user who created the protocol
+
+
+
+
+ UTC timestamp of when the Protocol was updated
+
+
+
+
+ Minimum triggering Weight of the Protocol
+
+
+
+
+ UserId that last updated the Protocol
+
+
+
+
+ Triggers used to activate this Protocol
+
+
+
+
+ Attachments for this Protocol
+
+
+
+
+ Questions used to determine if this Protocol needs to be used or not
+
+
+
+
+ State type
+
+
+
+
+ Result containing all the data required to populate the New Call form
+
+
+
+
+ Response Data
+
+
+
+
+ A role in the Resgrid system
+
+
+
+
+ Response Data
@@ -8081,518 +8081,518 @@
Default constructor
-
+
- Result that contains all the options available to filter units against compatible Resgrid APIs
+ Depicts a result after saving a unit status
-
+
Response Data
-
+
- A unit in the Resgrid system
+ Object inputs for setting a users Status/Action. If this object is used in an operation that sets
+ a status for the current user the UserId value in this object will be ignored.
-
+
- Response Data
+ UnitId of the apparatus that the state is being set for
-
+
- The information about a specific unit
+ The UnitStateType of the Unit
-
+
- Id of the Unit
+ The Call/Station the unit is responding to
-
+
- The Id of the department the unit is under
+ The timestamp of the status event in UTC
-
+
- Name of the Unit
+ The timestamp of the status event in the local time of the device
-
+
- Department assigned type for the unit
+ User provided note for this event
-
+
- Department assigned type id for the unit
+ GPS Latitude of the Unit
-
+
- Custom Statuses Set Id
+ GPS Longitude of the Unit
-
+
- Station Id of the station housing the unit (0 means no station)
+ GPS Latitude\Longitude Accuracy of the Unit
-
+
- Name of the station the unit is under
+ GPS Altitude of the Unit
-
+
- Vehicle Identification Number for the unit
+ GPS Altitude Accuracy of the Unit
-
+
- Plate Number for the Unit
+ GPS Speed of the Unit
-
+
- Is the unit 4-Wheel drive
+ GPS Heading of the Unit
-
+
- Does the unit require a special permit to drive
+ The event id used for queuing on mobile applications
-
+
- Id number of the units current destionation (0 means no destination)
+ The accountability roles filed for this event
-
+
- The current status/state of the Unit
+ Role filled by a User on a Unit for an event
-
+
- The Timestamp of the status
+ Id of the locally stored event
-
+
- The units current Latitude
+ Local Event Id
-
+
- The units current Longitude
+ UserId of the user filling the role
-
+
- Current user provide status note
+ RoleId of the role being filled
-
+
- Unit role information for roles on a unit
+ The name of the Role
-
+
- Unit Role Id
+ Depicts a unit status in the Resgrid system.
-
+
- User Id of the user in the role (could be null)
+ Response Data
-
+
- Name of the Role
+ Depicts a unit's status
-
+
- Name of the user in the role (could be null)
+ Unit Id
-
+
- Multiple Unit infos Result
+ Units Name
-
+
- Response Data
+ The Type of the Unit
-
+
- Default constructor
+ Units current Status (State)
-
+
- The information about a specific unit
+ CSS for status (for display)
-
+
- Id of the Unit
+ CSS Style for status (for display)
-
+
- The Id of the department the unit is under
+ Timestamp of this Unit State
-
+
- Name of the Unit
+ Timestamp in Utc of this Unit State
-
+
- Department assigned type for the unit
+ Destination Id (Station or Call)
-
+
- Department assigned type id for the unit
+ Name of the Desination (Call or Station)
-
+
- Custom Statuses Set Id
+ Note for the State
-
+
- Station Id of the station housing the unit (0 means no station)
+ Latitude
-
+
- Name of the station the unit is under
+ Longitude
-
+
- Vehicle Identification Number for the unit
+ Name of the Group the Unit is in
-
+
- Plate Number for the Unit
+ Id of the Group the Unit is in
-
+
- Is the unit 4-Wheel drive
+ Unit statuses (states)
-
+
- Does the unit require a special permit to drive
+ Response Data
-
+
- Id number of the units current destination (0 means no destination)
+ Default constructor
-
+
- Name of the units current destination (0 means no destination)
+ Result that contains all the options available to filter units against compatible Resgrid APIs
-
+
- The current status/state of the Unit
+ Response Data
-
+
- The current status/state of the Unit as a name
+ A unit in the Resgrid system
-
+
- The current status/state of the Unit color
+ Response Data
-
+
- The Timestamp of the status
+ The information about a specific unit
-
+
- The Timestamp of the status in UTC/GMT
+ Id of the Unit
-
+
- The units current Latitude
+ The Id of the department the unit is under
-
+
- The units current Longitude
+ Name of the Unit
-
+
- Current user provide status note
+ Department assigned type for the unit
-
+
- Units Roles
+ Department assigned type id for the unit
-
+
- Multiple Units Result
+ Custom Statuses Set Id
-
+
- Response Data
+ Station Id of the station housing the unit (0 means no station)
-
+
- Default constructor
+ Name of the station the unit is under
-
+
- Depicts a result after saving a unit status
+ Vehicle Identification Number for the unit
-
+
- Response Data
+ Plate Number for the Unit
-
+
- Object inputs for setting a users Status/Action. If this object is used in an operation that sets
- a status for the current user the UserId value in this object will be ignored.
+ Is the unit 4-Wheel drive
-
+
- UnitId of the apparatus that the state is being set for
+ Does the unit require a special permit to drive
-
+
- The UnitStateType of the Unit
+ Id number of the units current destionation (0 means no destination)
-
+
- The Call/Station the unit is responding to
+ The current status/state of the Unit
-
+
- The timestamp of the status event in UTC
+ The Timestamp of the status
-
+
- The timestamp of the status event in the local time of the device
+ The units current Latitude
-
+
- User provided note for this event
+ The units current Longitude
-
+
- GPS Latitude of the Unit
+ Current user provide status note
-
+
- GPS Longitude of the Unit
+ Unit role information for roles on a unit
-
+
- GPS Latitude\Longitude Accuracy of the Unit
+ Unit Role Id
-
+
- GPS Altitude of the Unit
+ User Id of the user in the role (could be null)
-
+
- GPS Altitude Accuracy of the Unit
+ Name of the Role
-
+
- GPS Speed of the Unit
+ Name of the user in the role (could be null)
-
+
- GPS Heading of the Unit
+ Multiple Unit infos Result
-
+
- The event id used for queuing on mobile applications
+ Response Data
-
+
- The accountability roles filed for this event
+ Default constructor
-
+
- Role filled by a User on a Unit for an event
+ The information about a specific unit
-
+
- Id of the locally stored event
+ Id of the Unit
-
+
- Local Event Id
+ The Id of the department the unit is under
-
+
- UserId of the user filling the role
+ Name of the Unit
-
+
- RoleId of the role being filled
+ Department assigned type for the unit
-
+
- The name of the Role
+ Department assigned type id for the unit
-
+
- Depicts a unit status in the Resgrid system.
+ Custom Statuses Set Id
-
+
- Response Data
+ Station Id of the station housing the unit (0 means no station)
-
+
- Depicts a unit's status
+ Name of the station the unit is under
-
+
- Unit Id
+ Vehicle Identification Number for the unit
-
+
- Units Name
+ Plate Number for the Unit
-
+
- The Type of the Unit
+ Is the unit 4-Wheel drive
-
+
- Units current Status (State)
+ Does the unit require a special permit to drive
-
+
- CSS for status (for display)
+ Id number of the units current destination (0 means no destination)
-
+
- CSS Style for status (for display)
+ Name of the units current destination (0 means no destination)
-
+
- Timestamp of this Unit State
+ The current status/state of the Unit
-
+
- Timestamp in Utc of this Unit State
+ The current status/state of the Unit as a name
-
+
- Destination Id (Station or Call)
+ The current status/state of the Unit color
-
+
- Name of the Desination (Call or Station)
+ The Timestamp of the status
-
+
- Note for the State
+ The Timestamp of the status in UTC/GMT
-
+
- Latitude
+ The units current Latitude
-
+
- Longitude
+ The units current Longitude
-
+
- Name of the Group the Unit is in
+ Current user provide status note
-
+
- Id of the Group the Unit is in
+ Units Roles
-
+
- Unit statuses (states)
+ Multiple Units Result
-
+
Response Data
-
+
Default constructor
diff --git a/Workers/Resgrid.Workers.Framework/Logic/CallBroadcast.cs b/Workers/Resgrid.Workers.Framework/Logic/CallBroadcast.cs
index a036a592..a90f0407 100644
--- a/Workers/Resgrid.Workers.Framework/Logic/CallBroadcast.cs
+++ b/Workers/Resgrid.Workers.Framework/Logic/CallBroadcast.cs
@@ -32,6 +32,7 @@ public static async Task ProcessCallQueueItem(CallQueueItem cqi)
{
_communicationService = Bootstrapper.GetKernel().Resolve();
_callsService = Bootstrapper.GetKernel().Resolve();
+ _departmentSettingsService = Bootstrapper.GetKernel().Resolve();
if (cqi != null && cqi.Call != null && cqi.Call.HasAnyDispatches())
{
@@ -100,9 +101,6 @@ public static async Task ProcessCallQueueItem(CallQueueItem cqi)
// Dispatch Groups
if (cqi.Call.GroupDispatches != null && cqi.Call.GroupDispatches.Any())
{
- if (_departmentSettingsService == null)
- _departmentSettingsService = Bootstrapper.GetKernel().Resolve();
-
if (_shiftsService == null)
_shiftsService = Bootstrapper.GetKernel().Resolve();