[2026-02-23 00:36:36] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260019933_20260223_003636.XML
[2026-02-23 00:36:36] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260019933_20260223_003636.XML for user: 68f1466aed072ad4a
[2026-02-23 00:36:36] [INFO] File size: 5377 bytes
[2026-02-23 00:36:37] [INFO] Created FTPFiles record with ID: 699ba115029c8aa3b
[2026-02-23 00:36:37] [INFO] About to extract fields from XML. File size: 5377 bytes
[2026-02-23 00:36:37] [INFO] Number of mappings: 28
[2026-02-23 00:36:37] [INFO] Starting XML parsing. Content length: 5377
[2026-02-23 00:36:37] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 00:36:37] [INFO] Processing 28 field mappings
[2026-02-23 00:36:37] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 00:36:37] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 00:36:37] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-23 00:36:37] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-02-23 00:36:37] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-02-23 00:36:37] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-02-23 00:36:37] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 00:36:37] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-02-23 00:36:37] [INFO]   -> Found value: 2026000509
[2026-02-23 00:36:37] [INFO]   -> Set field 'incidentInternalId' = "2026000509"
[2026-02-23 00:36:37] [INFO]   -> Set field 'dispatchRunNumber' = "2026000509"
[2026-02-23 00:36:37] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 00:36:37] [INFO]   -> Found value: MVC WITH INJURY
[2026-02-23 00:36:37] [INFO]   -> Set field 'incidentTypeValue1' = "MVC WITH INJURY"
[2026-02-23 00:36:37] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 00:36:37] [INFO]   -> Found value: 2599
[2026-02-23 00:36:37] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2599
[2026-02-23 00:36:37] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 00:36:37] [INFO]   -> Found value: TN
[2026-02-23 00:36:37] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 00:36:37] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 00:36:37] [INFO]   -> Found value: 38506
[2026-02-23 00:36:37] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-23 00:36:37] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 00:36:37] [INFO]   -> No value found (null or empty)
[2026-02-23 00:36:37] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 00:36:37] [INFO]   -> No value found (null or empty)
[2026-02-23 00:36:37] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 00:36:37] [INFO]   -> Found value: 36.19897
[2026-02-23 00:36:37] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.198970000000002755768946371972560882568359375
[2026-02-23 00:36:37] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 00:36:37] [INFO]   -> Found value: -85.48009
[2026-02-23 00:36:37] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.4800900000000041245584725402295589447021484375
[2026-02-23 00:36:37] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 00:36:37] [INFO]   -> Found value: 2026-02-22 18:34:56
[2026-02-23 00:36:37] [INFO]   -> Set field 'alarm' = "2026-02-22 18:34:56"
[2026-02-23 00:36:37] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 00:36:37] [INFO]   -> Found value: 2026-02-22 18:36:31
[2026-02-23 00:36:37] [INFO]   -> Set field 'dispatched' = "2026-02-22 18:36:31"
[2026-02-23 00:36:37] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 00:36:37] [INFO]   -> Found value: 2026-02-22 18:36:31
[2026-02-23 00:36:37] [INFO]   -> Set field 'enroute' = "2026-02-22 18:36:31"
[2026-02-23 00:36:37] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 00:36:37] [INFO]   -> No value found (null or empty)
[2026-02-23 00:36:37] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 00:36:37] [INFO]   -> No value found (null or empty)
[2026-02-23 00:36:37] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 00:36:37] [INFO]   -> No value found (null or empty)
[2026-02-23 00:36:37] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 00:36:37] [INFO]   -> Found value: TK12
[2026-02-23 00:36:37] [INFO]   -> Set field 'cADVehicleID' = "TK12"
[2026-02-23 00:36:37] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 00:36:37] [INFO]   -> Found value: 2026-02-22 18:36:31
[2026-02-23 00:36:37] [INFO]   -> Set field 'timedispatch' = "2026-02-22 18:36:31"
[2026-02-23 00:36:37] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 00:36:37] [INFO]   -> Found value: 2026-02-22 18:36:31
[2026-02-23 00:36:37] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-22 18:36:31"
[2026-02-23 00:36:37] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 00:36:37] [INFO]   -> No value found (null or empty)
[2026-02-23 00:36:37] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 00:36:37] [INFO]   -> No value found (null or empty)
[2026-02-23 00:36:37] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 00:36:37] [INFO]   -> No value found (null or empty)
[2026-02-23 00:36:37] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 00:36:37] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-02-23 00:36:37] [INFO]   -> Found value: 20260019933
[2026-02-23 00:36:37] [INFO]   -> Set field 'policeReportNumber' = "20260019933"
[2026-02-23 00:36:37] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 00:36:37] [INFO]   -> Found value: [EMS] VEH IN DITCH // UNKNOWN INJURIES  [02/22/26 18:35:05 SVOKOUN2] Event spawned from MVC WITH INJ...
[2026-02-23 00:36:37] [INFO]   -> Set field 'dispatchNotes' = "[EMS] VEH IN DITCH \/\/ UNKNOWN INJURIES  [02\/22\/26 18:35:05 SVOKOUN2] Event spawned from MVC WITH INJURY.  [02\/22\/2026 18:34:56 SVOKOUN2]"
[2026-02-23 00:36:37] [INFO]   -> Set field 'cADLog' = "[EMS] VEH IN DITCH \/\/ UNKNOWN INJURIES  [02\/22\/26 18:35:05 SVOKOUN2] Event spawned from MVC WITH INJURY.  [02\/22\/2026 18:34:56 SVOKOUN2]"
[2026-02-23 00:36:37] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 00:36:37] [INFO]   -> Found value: COOKEVILLE
[2026-02-23 00:36:37] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-23 00:36:37] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 00:36:37] [INFO]   -> Found value: FISK
[2026-02-23 00:36:37] [INFO]   -> Set field 'streetName' = "FISK"
[2026-02-23 00:36:37] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 00:36:37] [INFO]   -> Found value: RD
[2026-02-23 00:36:37] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-23 00:36:37] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 00:36:37] [INFO]   -> Found value: FISK RD/WHITEAKER SPRINGS RD
[2026-02-23 00:36:37] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "FISK RD\/WHITEAKER SPRINGS RD"
[2026-02-23 00:36:37] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-23 00:36:37] [INFO] Concatenating street name and type
[2026-02-23 00:36:37] [INFO]   -> Combined street name: FISK RD
[2026-02-23 00:36:37] [INFO] Built locationCoordinates from lat/lng: 36.19897,-85.48009
[2026-02-23 00:36:37] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000509","dispatchRunNumber":"2026000509","incidentTypeValue1":"MVC WITH INJURY","incidentLocationStreetNumber":2599,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.198970000000002755768946371972560882568359375,"nERISIncidentLongitude":-85.4800900000000041245584725402295589447021484375,"alarm":"2026-02-22 18:34:56","dispatched":"2026-02-22 18:36:31","enroute":"2026-02-22 18:36:31","cADVehicleID":"TK12","timedispatch":"2026-02-22 18:36:31","timeenroutetoscene":"2026-02-22 18:36:31","policeReportNumber":"20260019933","dispatchNotes":"[EMS] VEH IN DITCH \/\/ UNKNOWN INJURIES  [02\/22\/26 18:35:05 SVOKOUN2] Event spawned from MVC WITH INJURY.  [02\/22\/2026 18:34:56 SVOKOUN2]","cADLog":"[EMS] VEH IN DITCH \/\/ UNKNOWN INJURIES  [02\/22\/26 18:35:05 SVOKOUN2] Event spawned from MVC WITH INJURY.  [02\/22\/2026 18:34:56 SVOKOUN2]","incidentLocationCity":"COOKEVILLE","streetName":"FISK RD","incidentAddressTextVersionStreet":"FISK RD\/WHITEAKER SPRINGS RD","locationCoordinates":"36.19897,-85.48009"}
[2026-02-23 00:36:37] [INFO] Number of extracted fields: 22
[2026-02-23 00:36:37] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-02-23 00:36:37] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
PCSO
RESC', Parsed IDs = ["PCFD","EMS","PCSO","RESC"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 4
[2026-02-23 00:36:37] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-02-23 00:36:37] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-23 00:36:37] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-23 00:36:37] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-02-23 00:36:37] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-23 00:36:37] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-23 00:36:37] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-23 00:36:37] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-23 00:36:37] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-23 00:36:37] [INFO] Found existing IncidentTypeMapping with ID: 69380b1bd578b1eb3
[2026-02-23 00:36:48] [INFO] Created new Dispatches record with ID: 699ba115c86ee508d
[2026-02-23 00:36:48] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 00:36:48] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 00:36:48] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 00:36:48] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260019933_20260223_003636.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 00:36:48] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 05:40:07] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260020011_20260223_054007.XML
[2026-02-23 05:40:07] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260020011_20260223_054007.XML for user: 68f1466aed072ad4a
[2026-02-23 05:40:07] [INFO] File size: 5065 bytes
[2026-02-23 05:40:07] [INFO] Created FTPFiles record with ID: 699be837e3d1117c9
[2026-02-23 05:40:07] [INFO] About to extract fields from XML. File size: 5065 bytes
[2026-02-23 05:40:07] [INFO] Number of mappings: 28
[2026-02-23 05:40:07] [INFO] Starting XML parsing. Content length: 5065
[2026-02-23 05:40:07] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 05:40:07] [INFO] Processing 28 field mappings
[2026-02-23 05:40:07] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 05:40:07] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 05:40:07] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-23 05:40:07] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-02-23 05:40:07] [INFO]   -> Found value: AFD
EMS
[2026-02-23 05:40:07] [INFO]   -> Set field 'cADAgencyIdentifier' = "AFD\nEMS"
[2026-02-23 05:40:07] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 05:40:07] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-02-23 05:40:07] [INFO]   -> Found value: 2026000084
[2026-02-23 05:40:07] [INFO]   -> Set field 'incidentInternalId' = "2026000084"
[2026-02-23 05:40:07] [INFO]   -> Set field 'dispatchRunNumber' = "2026000084"
[2026-02-23 05:40:07] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 05:40:07] [INFO]   -> Found value: MEDICAL CALL
[2026-02-23 05:40:07] [INFO]   -> Set field 'incidentTypeValue1' = "MEDICAL CALL"
[2026-02-23 05:40:07] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 05:40:07] [INFO]   -> Found value: 278
[2026-02-23 05:40:07] [INFO]   -> Set field 'incidentLocationStreetNumber' = 278
[2026-02-23 05:40:07] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 05:40:07] [INFO]   -> Found value: TN
[2026-02-23 05:40:07] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 05:40:07] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 05:40:07] [INFO]   -> Found value: 38506
[2026-02-23 05:40:07] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-23 05:40:07] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 05:40:07] [INFO]   -> Found value: SIGNATURE HEALTHCARE
[2026-02-23 05:40:07] [INFO]   -> Set field 'businessName' = "SIGNATURE HEALTHCARE"
[2026-02-23 05:40:07] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 05:40:07] [INFO]   -> No value found (null or empty)
[2026-02-23 05:40:07] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 05:40:07] [INFO]   -> Found value: 36.18491
[2026-02-23 05:40:07] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.18491000000000212821760214865207672119140625
[2026-02-23 05:40:07] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 05:40:07] [INFO]   -> Found value: -85.45000
[2026-02-23 05:40:07] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.4500000000000028421709430404007434844970703125
[2026-02-23 05:40:07] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 05:40:07] [INFO]   -> Found value: 2026-02-22 23:39:44
[2026-02-23 05:40:07] [INFO]   -> Set field 'alarm' = "2026-02-22 23:39:44"
[2026-02-23 05:40:07] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 05:40:07] [INFO]   -> Found value: 2026-02-22 23:39:53
[2026-02-23 05:40:07] [INFO]   -> Set field 'dispatched' = "2026-02-22 23:39:53"
[2026-02-23 05:40:07] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 05:40:07] [INFO]   -> No value found (null or empty)
[2026-02-23 05:40:07] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 05:40:07] [INFO]   -> No value found (null or empty)
[2026-02-23 05:40:07] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 05:40:07] [INFO]   -> No value found (null or empty)
[2026-02-23 05:40:07] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 05:40:07] [INFO]   -> Found value: WILLIAMS CIR/ELM ST
[2026-02-23 05:40:07] [INFO]   -> Set field 'incidentLocationCross' = "WILLIAMS CIR\/ELM ST"
[2026-02-23 05:40:07] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 05:40:07] [INFO]   -> Found value: AFR
[2026-02-23 05:40:07] [INFO]   -> Set field 'cADVehicleID' = "AFR"
[2026-02-23 05:40:07] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 05:40:07] [INFO]   -> Found value: 2026-02-22 23:39:53
[2026-02-23 05:40:07] [INFO]   -> Set field 'timedispatch' = "2026-02-22 23:39:53"
[2026-02-23 05:40:07] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 05:40:07] [INFO]   -> No value found (null or empty)
[2026-02-23 05:40:07] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 05:40:07] [INFO]   -> No value found (null or empty)
[2026-02-23 05:40:07] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 05:40:07] [INFO]   -> No value found (null or empty)
[2026-02-23 05:40:07] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 05:40:07] [INFO]   -> No value found (null or empty)
[2026-02-23 05:40:07] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 05:40:07] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-02-23 05:40:07] [INFO]   -> Found value: 20260020011
[2026-02-23 05:40:07] [INFO]   -> Set field 'policeReportNumber' = "20260020011"
[2026-02-23 05:40:07] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 05:40:07] [INFO]   -> Found value: Event spawned from EMS EMERGENCY TO A FACILITY.  [02/22/2026 23:39:44 BPICHE] CPR IN PROGRESS  ROOM ...
[2026-02-23 05:40:07] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from EMS EMERGENCY TO A FACILITY.  [02\/22\/2026 23:39:44 BPICHE] CPR IN PROGRESS  ROOM 204  [02\/22\/26 23:38:46 BPICHE]]"
[2026-02-23 05:40:07] [INFO]   -> Set field 'cADLog' = "Event spawned from EMS EMERGENCY TO A FACILITY.  [02\/22\/2026 23:39:44 BPICHE] CPR IN PROGRESS  ROOM 204  [02\/22\/26 23:38:46 BPICHE]]"
[2026-02-23 05:40:07] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 05:40:07] [INFO]   -> Found value: ALGOOD
[2026-02-23 05:40:07] [INFO]   -> Set field 'incidentLocationCity' = "ALGOOD"
[2026-02-23 05:40:07] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 05:40:07] [INFO]   -> Found value: DRY VALLEY
[2026-02-23 05:40:07] [INFO]   -> Set field 'streetName' = "DRY VALLEY"
[2026-02-23 05:40:07] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 05:40:07] [INFO]   -> Found value: RD
[2026-02-23 05:40:07] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-23 05:40:07] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 05:40:07] [INFO]   -> Found value: 278 DRY VALLEY RD
[2026-02-23 05:40:07] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "278 DRY VALLEY RD"
[2026-02-23 05:40:07] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-23 05:40:07] [INFO] Concatenating street name and type
[2026-02-23 05:40:07] [INFO]   -> Combined street name: DRY VALLEY RD
[2026-02-23 05:40:07] [INFO] Built locationCoordinates from lat/lng: 36.18491,-85.45
[2026-02-23 05:40:07] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"AFD\nEMS","incidentInternalId":"2026000084","dispatchRunNumber":"2026000084","incidentTypeValue1":"MEDICAL CALL","incidentLocationStreetNumber":278,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"businessName":"SIGNATURE HEALTHCARE","nERISIncidentLatitude":36.18491000000000212821760214865207672119140625,"nERISIncidentLongitude":-85.4500000000000028421709430404007434844970703125,"alarm":"2026-02-22 23:39:44","dispatched":"2026-02-22 23:39:53","incidentLocationCross":"WILLIAMS CIR\/ELM ST","cADVehicleID":"AFR","timedispatch":"2026-02-22 23:39:53","policeReportNumber":"20260020011","dispatchNotes":"Event spawned from EMS EMERGENCY TO A FACILITY.  [02\/22\/2026 23:39:44 BPICHE] CPR IN PROGRESS  ROOM 204  [02\/22\/26 23:38:46 BPICHE]]","cADLog":"Event spawned from EMS EMERGENCY TO A FACILITY.  [02\/22\/2026 23:39:44 BPICHE] CPR IN PROGRESS  ROOM 204  [02\/22\/26 23:38:46 BPICHE]]","incidentLocationCity":"ALGOOD","streetName":"DRY VALLEY RD","incidentAddressTextVersionStreet":"278 DRY VALLEY RD","locationCoordinates":"36.18491,-85.45"}
[2026-02-23 05:40:07] [INFO] Number of extracted fields: 22
[2026-02-23 05:40:07] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'AFD
EMS'
[2026-02-23 05:40:07] [INFO] Multi-agency routing check: CAD Agency ID raw = 'AFD
EMS', Parsed IDs = ["AFD","EMS"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-02-23 05:40:07] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["AFD","EMS"]
[2026-02-23 05:40:07] [INFO] Attempting SAASClient lookup for AgencyCode 'AFD' (index 0) within mailbox's assigned agencies
[2026-02-23 05:40:08] [INFO] SUCCESS: Routed to agency 'Algood Fire Department' (ID: 68910627445d6e167) at INDEX 0 based on AgencyCode 'AFD'
[2026-02-23 05:40:08] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS"]
[2026-02-23 05:40:08] [INFO] Fetched 1 stations from Stations module for agency 'Algood Fire Department': ["68922bda7fe89f7ff"]
[2026-02-23 05:40:08] [INFO] Final routing: saasclientId = 68910627445d6e167, dispatchStationsIds = ["68922bda7fe89f7ff"], matchedAgencyIndex = 0
[2026-02-23 05:40:08] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-23 05:40:08] [INFO] Filtered cADAgencyIdentifier to: AFD
[2026-02-23 05:40:08] [INFO] Updated FTPFiles record saasclientId to routed agency: 68910627445d6e167
[2026-02-23 05:40:08] [INFO] Found existing IncidentTypeMapping with ID: 694c277c8d8602f39
[2026-02-23 05:40:14] [INFO] Created new Dispatches record with ID: 699be838cbfe8c8f4
[2026-02-23 05:40:14] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 05:40:15] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 05:40:15] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 05:40:15] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260020011_20260223_054007.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 05:40:15] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 06:40:37] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020015_20260223_064037.XML
[2026-02-23 06:40:37] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020015_20260223_064037.XML for user: 68f1466aed072ad4a
[2026-02-23 06:40:37] [INFO] File size: 5177 bytes
[2026-02-23 06:40:37] [INFO] Created FTPFiles record with ID: 699bf66582fd95a9b
[2026-02-23 06:40:37] [INFO] About to extract fields from XML. File size: 5177 bytes
[2026-02-23 06:40:37] [INFO] Number of mappings: 28
[2026-02-23 06:40:37] [INFO] Starting XML parsing. Content length: 5177
[2026-02-23 06:40:37] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 06:40:37] [INFO] Processing 28 field mappings
[2026-02-23 06:40:37] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 06:40:37] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 06:40:37] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-23 06:40:37] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-02-23 06:40:37] [INFO]   -> Found value: PCFD
PCSO
[2026-02-23 06:40:37] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nPCSO"
[2026-02-23 06:40:37] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 06:40:37] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-02-23 06:40:37] [INFO]   -> Found value: 2026000510
[2026-02-23 06:40:37] [INFO]   -> Set field 'incidentInternalId' = "2026000510"
[2026-02-23 06:40:37] [INFO]   -> Set field 'dispatchRunNumber' = "2026000510"
[2026-02-23 06:40:37] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 06:40:37] [INFO]   -> Found value: VEHICLE FIRE
[2026-02-23 06:40:37] [INFO]   -> Set field 'incidentTypeValue1' = "VEHICLE FIRE"
[2026-02-23 06:40:37] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 06:40:37] [INFO]   -> Found value: 276
[2026-02-23 06:40:37] [INFO]   -> Set field 'incidentLocationStreetNumber' = 276
[2026-02-23 06:40:37] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 06:40:37] [INFO]   -> Found value: TN
[2026-02-23 06:40:37] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 06:40:37] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 06:40:37] [INFO]   -> Found value: MM276E
[2026-02-23 06:40:37] [INFO]   -> Set field 'businessName' = "MM276E"
[2026-02-23 06:40:37] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 06:40:37] [INFO]   -> Found value: 36.11250
[2026-02-23 06:40:37] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1124999999999971578290569595992565155029296875
[2026-02-23 06:40:37] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 06:40:37] [INFO]   -> Found value: -85.68678
[2026-02-23 06:40:37] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.68677999999999883584678173065185546875
[2026-02-23 06:40:37] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 06:40:37] [INFO]   -> Found value: 2026-02-23 00:39:21
[2026-02-23 06:40:37] [INFO]   -> Set field 'alarm' = "2026-02-23 00:39:21"
[2026-02-23 06:40:37] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 06:40:37] [INFO]   -> Found value: 2026-02-23 00:40:30
[2026-02-23 06:40:37] [INFO]   -> Set field 'dispatched' = "2026-02-23 00:40:30"
[2026-02-23 06:40:37] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 06:40:37] [INFO]   -> Found value: 2026-02-23 00:40:30
[2026-02-23 06:40:37] [INFO]   -> Set field 'enroute' = "2026-02-23 00:40:30"
[2026-02-23 06:40:37] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 06:40:37] [INFO]   -> Found value: EN31
[2026-02-23 06:40:37] [INFO]   -> Set field 'cADVehicleID' = "EN31"
[2026-02-23 06:40:37] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 06:40:37] [INFO]   -> Found value: 2026-02-23 00:40:30
[2026-02-23 06:40:37] [INFO]   -> Set field 'timedispatch' = "2026-02-23 00:40:30"
[2026-02-23 06:40:37] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 06:40:37] [INFO]   -> Found value: 2026-02-23 00:40:30
[2026-02-23 06:40:37] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-23 00:40:30"
[2026-02-23 06:40:37] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 06:40:37] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-02-23 06:40:37] [INFO]   -> Found value: 20260020015
[2026-02-23 06:40:37] [INFO]   -> Set field 'policeReportNumber' = "20260020015"
[2026-02-23 06:40:37] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 06:40:37] [INFO]   -> Found value: WHEELS CAUGHT FIRE  HAULING CARDBOARD  [02/23/26 00:40:00 BPICHE]]
[2026-02-23 06:40:37] [INFO]   -> Set field 'dispatchNotes' = "WHEELS CAUGHT FIRE  HAULING CARDBOARD  [02\/23\/26 00:40:00 BPICHE]]"
[2026-02-23 06:40:37] [INFO]   -> Set field 'cADLog' = "WHEELS CAUGHT FIRE  HAULING CARDBOARD  [02\/23\/26 00:40:00 BPICHE]]"
[2026-02-23 06:40:37] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 06:40:37] [INFO]   -> Found value: SILVER POINT
[2026-02-23 06:40:37] [INFO]   -> Set field 'incidentLocationCity' = "SILVER POINT"
[2026-02-23 06:40:37] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 06:40:37] [INFO]   -> Found value: I 40
[2026-02-23 06:40:37] [INFO]   -> Set field 'streetName' = "I 40"
[2026-02-23 06:40:37] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 06:40:37] [INFO]   -> No value found (null or empty)
[2026-02-23 06:40:37] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 06:40:37] [INFO]   -> Found value: 276 E I 40
[2026-02-23 06:40:37] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "276 E I 40"
[2026-02-23 06:40:37] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-23 06:40:37] [INFO] Built locationCoordinates from lat/lng: 36.1125,-85.68678
[2026-02-23 06:40:37] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nPCSO","incidentInternalId":"2026000510","dispatchRunNumber":"2026000510","incidentTypeValue1":"VEHICLE FIRE","incidentLocationStreetNumber":276,"incidentLocationStateName":"TN","businessName":"MM276E","nERISIncidentLatitude":36.1124999999999971578290569595992565155029296875,"nERISIncidentLongitude":-85.68677999999999883584678173065185546875,"alarm":"2026-02-23 00:39:21","dispatched":"2026-02-23 00:40:30","enroute":"2026-02-23 00:40:30","cADVehicleID":"EN31","timedispatch":"2026-02-23 00:40:30","timeenroutetoscene":"2026-02-23 00:40:30","policeReportNumber":"20260020015","dispatchNotes":"WHEELS CAUGHT FIRE  HAULING CARDBOARD  [02\/23\/26 00:40:00 BPICHE]]","cADLog":"WHEELS CAUGHT FIRE  HAULING CARDBOARD  [02\/23\/26 00:40:00 BPICHE]]","incidentLocationCity":"SILVER POINT","streetName":"I 40","incidentAddressTextVersionStreet":"276 E I 40","locationCoordinates":"36.1125,-85.68678"}
[2026-02-23 06:40:37] [INFO] Number of extracted fields: 22
[2026-02-23 06:40:37] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
PCSO'
[2026-02-23 06:40:37] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
PCSO', Parsed IDs = ["PCFD","PCSO"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-02-23 06:40:37] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","PCSO"]
[2026-02-23 06:40:37] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-23 06:40:37] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-23 06:40:37] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["PCSO"]
[2026-02-23 06:40:37] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-23 06:40:37] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-23 06:40:37] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-23 06:40:37] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-23 06:40:37] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-23 06:40:38] [INFO] Found existing IncidentTypeMapping with ID: 693dc01fb95d87aa5
[2026-02-23 06:40:47] [INFO] Created new Dispatches record with ID: 699bf66651a37c14a
[2026-02-23 06:40:47] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 06:40:47] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 06:40:47] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 06:40:47] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020015_20260223_064037.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 06:40:47] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 07:33:47] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/BFD_20260020018_20260223_073347.XML
[2026-02-23 07:33:47] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/BFD_20260020018_20260223_073347.XML for user: 68f1466aed072ad4a
[2026-02-23 07:33:47] [INFO] File size: 4798 bytes
[2026-02-23 07:33:47] [INFO] Created FTPFiles record with ID: 699c02dbb6cd522ca
[2026-02-23 07:33:47] [INFO] About to extract fields from XML. File size: 4798 bytes
[2026-02-23 07:33:47] [INFO] Number of mappings: 28
[2026-02-23 07:33:47] [INFO] Starting XML parsing. Content length: 4798
[2026-02-23 07:33:47] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 07:33:47] [INFO] Processing 28 field mappings
[2026-02-23 07:33:47] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 07:33:47] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 07:33:47] [INFO]   -> Found value: BFD
[2026-02-23 07:33:47] [INFO]   -> Set field 'cADAgencyIdentifier' = "BFD"
[2026-02-23 07:33:47] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 07:33:47] [INFO]   -> Found value: 2026000060
[2026-02-23 07:33:47] [INFO]   -> Set field 'incidentInternalId' = "2026000060"
[2026-02-23 07:33:47] [INFO]   -> Set field 'dispatchRunNumber' = "2026000060"
[2026-02-23 07:33:47] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 07:33:47] [INFO]   -> Found value: FIRE ALARM
[2026-02-23 07:33:47] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE ALARM"
[2026-02-23 07:33:47] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 07:33:47] [INFO]   -> Found value: 6700
[2026-02-23 07:33:47] [INFO]   -> Set field 'incidentLocationStreetNumber' = 6700
[2026-02-23 07:33:47] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 07:33:47] [INFO]   -> Found value: TN
[2026-02-23 07:33:47] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 07:33:47] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 07:33:47] [INFO]   -> Found value: 38544
[2026-02-23 07:33:47] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38544
[2026-02-23 07:33:47] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 07:33:47] [INFO]   -> Found value: UPPERMAN MIDDLE SCHOOL
[2026-02-23 07:33:47] [INFO]   -> Set field 'businessName' = "UPPERMAN MIDDLE SCHOOL"
[2026-02-23 07:33:47] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 07:33:47] [INFO]   -> No value found (null or empty)
[2026-02-23 07:33:47] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 07:33:47] [INFO]   -> Found value: 36.16899
[2026-02-23 07:33:47] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.16899000000000086174622992984950542449951171875
[2026-02-23 07:33:47] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 07:33:47] [INFO]   -> Found value: -85.63253
[2026-02-23 07:33:47] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.632530000000002701199264265596866607666015625
[2026-02-23 07:33:47] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 07:33:47] [INFO]   -> Found value: 2026-02-23 01:31:44
[2026-02-23 07:33:47] [INFO]   -> Set field 'alarm' = "2026-02-23 01:31:44"
[2026-02-23 07:33:47] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 07:33:47] [INFO]   -> Found value: 2026-02-23 01:33:32
[2026-02-23 07:33:47] [INFO]   -> Set field 'dispatched' = "2026-02-23 01:33:32"
[2026-02-23 07:33:47] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 07:33:47] [INFO]   -> No value found (null or empty)
[2026-02-23 07:33:47] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 07:33:47] [INFO]   -> No value found (null or empty)
[2026-02-23 07:33:47] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 07:33:47] [INFO]   -> No value found (null or empty)
[2026-02-23 07:33:47] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 07:33:47] [INFO]   -> Found value: PINE GROVE RD/BAYLOR CT
[2026-02-23 07:33:47] [INFO]   -> Set field 'incidentLocationCross' = "PINE GROVE RD\/BAYLOR CT"
[2026-02-23 07:33:47] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 07:33:47] [INFO]   -> Found value: BEN1
[2026-02-23 07:33:47] [INFO]   -> Set field 'cADVehicleID' = "BEN1"
[2026-02-23 07:33:47] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 07:33:47] [INFO]   -> Found value: 2026-02-23 01:33:32
[2026-02-23 07:33:47] [INFO]   -> Set field 'timedispatch' = "2026-02-23 01:33:32"
[2026-02-23 07:33:47] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 07:33:47] [INFO]   -> No value found (null or empty)
[2026-02-23 07:33:47] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 07:33:47] [INFO]   -> No value found (null or empty)
[2026-02-23 07:33:47] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 07:33:47] [INFO]   -> No value found (null or empty)
[2026-02-23 07:33:47] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 07:33:47] [INFO]   -> No value found (null or empty)
[2026-02-23 07:33:47] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 07:33:47] [INFO]   -> Found value: 20260020018
[2026-02-23 07:33:47] [INFO]   -> Set field 'policeReportNumber' = "20260020018"
[2026-02-23 07:33:47] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 07:33:47] [INFO]   -> Found value: REF- GAL1-3593  [02/23/26 01:33:24 BPICHE] JESSICA 931-801-5964  [02/23/26 01:33:09 BPICHE] COMMERCI...
[2026-02-23 07:33:47] [INFO]   -> Set field 'dispatchNotes' = "REF- GAL1-3593  [02\/23\/26 01:33:24 BPICHE] JESSICA 931-801-5964  [02\/23\/26 01:33:09 BPICHE] COMMERCIAL ALARM  ZONE 395  [02\/23\/26 01:32:47 BPICHE]]"
[2026-02-23 07:33:47] [INFO]   -> Set field 'cADLog' = "REF- GAL1-3593  [02\/23\/26 01:33:24 BPICHE] JESSICA 931-801-5964  [02\/23\/26 01:33:09 BPICHE] COMMERCIAL ALARM  ZONE 395  [02\/23\/26 01:32:47 BPICHE]]"
[2026-02-23 07:33:47] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 07:33:47] [INFO]   -> Found value: BAXTER
[2026-02-23 07:33:47] [INFO]   -> Set field 'incidentLocationCity' = "BAXTER"
[2026-02-23 07:33:47] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 07:33:47] [INFO]   -> Found value: NASHVILLE
[2026-02-23 07:33:47] [INFO]   -> Set field 'streetName' = "NASHVILLE"
[2026-02-23 07:33:47] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 07:33:47] [INFO]   -> Found value: HWY
[2026-02-23 07:33:47] [INFO]   -> Set field 'streetType' = "HWY"
[2026-02-23 07:33:47] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 07:33:47] [INFO]   -> Found value: 6700 NASHVILLE HWY
[2026-02-23 07:33:47] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "6700 NASHVILLE HWY"
[2026-02-23 07:33:47] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-23 07:33:47] [INFO] Concatenating street name and type
[2026-02-23 07:33:47] [INFO]   -> Combined street name: NASHVILLE HWY
[2026-02-23 07:33:47] [INFO] Built locationCoordinates from lat/lng: 36.16899,-85.63253
[2026-02-23 07:33:47] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"BFD","incidentInternalId":"2026000060","dispatchRunNumber":"2026000060","incidentTypeValue1":"FIRE ALARM","incidentLocationStreetNumber":6700,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38544,"businessName":"UPPERMAN MIDDLE SCHOOL","nERISIncidentLatitude":36.16899000000000086174622992984950542449951171875,"nERISIncidentLongitude":-85.632530000000002701199264265596866607666015625,"alarm":"2026-02-23 01:31:44","dispatched":"2026-02-23 01:33:32","incidentLocationCross":"PINE GROVE RD\/BAYLOR CT","cADVehicleID":"BEN1","timedispatch":"2026-02-23 01:33:32","policeReportNumber":"20260020018","dispatchNotes":"REF- GAL1-3593  [02\/23\/26 01:33:24 BPICHE] JESSICA 931-801-5964  [02\/23\/26 01:33:09 BPICHE] COMMERCIAL ALARM  ZONE 395  [02\/23\/26 01:32:47 BPICHE]]","cADLog":"REF- GAL1-3593  [02\/23\/26 01:33:24 BPICHE] JESSICA 931-801-5964  [02\/23\/26 01:33:09 BPICHE] COMMERCIAL ALARM  ZONE 395  [02\/23\/26 01:32:47 BPICHE]]","incidentLocationCity":"BAXTER","streetName":"NASHVILLE HWY","incidentAddressTextVersionStreet":"6700 NASHVILLE HWY","locationCoordinates":"36.16899,-85.63253"}
[2026-02-23 07:33:47] [INFO] Number of extracted fields: 22
[2026-02-23 07:33:47] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'BFD'
[2026-02-23 07:33:47] [INFO] Multi-agency routing check: CAD Agency ID raw = 'BFD', Parsed IDs = ["BFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 4
[2026-02-23 07:33:47] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["BFD"]
[2026-02-23 07:33:47] [INFO] Attempting SAASClient lookup for AgencyCode 'BFD' (index 0) within mailbox's assigned agencies
[2026-02-23 07:33:47] [INFO] SUCCESS: Routed to agency 'Baxter Fire Department' (ID: 68d1820f7ad4dadbd) at INDEX 0 based on AgencyCode 'BFD'
[2026-02-23 07:33:48] [INFO] Fetched 1 stations from Stations module for agency 'Baxter Fire Department': ["68d1884332e5f169b"]
[2026-02-23 07:33:48] [INFO] Final routing: saasclientId = 68d1820f7ad4dadbd, dispatchStationsIds = ["68d1884332e5f169b"], matchedAgencyIndex = 0
[2026-02-23 07:33:48] [INFO] Updated FTPFiles record saasclientId to routed agency: 68d1820f7ad4dadbd
[2026-02-23 07:33:48] [INFO] Found existing IncidentTypeMapping with ID: 6945b6ed5a589dbb8
[2026-02-23 07:33:51] [INFO] Created new Dispatches record with ID: 699c02dca76c62c26
[2026-02-23 07:33:51] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 07:33:51] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 07:33:51] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 07:33:51] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/BFD_20260020018_20260223_073347.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 07:33:51] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 10:09:58] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020032_20260223_100958.XML
[2026-02-23 10:09:58] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020032_20260223_100958.XML for user: 68f1466aed072ad4a
[2026-02-23 10:09:58] [INFO] File size: 4830 bytes
[2026-02-23 10:09:58] [INFO] Created FTPFiles record with ID: 699c2776c302873c5
[2026-02-23 10:09:58] [INFO] About to extract fields from XML. File size: 4830 bytes
[2026-02-23 10:09:58] [INFO] Number of mappings: 28
[2026-02-23 10:09:58] [INFO] Starting XML parsing. Content length: 4830
[2026-02-23 10:09:58] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 10:09:58] [INFO] Processing 28 field mappings
[2026-02-23 10:09:58] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 10:09:58] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 10:09:58] [INFO]   -> Found value: PCFD
[2026-02-23 10:09:58] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD"
[2026-02-23 10:09:58] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 10:09:58] [INFO]   -> Found value: 2026000511
[2026-02-23 10:09:58] [INFO]   -> Set field 'incidentInternalId' = "2026000511"
[2026-02-23 10:09:58] [INFO]   -> Set field 'dispatchRunNumber' = "2026000511"
[2026-02-23 10:09:58] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 10:09:58] [INFO]   -> Found value: FIRE ALARM
[2026-02-23 10:09:58] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE ALARM"
[2026-02-23 10:09:58] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 10:09:58] [INFO]   -> Found value: 1660
[2026-02-23 10:09:58] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1660
[2026-02-23 10:09:58] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 10:09:58] [INFO]   -> Found value: TN
[2026-02-23 10:09:58] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 10:09:58] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 10:09:58] [INFO]   -> Found value: 38506
[2026-02-23 10:09:58] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-23 10:09:58] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 10:09:58] [INFO]   -> Found value: 36.20955
[2026-02-23 10:09:58] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.20955000000000012505552149377763271331787109375
[2026-02-23 10:09:58] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 10:09:58] [INFO]   -> Found value: -85.39938
[2026-02-23 10:09:58] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.3993799999999936289896140806376934051513671875
[2026-02-23 10:09:58] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 10:09:58] [INFO]   -> Found value: 2026-02-23 04:07:50
[2026-02-23 10:09:58] [INFO]   -> Set field 'alarm' = "2026-02-23 04:07:50"
[2026-02-23 10:09:58] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 10:09:58] [INFO]   -> Found value: 2026-02-23 04:09:52
[2026-02-23 10:09:58] [INFO]   -> Set field 'dispatched' = "2026-02-23 04:09:52"
[2026-02-23 10:09:58] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 10:09:58] [INFO]   -> Found value: BROTHERTON MOUNTAIN RD
[2026-02-23 10:09:58] [INFO]   -> Set field 'incidentLocationCross' = "BROTHERTON MOUNTAIN RD"
[2026-02-23 10:09:58] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 10:09:58] [INFO]   -> Found value: TK21
[2026-02-23 10:09:58] [INFO]   -> Set field 'cADVehicleID' = "TK21"
[2026-02-23 10:09:58] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 10:09:58] [INFO]   -> Found value: 2026-02-23 04:09:52
[2026-02-23 10:09:58] [INFO]   -> Set field 'timedispatch' = "2026-02-23 04:09:52"
[2026-02-23 10:09:58] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 10:09:58] [INFO]   -> No value found (null or empty)
[2026-02-23 10:09:58] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 10:09:58] [INFO]   -> Found value: 20260020032
[2026-02-23 10:09:58] [INFO]   -> Set field 'policeReportNumber' = "20260020032"
[2026-02-23 10:09:58] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 10:09:58] [INFO]   -> Found value: FIRE ALARM  ZONE 7 OFFICE SMOKE DETECTOR  TYLER KRUMB 931-510-9190  REF-AAM46844E  [02/23/26 04:09:0...
[2026-02-23 10:09:58] [INFO]   -> Set field 'dispatchNotes' = "FIRE ALARM  ZONE 7 OFFICE SMOKE DETECTOR  TYLER KRUMB 931-510-9190  REF-AAM46844E  [02\/23\/26 04:09:02 BPICHE]]"
[2026-02-23 10:09:58] [INFO]   -> Set field 'cADLog' = "FIRE ALARM  ZONE 7 OFFICE SMOKE DETECTOR  TYLER KRUMB 931-510-9190  REF-AAM46844E  [02\/23\/26 04:09:02 BPICHE]]"
[2026-02-23 10:09:58] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 10:09:58] [INFO]   -> Found value: COOKEVILLE
[2026-02-23 10:09:58] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-23 10:09:58] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 10:09:58] [INFO]   -> Found value: BENSON
[2026-02-23 10:09:58] [INFO]   -> Set field 'streetName' = "BENSON"
[2026-02-23 10:09:58] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 10:09:58] [INFO]   -> Found value: RD
[2026-02-23 10:09:58] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-23 10:09:58] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 10:09:58] [INFO]   -> Found value: 1660 BENSON RD
[2026-02-23 10:09:58] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "1660 BENSON RD"
[2026-02-23 10:09:58] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-23 10:09:58] [INFO] Concatenating street name and type
[2026-02-23 10:09:58] [INFO]   -> Combined street name: BENSON RD
[2026-02-23 10:09:58] [INFO] Built locationCoordinates from lat/lng: 36.20955,-85.39938
[2026-02-23 10:09:58] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD","incidentInternalId":"2026000511","dispatchRunNumber":"2026000511","incidentTypeValue1":"FIRE ALARM","incidentLocationStreetNumber":1660,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.20955000000000012505552149377763271331787109375,"nERISIncidentLongitude":-85.3993799999999936289896140806376934051513671875,"alarm":"2026-02-23 04:07:50","dispatched":"2026-02-23 04:09:52","incidentLocationCross":"BROTHERTON MOUNTAIN RD","cADVehicleID":"TK21","timedispatch":"2026-02-23 04:09:52","policeReportNumber":"20260020032","dispatchNotes":"FIRE ALARM  ZONE 7 OFFICE SMOKE DETECTOR  TYLER KRUMB 931-510-9190  REF-AAM46844E  [02\/23\/26 04:09:02 BPICHE]]","cADLog":"FIRE ALARM  ZONE 7 OFFICE SMOKE DETECTOR  TYLER KRUMB 931-510-9190  REF-AAM46844E  [02\/23\/26 04:09:02 BPICHE]]","incidentLocationCity":"COOKEVILLE","streetName":"BENSON RD","incidentAddressTextVersionStreet":"1660 BENSON RD","locationCoordinates":"36.20955,-85.39938"}
[2026-02-23 10:09:58] [INFO] Number of extracted fields: 21
[2026-02-23 10:09:58] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD'
[2026-02-23 10:09:58] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD', Parsed IDs = ["PCFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 4
[2026-02-23 10:09:58] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD"]
[2026-02-23 10:09:58] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-23 10:09:58] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-23 10:09:59] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-23 10:09:59] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-23 10:09:59] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-23 10:09:59] [INFO] Found existing IncidentTypeMapping with ID: 69398a845c349ab26
[2026-02-23 10:10:09] [INFO] Created new Dispatches record with ID: 699c27778da69c80b
[2026-02-23 10:10:09] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 10:10:09] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 10:10:09] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 10:10:09] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020032_20260223_100958.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 10:10:09] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 10:28:18] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020034_20260223_102818.XML
[2026-02-23 10:28:18] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020034_20260223_102818.XML for user: 68f1466aed072ad4a
[2026-02-23 10:28:18] [INFO] File size: 4623 bytes
[2026-02-23 10:28:19] [INFO] Created FTPFiles record with ID: 699c2bc344d379c50
[2026-02-23 10:28:19] [INFO] About to extract fields from XML. File size: 4623 bytes
[2026-02-23 10:28:19] [INFO] Number of mappings: 28
[2026-02-23 10:28:19] [INFO] Starting XML parsing. Content length: 4623
[2026-02-23 10:28:19] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 10:28:19] [INFO] Processing 28 field mappings
[2026-02-23 10:28:19] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 10:28:19] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 10:28:19] [INFO]   -> Found value: PCFD
[2026-02-23 10:28:19] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD"
[2026-02-23 10:28:19] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 10:28:19] [INFO]   -> Found value: 2026000512
[2026-02-23 10:28:19] [INFO]   -> Set field 'incidentInternalId' = "2026000512"
[2026-02-23 10:28:19] [INFO]   -> Set field 'dispatchRunNumber' = "2026000512"
[2026-02-23 10:28:19] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 10:28:19] [INFO]   -> Found value: FIRE ALARM
[2026-02-23 10:28:19] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE ALARM"
[2026-02-23 10:28:19] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 10:28:19] [INFO]   -> Found value: 1660
[2026-02-23 10:28:19] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1660
[2026-02-23 10:28:19] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 10:28:19] [INFO]   -> Found value: TN
[2026-02-23 10:28:19] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 10:28:19] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 10:28:19] [INFO]   -> Found value: 38506
[2026-02-23 10:28:19] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-23 10:28:19] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 10:28:19] [INFO]   -> Found value: 36.20955
[2026-02-23 10:28:19] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.20955000000000012505552149377763271331787109375
[2026-02-23 10:28:19] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 10:28:19] [INFO]   -> Found value: -85.39938
[2026-02-23 10:28:19] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.3993799999999936289896140806376934051513671875
[2026-02-23 10:28:19] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 10:28:19] [INFO]   -> Found value: 2026-02-23 04:24:55
[2026-02-23 10:28:19] [INFO]   -> Set field 'alarm' = "2026-02-23 04:24:55"
[2026-02-23 10:28:19] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 10:28:19] [INFO]   -> Found value: 2026-02-23 04:28:11
[2026-02-23 10:28:19] [INFO]   -> Set field 'dispatched' = "2026-02-23 04:28:11"
[2026-02-23 10:28:19] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 10:28:19] [INFO]   -> Found value: BROTHERTON MOUNTAIN RD
[2026-02-23 10:28:19] [INFO]   -> Set field 'incidentLocationCross' = "BROTHERTON MOUNTAIN RD"
[2026-02-23 10:28:19] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 10:28:19] [INFO]   -> Found value: TK12
[2026-02-23 10:28:19] [INFO]   -> Set field 'cADVehicleID' = "TK12"
[2026-02-23 10:28:19] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 10:28:19] [INFO]   -> Found value: 2026-02-23 04:28:11
[2026-02-23 10:28:19] [INFO]   -> Set field 'timedispatch' = "2026-02-23 04:28:11"
[2026-02-23 10:28:19] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 10:28:19] [INFO]   -> No value found (null or empty)
[2026-02-23 10:28:19] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 10:28:19] [INFO]   -> Found value: 20260020034
[2026-02-23 10:28:19] [INFO]   -> Set field 'policeReportNumber' = "20260020034"
[2026-02-23 10:28:19] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 10:28:19] [INFO]   -> Found value: OFFICE SMOKE  REF-AAM46844E TYLER 931-510-9190  [02/23/26 04:25:51 BPICHE]]
[2026-02-23 10:28:19] [INFO]   -> Set field 'dispatchNotes' = "OFFICE SMOKE  REF-AAM46844E TYLER 931-510-9190  [02\/23\/26 04:25:51 BPICHE]]"
[2026-02-23 10:28:19] [INFO]   -> Set field 'cADLog' = "OFFICE SMOKE  REF-AAM46844E TYLER 931-510-9190  [02\/23\/26 04:25:51 BPICHE]]"
[2026-02-23 10:28:19] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 10:28:19] [INFO]   -> Found value: COOKEVILLE
[2026-02-23 10:28:19] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-23 10:28:19] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 10:28:19] [INFO]   -> Found value: BENSON
[2026-02-23 10:28:19] [INFO]   -> Set field 'streetName' = "BENSON"
[2026-02-23 10:28:19] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 10:28:19] [INFO]   -> Found value: RD
[2026-02-23 10:28:19] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-23 10:28:19] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 10:28:19] [INFO]   -> Found value: 1660 BENSON RD
[2026-02-23 10:28:19] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "1660 BENSON RD"
[2026-02-23 10:28:19] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-23 10:28:19] [INFO] Concatenating street name and type
[2026-02-23 10:28:19] [INFO]   -> Combined street name: BENSON RD
[2026-02-23 10:28:19] [INFO] Built locationCoordinates from lat/lng: 36.20955,-85.39938
[2026-02-23 10:28:19] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD","incidentInternalId":"2026000512","dispatchRunNumber":"2026000512","incidentTypeValue1":"FIRE ALARM","incidentLocationStreetNumber":1660,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.20955000000000012505552149377763271331787109375,"nERISIncidentLongitude":-85.3993799999999936289896140806376934051513671875,"alarm":"2026-02-23 04:24:55","dispatched":"2026-02-23 04:28:11","incidentLocationCross":"BROTHERTON MOUNTAIN RD","cADVehicleID":"TK12","timedispatch":"2026-02-23 04:28:11","policeReportNumber":"20260020034","dispatchNotes":"OFFICE SMOKE  REF-AAM46844E TYLER 931-510-9190  [02\/23\/26 04:25:51 BPICHE]]","cADLog":"OFFICE SMOKE  REF-AAM46844E TYLER 931-510-9190  [02\/23\/26 04:25:51 BPICHE]]","incidentLocationCity":"COOKEVILLE","streetName":"BENSON RD","incidentAddressTextVersionStreet":"1660 BENSON RD","locationCoordinates":"36.20955,-85.39938"}
[2026-02-23 10:28:19] [INFO] Number of extracted fields: 21
[2026-02-23 10:28:19] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD'
[2026-02-23 10:28:19] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD', Parsed IDs = ["PCFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 4
[2026-02-23 10:28:19] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD"]
[2026-02-23 10:28:19] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-23 10:28:19] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-23 10:28:19] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-23 10:28:19] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-23 10:28:19] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-23 10:28:19] [INFO] Found existing IncidentTypeMapping with ID: 69398a845c349ab26
[2026-02-23 10:28:29] [INFO] Created new Dispatches record with ID: 699c2bc40c916a8bb
[2026-02-23 10:28:29] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 10:28:29] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 10:28:29] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 10:28:29] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020034_20260223_102818.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 10:28:29] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 11:23:49] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260020041_20260223_112348.XML
[2026-02-23 11:23:49] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260020041_20260223_112348.XML for user: 68f1466aed072ad4a
[2026-02-23 11:23:49] [INFO] File size: 5730 bytes
[2026-02-23 11:23:49] [INFO] Created FTPFiles record with ID: 699c38c54de56cfe0
[2026-02-23 11:23:49] [INFO] About to extract fields from XML. File size: 5730 bytes
[2026-02-23 11:23:49] [INFO] Number of mappings: 28
[2026-02-23 11:23:49] [INFO] Starting XML parsing. Content length: 5730
[2026-02-23 11:23:49] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 11:23:49] [INFO] Processing 28 field mappings
[2026-02-23 11:23:49] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 11:23:49] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 11:23:49] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-23 11:23:49] [INFO] Found 5 elements for 'AgencyCode', concatenating 5 non-empty values
[2026-02-23 11:23:49] [INFO]   -> Found value: MFD
EMS
MPD
PCFD
RESC
[2026-02-23 11:23:49] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD\nEMS\nMPD\nPCFD\nRESC"
[2026-02-23 11:23:49] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 11:23:49] [INFO] Found 5 elements for 'ReportNumber', using FIRST value only
[2026-02-23 11:23:49] [INFO]   -> Found value: 2026000065
[2026-02-23 11:23:49] [INFO]   -> Set field 'incidentInternalId' = "2026000065"
[2026-02-23 11:23:49] [INFO]   -> Set field 'dispatchRunNumber' = "2026000065"
[2026-02-23 11:23:49] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 11:23:49] [INFO]   -> Found value: CHEST PAIN
[2026-02-23 11:23:49] [INFO]   -> Set field 'incidentTypeValue1' = "CHEST PAIN"
[2026-02-23 11:23:49] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 11:23:49] [INFO]   -> Found value: 509
[2026-02-23 11:23:49] [INFO]   -> Set field 'incidentLocationStreetNumber' = 509
[2026-02-23 11:23:49] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 11:23:49] [INFO]   -> Found value: TN
[2026-02-23 11:23:49] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 11:23:49] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 11:23:49] [INFO]   -> Found value: 38574
[2026-02-23 11:23:49] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-02-23 11:23:49] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 11:23:49] [INFO]   -> Found value: MONTEREY SHELL
[2026-02-23 11:23:49] [INFO]   -> Set field 'businessName' = "MONTEREY SHELL"
[2026-02-23 11:23:49] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 11:23:49] [INFO]   -> No value found (null or empty)
[2026-02-23 11:23:49] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 11:23:49] [INFO]   -> Found value: 36.14006
[2026-02-23 11:23:49] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.14005999999999829697117093019187450408935546875
[2026-02-23 11:23:49] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 11:23:49] [INFO]   -> Found value: -85.26762
[2026-02-23 11:23:49] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.267619999999993751771398819983005523681640625
[2026-02-23 11:23:49] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 11:23:49] [INFO]   -> Found value: 2026-02-23 05:22:53
[2026-02-23 11:23:49] [INFO]   -> Set field 'alarm' = "2026-02-23 05:22:53"
[2026-02-23 11:23:49] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 11:23:49] [INFO]   -> Found value: 2026-02-23 05:23:39
[2026-02-23 11:23:49] [INFO]   -> Set field 'dispatched' = "2026-02-23 05:23:39"
[2026-02-23 11:23:49] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 11:23:49] [INFO]   -> No value found (null or empty)
[2026-02-23 11:23:49] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 11:23:49] [INFO]   -> No value found (null or empty)
[2026-02-23 11:23:49] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 11:23:49] [INFO]   -> No value found (null or empty)
[2026-02-23 11:23:49] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 11:23:49] [INFO]   -> Found value: AGEE ST/INDUSTRIAL DR
[2026-02-23 11:23:49] [INFO]   -> Set field 'incidentLocationCross' = "AGEE ST\/INDUSTRIAL DR"
[2026-02-23 11:23:49] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 11:23:49] [INFO]   -> Found value: MFR
[2026-02-23 11:23:49] [INFO]   -> Set field 'cADVehicleID' = "MFR"
[2026-02-23 11:23:49] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 11:23:49] [INFO]   -> Found value: 2026-02-23 05:23:39
[2026-02-23 11:23:49] [INFO]   -> Set field 'timedispatch' = "2026-02-23 05:23:39"
[2026-02-23 11:23:49] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 11:23:49] [INFO]   -> No value found (null or empty)
[2026-02-23 11:23:49] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 11:23:49] [INFO]   -> No value found (null or empty)
[2026-02-23 11:23:49] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 11:23:49] [INFO]   -> No value found (null or empty)
[2026-02-23 11:23:49] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 11:23:49] [INFO]   -> No value found (null or empty)
[2026-02-23 11:23:49] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 11:23:49] [INFO] Found 5 elements for 'CadInciNumber', using FIRST value only
[2026-02-23 11:23:49] [INFO]   -> Found value: 20260020041
[2026-02-23 11:23:49] [INFO]   -> Set field 'policeReportNumber' = "20260020041"
[2026-02-23 11:23:49] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 11:23:49] [INFO]   -> Found value: [EMS] CHEST PAIN  SHORTNESS OF BREATH  [02/23/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02/2...
[2026-02-23 11:23:49] [INFO]   -> Set field 'dispatchNotes' = "[EMS] CHEST PAIN  SHORTNESS OF BREATH  [02\/23\/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02\/23\/26 05:23:20 BPICHE] Event spawned for PCFD Event ID:20260020042  CallRef:224  [02\/23\/26 05:23:18 TSCOTT] Event spawned from CHEST PAIN.  [02\/23\/2026 05:22:53 BPICHE] HISTORY OF HEART PROBLEMS 46 YOM  MARY  [02\/23\/26 05:22:46 BPICHE]]"
[2026-02-23 11:23:49] [INFO]   -> Set field 'cADLog' = "[EMS] CHEST PAIN  SHORTNESS OF BREATH  [02\/23\/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02\/23\/26 05:23:20 BPICHE] Event spawned for PCFD Event ID:20260020042  CallRef:224  [02\/23\/26 05:23:18 TSCOTT] Event spawned from CHEST PAIN.  [02\/23\/2026 05:22:53 BPICHE] HISTORY OF HEART PROBLEMS 46 YOM  MARY  [02\/23\/26 05:22:46 BPICHE]]"
[2026-02-23 11:23:49] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 11:23:49] [INFO]   -> Found value: MONTEREY
[2026-02-23 11:23:49] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-02-23 11:23:49] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 11:23:49] [INFO]   -> Found value: STRATTON
[2026-02-23 11:23:49] [INFO]   -> Set field 'streetName' = "STRATTON"
[2026-02-23 11:23:49] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 11:23:49] [INFO]   -> Found value: AVE
[2026-02-23 11:23:49] [INFO]   -> Set field 'streetType' = "AVE"
[2026-02-23 11:23:49] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 11:23:49] [INFO]   -> Found value: 509 E STRATTON AVE
[2026-02-23 11:23:49] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "509 E STRATTON AVE"
[2026-02-23 11:23:49] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-23 11:23:49] [INFO] Concatenating street name and type
[2026-02-23 11:23:49] [INFO]   -> Combined street name: STRATTON AVE
[2026-02-23 11:23:49] [INFO] Built locationCoordinates from lat/lng: 36.14006,-85.26762
[2026-02-23 11:23:49] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"MFD\nEMS\nMPD\nPCFD\nRESC","incidentInternalId":"2026000065","dispatchRunNumber":"2026000065","incidentTypeValue1":"CHEST PAIN","incidentLocationStreetNumber":509,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"businessName":"MONTEREY SHELL","nERISIncidentLatitude":36.14005999999999829697117093019187450408935546875,"nERISIncidentLongitude":-85.267619999999993751771398819983005523681640625,"alarm":"2026-02-23 05:22:53","dispatched":"2026-02-23 05:23:39","incidentLocationCross":"AGEE ST\/INDUSTRIAL DR","cADVehicleID":"MFR","timedispatch":"2026-02-23 05:23:39","policeReportNumber":"20260020041","dispatchNotes":"[EMS] CHEST PAIN  SHORTNESS OF BREATH  [02\/23\/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02\/23\/26 05:23:20 BPICHE] Event spawned for PCFD Event ID:20260020042  CallRef:224  [02\/23\/26 05:23:18 TSCOTT] Event spawned from CHEST PAIN.  [02\/23\/2026 05:22:53 BPICHE] HISTORY OF HEART PROBLEMS 46 YOM  MARY  [02\/23\/26 05:22:46 BPICHE]]","cADLog":"[EMS] CHEST PAIN  SHORTNESS OF BREATH  [02\/23\/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02\/23\/26 05:23:20 BPICHE] Event spawned for PCFD Event ID:20260020042  CallRef:224  [02\/23\/26 05:23:18 TSCOTT] Event spawned from CHEST PAIN.  [02\/23\/2026 05:22:53 BPICHE] HISTORY OF HEART PROBLEMS 46 YOM  MARY  [02\/23\/26 05:22:46 BPICHE]]","incidentLocationCity":"MONTEREY","streetName":"STRATTON AVE","incidentAddressTextVersionStreet":"509 E STRATTON AVE","locationCoordinates":"36.14006,-85.26762"}
[2026-02-23 11:23:49] [INFO] Number of extracted fields: 22
[2026-02-23 11:23:49] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD
EMS
MPD
PCFD
RESC'
[2026-02-23 11:23:49] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD
EMS
MPD
PCFD
RESC', Parsed IDs = ["MFD","EMS","MPD","PCFD","RESC"], Non-empty count = 5, Total agency count = 5, Assigned Agencies count = 4
[2026-02-23 11:23:49] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD","EMS","MPD","PCFD","RESC"]
[2026-02-23 11:23:49] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-23 11:23:49] [INFO] SUCCESS: Routed to agency 'Monterey Fire Department' (ID: 68e67aaba2bb4565e) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-23 11:23:49] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","MPD","PCFD","RESC"]
[2026-02-23 11:23:49] [INFO] Fetched 1 stations from Stations module for agency 'Monterey Fire Department': ["68ffe49c256b67300"]
[2026-02-23 11:23:49] [INFO] Final routing: saasclientId = 68e67aaba2bb4565e, dispatchStationsIds = ["68ffe49c256b67300"], matchedAgencyIndex = 0
[2026-02-23 11:23:49] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 5)
[2026-02-23 11:23:49] [INFO] Filtered cADAgencyIdentifier to: MFD
[2026-02-23 11:23:49] [INFO] Updated FTPFiles record saasclientId to routed agency: 68e67aaba2bb4565e
[2026-02-23 11:23:49] [INFO] Found existing IncidentTypeMapping with ID: 694ff5f932f4685e7
[2026-02-23 11:23:52] [INFO] Created new Dispatches record with ID: 699c38c63404113ae
[2026-02-23 11:23:52] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 11:23:53] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 11:23:53] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 11:23:53] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260020041_20260223_112348.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 11:23:53] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 11:24:09] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020042_20260223_112409.XML
[2026-02-23 11:24:09] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020042_20260223_112409.XML for user: 68f1466aed072ad4a
[2026-02-23 11:24:09] [INFO] File size: 5772 bytes
[2026-02-23 11:24:09] [INFO] Created FTPFiles record with ID: 699c38d9579861b54
[2026-02-23 11:24:09] [INFO] About to extract fields from XML. File size: 5772 bytes
[2026-02-23 11:24:09] [INFO] Number of mappings: 28
[2026-02-23 11:24:09] [INFO] Starting XML parsing. Content length: 5772
[2026-02-23 11:24:09] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 11:24:09] [INFO] Processing 28 field mappings
[2026-02-23 11:24:09] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 11:24:09] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 11:24:09] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-23 11:24:09] [INFO] Found 5 elements for 'AgencyCode', concatenating 5 non-empty values
[2026-02-23 11:24:09] [INFO]   -> Found value: PCFD
EMS
MPD
MFD
RESC
[2026-02-23 11:24:09] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nMPD\nMFD\nRESC"
[2026-02-23 11:24:09] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 11:24:09] [INFO] Found 5 elements for 'ReportNumber', using FIRST value only
[2026-02-23 11:24:09] [INFO]   -> Found value: 2026000513
[2026-02-23 11:24:09] [INFO]   -> Set field 'incidentInternalId' = "2026000513"
[2026-02-23 11:24:09] [INFO]   -> Set field 'dispatchRunNumber' = "2026000513"
[2026-02-23 11:24:09] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 11:24:09] [INFO]   -> Found value: CHEST PAIN
[2026-02-23 11:24:09] [INFO]   -> Set field 'incidentTypeValue1' = "CHEST PAIN"
[2026-02-23 11:24:09] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 11:24:09] [INFO]   -> Found value: 509
[2026-02-23 11:24:09] [INFO]   -> Set field 'incidentLocationStreetNumber' = 509
[2026-02-23 11:24:09] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 11:24:09] [INFO]   -> Found value: TN
[2026-02-23 11:24:09] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 11:24:09] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 11:24:09] [INFO]   -> Found value: 38574
[2026-02-23 11:24:09] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-02-23 11:24:09] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 11:24:09] [INFO]   -> Found value: MONTEREY SHELL
[2026-02-23 11:24:09] [INFO]   -> Set field 'businessName' = "MONTEREY SHELL"
[2026-02-23 11:24:09] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 11:24:09] [INFO]   -> No value found (null or empty)
[2026-02-23 11:24:09] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 11:24:09] [INFO]   -> Found value: 36.14006
[2026-02-23 11:24:09] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.14005999999999829697117093019187450408935546875
[2026-02-23 11:24:09] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 11:24:09] [INFO]   -> Found value: -85.26762
[2026-02-23 11:24:09] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.267619999999993751771398819983005523681640625
[2026-02-23 11:24:09] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 11:24:09] [INFO]   -> Found value: 2026-02-23 05:23:18
[2026-02-23 11:24:09] [INFO]   -> Set field 'alarm' = "2026-02-23 05:23:18"
[2026-02-23 11:24:09] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 11:24:09] [INFO]   -> Found value: 2026-02-23 05:23:59
[2026-02-23 11:24:09] [INFO]   -> Set field 'dispatched' = "2026-02-23 05:23:59"
[2026-02-23 11:24:09] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 11:24:09] [INFO]   -> No value found (null or empty)
[2026-02-23 11:24:09] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 11:24:09] [INFO]   -> No value found (null or empty)
[2026-02-23 11:24:09] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 11:24:09] [INFO]   -> No value found (null or empty)
[2026-02-23 11:24:09] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 11:24:09] [INFO]   -> Found value: AGEE ST/INDUSTRIAL DR
[2026-02-23 11:24:09] [INFO]   -> Set field 'incidentLocationCross' = "AGEE ST\/INDUSTRIAL DR"
[2026-02-23 11:24:09] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 11:24:09] [INFO]   -> Found value: PCFR
[2026-02-23 11:24:09] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-23 11:24:09] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 11:24:09] [INFO]   -> Found value: 2026-02-23 05:23:59
[2026-02-23 11:24:09] [INFO]   -> Set field 'timedispatch' = "2026-02-23 05:23:59"
[2026-02-23 11:24:09] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 11:24:09] [INFO]   -> No value found (null or empty)
[2026-02-23 11:24:09] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 11:24:09] [INFO]   -> No value found (null or empty)
[2026-02-23 11:24:09] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 11:24:09] [INFO]   -> No value found (null or empty)
[2026-02-23 11:24:09] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 11:24:09] [INFO]   -> No value found (null or empty)
[2026-02-23 11:24:09] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 11:24:09] [INFO] Found 5 elements for 'CadInciNumber', using FIRST value only
[2026-02-23 11:24:09] [INFO]   -> Found value: 20260020042
[2026-02-23 11:24:09] [INFO]   -> Set field 'policeReportNumber' = "20260020042"
[2026-02-23 11:24:09] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 11:24:09] [INFO]   -> Found value: [EMS] 46 YOF  [02/23/26 05:23:47 BPICHE] [EMS] CHEST PAIN  SHORTNESS OF BREATH  [02/23/26 05:23:34 B...
[2026-02-23 11:24:09] [INFO]   -> Set field 'dispatchNotes' = "[EMS] 46 YOF  [02\/23\/26 05:23:47 BPICHE] [EMS] CHEST PAIN  SHORTNESS OF BREATH  [02\/23\/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02\/23\/26 05:23:20 BPICHE] Event spawned from CHEST PAIN.  [02\/23\/2026 05:23:18 TSCOTT] Event spawned from CHEST PAIN.  [02\/23\/2026 05:22:53 BPICHE] HISTORY OF HEART PROBLEMS 46 YOM  MARY  [02\/23\/26 05:22:46 BPICHE]]"
[2026-02-23 11:24:09] [INFO]   -> Set field 'cADLog' = "[EMS] 46 YOF  [02\/23\/26 05:23:47 BPICHE] [EMS] CHEST PAIN  SHORTNESS OF BREATH  [02\/23\/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02\/23\/26 05:23:20 BPICHE] Event spawned from CHEST PAIN.  [02\/23\/2026 05:23:18 TSCOTT] Event spawned from CHEST PAIN.  [02\/23\/2026 05:22:53 BPICHE] HISTORY OF HEART PROBLEMS 46 YOM  MARY  [02\/23\/26 05:22:46 BPICHE]]"
[2026-02-23 11:24:09] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 11:24:09] [INFO]   -> Found value: MONTEREY
[2026-02-23 11:24:09] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-02-23 11:24:09] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 11:24:09] [INFO]   -> Found value: STRATTON
[2026-02-23 11:24:09] [INFO]   -> Set field 'streetName' = "STRATTON"
[2026-02-23 11:24:09] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 11:24:09] [INFO]   -> Found value: AVE
[2026-02-23 11:24:09] [INFO]   -> Set field 'streetType' = "AVE"
[2026-02-23 11:24:09] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 11:24:09] [INFO]   -> Found value: 509 E STRATTON AVE
[2026-02-23 11:24:09] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "509 E STRATTON AVE"
[2026-02-23 11:24:09] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-23 11:24:09] [INFO] Concatenating street name and type
[2026-02-23 11:24:09] [INFO]   -> Combined street name: STRATTON AVE
[2026-02-23 11:24:09] [INFO] Built locationCoordinates from lat/lng: 36.14006,-85.26762
[2026-02-23 11:24:09] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nMPD\nMFD\nRESC","incidentInternalId":"2026000513","dispatchRunNumber":"2026000513","incidentTypeValue1":"CHEST PAIN","incidentLocationStreetNumber":509,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"businessName":"MONTEREY SHELL","nERISIncidentLatitude":36.14005999999999829697117093019187450408935546875,"nERISIncidentLongitude":-85.267619999999993751771398819983005523681640625,"alarm":"2026-02-23 05:23:18","dispatched":"2026-02-23 05:23:59","incidentLocationCross":"AGEE ST\/INDUSTRIAL DR","cADVehicleID":"PCFR","timedispatch":"2026-02-23 05:23:59","policeReportNumber":"20260020042","dispatchNotes":"[EMS] 46 YOF  [02\/23\/26 05:23:47 BPICHE] [EMS] CHEST PAIN  SHORTNESS OF BREATH  [02\/23\/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02\/23\/26 05:23:20 BPICHE] Event spawned from CHEST PAIN.  [02\/23\/2026 05:23:18 TSCOTT] Event spawned from CHEST PAIN.  [02\/23\/2026 05:22:53 BPICHE] HISTORY OF HEART PROBLEMS 46 YOM  MARY  [02\/23\/26 05:22:46 BPICHE]]","cADLog":"[EMS] 46 YOF  [02\/23\/26 05:23:47 BPICHE] [EMS] CHEST PAIN  SHORTNESS OF BREATH  [02\/23\/26 05:23:34 BPICHE] [EMS] JEANS AND GREY JACKET  [02\/23\/26 05:23:20 BPICHE] Event spawned from CHEST PAIN.  [02\/23\/2026 05:23:18 TSCOTT] Event spawned from CHEST PAIN.  [02\/23\/2026 05:22:53 BPICHE] HISTORY OF HEART PROBLEMS 46 YOM  MARY  [02\/23\/26 05:22:46 BPICHE]]","incidentLocationCity":"MONTEREY","streetName":"STRATTON AVE","incidentAddressTextVersionStreet":"509 E STRATTON AVE","locationCoordinates":"36.14006,-85.26762"}
[2026-02-23 11:24:09] [INFO] Number of extracted fields: 22
[2026-02-23 11:24:09] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
MPD
MFD
RESC'
[2026-02-23 11:24:09] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
MPD
MFD
RESC', Parsed IDs = ["PCFD","EMS","MPD","MFD","RESC"], Non-empty count = 5, Total agency count = 5, Assigned Agencies count = 4
[2026-02-23 11:24:09] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","MPD","MFD","RESC"]
[2026-02-23 11:24:09] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-23 11:24:09] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-23 11:24:09] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","MPD","MFD","RESC"]
[2026-02-23 11:24:09] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-23 11:24:09] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-23 11:24:09] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 5)
[2026-02-23 11:24:09] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-23 11:24:09] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-23 11:24:09] [INFO] Found existing IncidentTypeMapping with ID: 6939c33d3eae65119
[2026-02-23 11:24:19] [INFO] Created new Dispatches record with ID: 699c38da223ae0728
[2026-02-23 11:24:19] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 11:24:19] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 11:24:19] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 11:24:19] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020042_20260223_112409.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 11:24:19] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 13:00:06] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:00:06] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:00:06] [INFO] File size: 9930 bytes
[2026-02-23 13:00:07] [INFO] Created FTPFiles record with ID: 699c4f5734338b5df
[2026-02-23 13:00:07] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:00:07] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23
[2026-02-23 13:00:07] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943.xml
[2026-02-23 13:00:07] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:00:12] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:00:12] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:00:12] [INFO] File size: 10873 bytes
[2026-02-23 13:00:12] [INFO] Created FTPFiles record with ID: 699c4f5cdf388ee80
[2026-02-23 13:00:12] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:00:12] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771851612.xml
[2026-02-23 13:00:12] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771851612.xml
[2026-02-23 13:00:12] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:00:29] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:00:29] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:00:29] [INFO] File size: 10907 bytes
[2026-02-23 13:00:30] [INFO] Created FTPFiles record with ID: 699c4f6e2fcb32aaa
[2026-02-23 13:00:30] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:00:30] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771851630.xml
[2026-02-23 13:00:30] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771851630.xml
[2026-02-23 13:00:30] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:01:34] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:01:34] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:01:34] [INFO] File size: 13764 bytes
[2026-02-23 13:01:34] [INFO] Created FTPFiles record with ID: 699c4fae624eda41a
[2026-02-23 13:01:34] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:01:34] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771851694.xml
[2026-02-23 13:01:34] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771851694.xml
[2026-02-23 13:01:34] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:01:43] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:01:43] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:01:43] [INFO] File size: 15344 bytes
[2026-02-23 13:01:43] [INFO] Created FTPFiles record with ID: 699c4fb7ba605c5d6
[2026-02-23 13:01:43] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:01:43] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771851703.xml
[2026-02-23 13:01:43] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771851703.xml
[2026-02-23 13:01:43] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:07:28] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:07:28] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:07:28] [INFO] File size: 16956 bytes
[2026-02-23 13:07:29] [INFO] Created FTPFiles record with ID: 699c51114089ffafe
[2026-02-23 13:07:29] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:07:29] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771852049.xml
[2026-02-23 13:07:29] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771852049.xml
[2026-02-23 13:07:29] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:10:56] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:10:56] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:10:56] [INFO] File size: 17896 bytes
[2026-02-23 13:10:56] [INFO] Created FTPFiles record with ID: 699c51e0dbe5369c4
[2026-02-23 13:10:56] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:10:56] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771852256.xml
[2026-02-23 13:10:56] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771852256.xml
[2026-02-23 13:10:56] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:13:14] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:13:14] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:13:14] [INFO] File size: 18863 bytes
[2026-02-23 13:13:14] [INFO] Created FTPFiles record with ID: 699c526a8058626d0
[2026-02-23 13:13:14] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:13:14] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771852394.xml
[2026-02-23 13:13:14] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771852394.xml
[2026-02-23 13:13:14] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:13:20] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:13:20] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:13:20] [INFO] File size: 20452 bytes
[2026-02-23 13:13:20] [INFO] Created FTPFiles record with ID: 699c527070b4cb1b7
[2026-02-23 13:13:20] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:13:20] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771852400.xml
[2026-02-23 13:13:20] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771852400.xml
[2026-02-23 13:13:20] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:13:21] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 13:13:21] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml for user: 69320e6a9e3e5ef71
[2026-02-23 13:13:21] [INFO] File size: 20452 bytes
[2026-02-23 13:13:21] [INFO] Created FTPFiles record with ID: 699c527161070d5c7
[2026-02-23 13:13:21] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 13:13:21] [INFO] File already exists in archive, using unique name: cfs_2026-011943_1771852401.xml
[2026-02-23 13:13:21] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-011943_1771852401.xml
[2026-02-23 13:13:21] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-011943.xml
[2026-02-23 14:27:57] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-05560.xml
[2026-02-23 14:27:57] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-05560.xml for user: 68d56363ec1209189
[2026-02-23 14:27:57] [INFO] File size: 2388 bytes
[2026-02-23 14:27:58] [INFO] Created FTPFiles record with ID: 699c63edf110fea62
[2026-02-23 14:27:58] [INFO] About to extract fields from XML. File size: 2388 bytes
[2026-02-23 14:27:58] [INFO] Number of mappings: 21
[2026-02-23 14:27:58] [INFO] Starting XML parsing. Content length: 2388
[2026-02-23 14:27:58] [INFO] XML parsed successfully. Root element: Incident
[2026-02-23 14:27:58] [INFO] Processing 21 field mappings
[2026-02-23 14:27:58] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-23 14:27:58] [INFO]   -> Found value: 26-05560
[2026-02-23 14:27:58] [INFO]   -> Set field 'dispatchRunNumber' = "26-05560"
[2026-02-23 14:27:58] [INFO]   -> Set field 'cADNumber' = "26-05560"
[2026-02-23 14:27:58] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-23 14:27:58] [INFO]   -> Found value: 217
[2026-02-23 14:27:58] [INFO]   -> Set field 'incidentLocationStreetNumber' = 217
[2026-02-23 14:27:58] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-23 14:27:58] [INFO]   -> Found value: N MAIN ST
[2026-02-23 14:27:58] [INFO]   -> Set field 'streetName' = "N MAIN ST"
[2026-02-23 14:27:58] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-23 14:27:58] [INFO]   -> No value found (null or empty)
[2026-02-23 14:27:58] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-23 14:27:58] [INFO]   -> Found value: SIKESTON
[2026-02-23 14:27:58] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-02-23 14:27:58] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-23 14:27:58] [INFO]   -> Found value: LENDNATION
[2026-02-23 14:27:58] [INFO]   -> Set field 'businessName' = "LENDNATION"
[2026-02-23 14:27:58] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-23 14:27:58] [INFO]   -> No value found (null or empty)
[2026-02-23 14:27:58] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-23 14:27:58] [INFO]   -> No value found (null or empty)
[2026-02-23 14:27:58] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-23 14:27:58] [INFO]   -> Found value: 0
[2026-02-23 14:27:58] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-23 14:27:58] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-23 14:27:58] [INFO]   -> Found value: 0
[2026-02-23 14:27:58] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-23 14:27:58] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-23 14:27:58] [INFO]   -> Found value: FIRE-ALARM MECH
[2026-02-23 14:27:58] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-ALARM MECH"
[2026-02-23 14:27:58] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-23 14:27:58] [INFO]   -> Found value: 02-23-2026 08:16:07|LENDNATION
CARBON MONOXIDE DETECTOR GOING OFF
DO NOT SMELL OR SEE ANYTHING
 02-2...
[2026-02-23 14:27:58] [INFO]   -> Set field 'dispatchNotes' = "02-23-2026 08:16:07|LENDNATION\nCARBON MONOXIDE DETECTOR GOING OFF\nDO NOT SMELL OR SEE ANYTHING\n 02-23-2026 08:25:51|ENG2 ADVISED L3 AND TWR1 TO CLEAR 02-23-2026 08:27:14|B49 ADVISED LOW BATTERY ON THE ALARM  ALL UNITS IN SERVICE"
[2026-02-23 14:27:58] [INFO]   -> Set field 'cADLog' = "02-23-2026 08:16:07|LENDNATION\nCARBON MONOXIDE DETECTOR GOING OFF\nDO NOT SMELL OR SEE ANYTHING\n 02-23-2026 08:25:51|ENG2 ADVISED L3 AND TWR1 TO CLEAR 02-23-2026 08:27:14|B49 ADVISED LOW BATTERY ON THE ALARM  ALL UNITS IN SERVICE"
[2026-02-23 14:27:58] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-23 14:27:58] [INFO]   -> Found value: 02-23-2026T08:18:18
[2026-02-23 14:27:58] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T08:18:18
[2026-02-23 14:27:58] [ERROR] Error formatting datetime '2026-23-02T08:18:18': Failed to parse time string (2026-23-02T08:18:18) at position 6 (3): Unexpected character
[2026-02-23 14:27:58] [INFO]   -> Set field 'alarm' = null
[2026-02-23 14:27:58] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T08:18:18
[2026-02-23 14:27:58] [ERROR] Error formatting datetime '2026-23-02T08:18:18': Failed to parse time string (2026-23-02T08:18:18) at position 6 (3): Unexpected character
[2026-02-23 14:27:58] [INFO]   -> Set field 'dispatched' = null
[2026-02-23 14:27:58] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-23 14:27:58] [INFO]   -> Found value: 02-23-2026T08:22:03
[2026-02-23 14:27:58] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T08:22:03
[2026-02-23 14:27:58] [ERROR] Error formatting datetime '2026-23-02T08:22:03': Failed to parse time string (2026-23-02T08:22:03) at position 6 (3): Unexpected character
[2026-02-23 14:27:58] [INFO]   -> Set field 'onScene' = null
[2026-02-23 14:27:58] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-23 14:27:58] [INFO]   -> Found value: 02-23-2026T08:27:18
[2026-02-23 14:27:58] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T08:27:18
[2026-02-23 14:27:58] [ERROR] Error formatting datetime '2026-23-02T08:27:18': Failed to parse time string (2026-23-02T08:27:18) at position 6 (3): Unexpected character
[2026-02-23 14:27:58] [INFO]   -> Set field 'cleared' = null
[2026-02-23 14:27:58] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T08:27:18
[2026-02-23 14:27:58] [ERROR] Error formatting datetime '2026-23-02T08:27:18': Failed to parse time string (2026-23-02T08:27:18) at position 6 (3): Unexpected character
[2026-02-23 14:27:58] [INFO]   -> Set field 'inService' = null
[2026-02-23 14:27:58] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-23 14:27:58] [INFO]   -> Found value: ENG2
[2026-02-23 14:27:58] [INFO]   -> Set field 'cADVehicleID' = "ENG2"
[2026-02-23 14:27:58] [INFO]   -> Set field 'name' = "ENG2"
[2026-02-23 14:27:58] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-23 14:27:58] [INFO]   -> Found value: 02-23-2026T08:19:21
[2026-02-23 14:27:58] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T08:19:21
[2026-02-23 14:27:58] [ERROR] Error formatting datetime '2026-23-02T08:19:21': Failed to parse time string (2026-23-02T08:19:21) at position 6 (3): Unexpected character
[2026-02-23 14:27:58] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-02-23 14:27:58] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-23 14:27:58] [INFO]   -> Found value: 02-23-2026T08:22:34
[2026-02-23 14:27:58] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T08:22:34
[2026-02-23 14:27:58] [ERROR] Error formatting datetime '2026-23-02T08:22:34': Failed to parse time string (2026-23-02T08:22:34) at position 6 (3): Unexpected character
[2026-02-23 14:27:58] [INFO]   -> Set field 'timeonscene' = null
[2026-02-23 14:27:58] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-23 14:27:58] [INFO]   -> Found value: 02-23-2026T08:27:18
[2026-02-23 14:27:58] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T08:27:18
[2026-02-23 14:27:58] [ERROR] Error formatting datetime '2026-23-02T08:27:18': Failed to parse time string (2026-23-02T08:27:18) at position 6 (3): Unexpected character
[2026-02-23 14:27:58] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-23 14:27:58] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-23 14:27:58] [INFO]   -> No value found (null or empty)
[2026-02-23 14:27:58] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-23 14:27:58] [INFO]   -> Found value: SDPSFD
[2026-02-23 14:27:58] [INFO]   -> Set field 'cADAgencyIdentifier' = "SDPSFD"
[2026-02-23 14:27:58] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-23 14:27:58] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-23 14:27:58] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-05560","cADNumber":"26-05560","incidentLocationStreetNumber":217,"streetName":"N MAIN ST","incidentLocationCity":"SIKESTON","businessName":"LENDNATION","nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"FIRE-ALARM MECH","dispatchNotes":"02-23-2026 08:16:07|LENDNATION\nCARBON MONOXIDE DETECTOR GOING OFF\nDO NOT SMELL OR SEE ANYTHING\n 02-23-2026 08:25:51|ENG2 ADVISED L3 AND TWR1 TO CLEAR 02-23-2026 08:27:14|B49 ADVISED LOW BATTERY ON THE ALARM  ALL UNITS IN SERVICE","cADLog":"02-23-2026 08:16:07|LENDNATION\nCARBON MONOXIDE DETECTOR GOING OFF\nDO NOT SMELL OR SEE ANYTHING\n 02-23-2026 08:25:51|ENG2 ADVISED L3 AND TWR1 TO CLEAR 02-23-2026 08:27:14|B49 ADVISED LOW BATTERY ON THE ALARM  ALL UNITS IN SERVICE","alarm":null,"dispatched":null,"onScene":null,"cleared":null,"inService":null,"cADVehicleID":"ENG2","name":"ENG2","timeenroutetoscene":null,"timeonscene":null,"timeunitclear":null,"cADAgencyIdentifier":"SDPSFD","locationCoordinates":"0,0"}
[2026-02-23 14:27:58] [INFO] Number of extracted fields: 23
[2026-02-23 14:27:58] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SDPSFD'
[2026-02-23 14:27:58] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SDPSFD', Parsed IDs = ["SDPSFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-23 14:27:58] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SDPSFD"]
[2026-02-23 14:27:58] [INFO] Attempting SAASClient lookup for AgencyCode 'SDPSFD' (index 0) within mailbox's assigned agencies
[2026-02-23 14:27:58] [INFO] SUCCESS: Routed to agency 'Sikeston DPS' (ID: 6772cab7157b2ebde) at INDEX 0 based on AgencyCode 'SDPSFD'
[2026-02-23 14:27:58] [INFO] Fetched 4 stations from Stations module for agency 'Sikeston DPS': ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"]
[2026-02-23 14:27:58] [INFO] Final routing: saasclientId = 6772cab7157b2ebde, dispatchStationsIds = ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"], matchedAgencyIndex = 0
[2026-02-23 14:27:58] [INFO] Multi-agency routing matched mailbox default agency: 6772cab7157b2ebde (no update needed)
[2026-02-23 14:27:58] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e872e5ae13
[2026-02-23 14:28:00] [INFO] Created new Dispatches record with ID: 699c63ef50723f561
[2026-02-23 14:28:00] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-23
[2026-02-23 14:28:00] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-05560.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-23/SDPSFD_26-05560.xml
[2026-02-23 14:28:00] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-05560.xml
[2026-02-23 15:44:20] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020100_20260223_154420.XML
[2026-02-23 15:44:20] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020100_20260223_154420.XML for user: 68f1466aed072ad4a
[2026-02-23 15:44:20] [INFO] File size: 5265 bytes
[2026-02-23 15:44:20] [INFO] Created FTPFiles record with ID: 699c75d46629e0e7d
[2026-02-23 15:44:20] [INFO] About to extract fields from XML. File size: 5265 bytes
[2026-02-23 15:44:20] [INFO] Number of mappings: 28
[2026-02-23 15:44:20] [INFO] Starting XML parsing. Content length: 5265
[2026-02-23 15:44:20] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 15:44:20] [INFO] Processing 28 field mappings
[2026-02-23 15:44:20] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 15:44:20] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 15:44:20] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-23 15:44:20] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-02-23 15:44:20] [INFO]   -> Found value: PCFD
EMS
RESC
[2026-02-23 15:44:20] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nRESC"
[2026-02-23 15:44:20] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 15:44:20] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-02-23 15:44:20] [INFO]   -> Found value: 2026000514
[2026-02-23 15:44:20] [INFO]   -> Set field 'incidentInternalId' = "2026000514"
[2026-02-23 15:44:20] [INFO]   -> Set field 'dispatchRunNumber' = "2026000514"
[2026-02-23 15:44:20] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 15:44:20] [INFO]   -> Found value: FAINTING / SYNCOPE
[2026-02-23 15:44:20] [INFO]   -> Set field 'incidentTypeValue1' = "FAINTING \/ SYNCOPE"
[2026-02-23 15:44:20] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 15:44:20] [INFO]   -> Found value: 10350
[2026-02-23 15:44:20] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10350
[2026-02-23 15:44:20] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 15:44:20] [INFO]   -> Found value: TN
[2026-02-23 15:44:20] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 15:44:20] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 15:44:20] [INFO]   -> Found value: 38544
[2026-02-23 15:44:20] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38544
[2026-02-23 15:44:20] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 15:44:20] [INFO]   -> Found value: NEW HOME BAPTIST CHURCH
[2026-02-23 15:44:20] [INFO]   -> Set field 'businessName' = "NEW HOME BAPTIST CHURCH"
[2026-02-23 15:44:20] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 15:44:20] [INFO]   -> No value found (null or empty)
[2026-02-23 15:44:20] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 15:44:20] [INFO]   -> Found value: 36.12794
[2026-02-23 15:44:20] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.12794000000000238514985539950430393218994140625
[2026-02-23 15:44:20] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 15:44:20] [INFO]   -> Found value: -85.67903
[2026-02-23 15:44:20] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.6790299999999973579178913496434688568115234375
[2026-02-23 15:44:20] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 15:44:20] [INFO]   -> Found value: 2026-02-23 09:43:23
[2026-02-23 15:44:20] [INFO]   -> Set field 'alarm' = "2026-02-23 09:43:23"
[2026-02-23 15:44:20] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 15:44:20] [INFO]   -> Found value: 2026-02-23 09:44:10
[2026-02-23 15:44:20] [INFO]   -> Set field 'dispatched' = "2026-02-23 09:44:10"
[2026-02-23 15:44:20] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 15:44:20] [INFO]   -> No value found (null or empty)
[2026-02-23 15:44:20] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 15:44:20] [INFO]   -> No value found (null or empty)
[2026-02-23 15:44:20] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 15:44:20] [INFO]   -> No value found (null or empty)
[2026-02-23 15:44:20] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 15:44:20] [INFO]   -> Found value: VERGIE HARRIS RD/BOMA COMMUNITY CENTER RD
[2026-02-23 15:44:20] [INFO]   -> Set field 'incidentLocationCross' = "VERGIE HARRIS RD\/BOMA COMMUNITY CENTER RD"
[2026-02-23 15:44:20] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 15:44:20] [INFO]   -> Found value: PCFR
[2026-02-23 15:44:20] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-23 15:44:20] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 15:44:20] [INFO]   -> Found value: 2026-02-23 09:44:10
[2026-02-23 15:44:20] [INFO]   -> Set field 'timedispatch' = "2026-02-23 09:44:10"
[2026-02-23 15:44:20] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 15:44:20] [INFO]   -> No value found (null or empty)
[2026-02-23 15:44:20] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 15:44:20] [INFO]   -> No value found (null or empty)
[2026-02-23 15:44:20] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 15:44:20] [INFO]   -> No value found (null or empty)
[2026-02-23 15:44:20] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 15:44:20] [INFO]   -> No value found (null or empty)
[2026-02-23 15:44:20] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 15:44:20] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-02-23 15:44:20] [INFO]   -> Found value: 20260020100
[2026-02-23 15:44:20] [INFO]   -> Set field 'policeReportNumber' = "20260020100"
[2026-02-23 15:44:20] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 15:44:20] [INFO]   -> Found value: Event spawned from FAINTING / SYNCOPE.  [02/23/2026 09:43:23 KBEATY]
[2026-02-23 15:44:20] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from FAINTING \/ SYNCOPE.  [02\/23\/2026 09:43:23 KBEATY]"
[2026-02-23 15:44:20] [INFO]   -> Set field 'cADLog' = "Event spawned from FAINTING \/ SYNCOPE.  [02\/23\/2026 09:43:23 KBEATY]"
[2026-02-23 15:44:20] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 15:44:20] [INFO]   -> Found value: BAXTER
[2026-02-23 15:44:20] [INFO]   -> Set field 'incidentLocationCity' = "BAXTER"
[2026-02-23 15:44:20] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 15:44:20] [INFO]   -> Found value: OLD BAXTER
[2026-02-23 15:44:20] [INFO]   -> Set field 'streetName' = "OLD BAXTER"
[2026-02-23 15:44:20] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 15:44:20] [INFO]   -> Found value: RD
[2026-02-23 15:44:20] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-23 15:44:20] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 15:44:20] [INFO]   -> Found value: 10350 OLD BAXTER RD
[2026-02-23 15:44:20] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "10350 OLD BAXTER RD"
[2026-02-23 15:44:20] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-23 15:44:20] [INFO] Concatenating street name and type
[2026-02-23 15:44:20] [INFO]   -> Combined street name: OLD BAXTER RD
[2026-02-23 15:44:20] [INFO] Built locationCoordinates from lat/lng: 36.12794,-85.67903
[2026-02-23 15:44:20] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nRESC","incidentInternalId":"2026000514","dispatchRunNumber":"2026000514","incidentTypeValue1":"FAINTING \/ SYNCOPE","incidentLocationStreetNumber":10350,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38544,"businessName":"NEW HOME BAPTIST CHURCH","nERISIncidentLatitude":36.12794000000000238514985539950430393218994140625,"nERISIncidentLongitude":-85.6790299999999973579178913496434688568115234375,"alarm":"2026-02-23 09:43:23","dispatched":"2026-02-23 09:44:10","incidentLocationCross":"VERGIE HARRIS RD\/BOMA COMMUNITY CENTER RD","cADVehicleID":"PCFR","timedispatch":"2026-02-23 09:44:10","policeReportNumber":"20260020100","dispatchNotes":"Event spawned from FAINTING \/ SYNCOPE.  [02\/23\/2026 09:43:23 KBEATY]","cADLog":"Event spawned from FAINTING \/ SYNCOPE.  [02\/23\/2026 09:43:23 KBEATY]","incidentLocationCity":"BAXTER","streetName":"OLD BAXTER RD","incidentAddressTextVersionStreet":"10350 OLD BAXTER RD","locationCoordinates":"36.12794,-85.67903"}
[2026-02-23 15:44:20] [INFO] Number of extracted fields: 22
[2026-02-23 15:44:20] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
RESC'
[2026-02-23 15:44:20] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
RESC', Parsed IDs = ["PCFD","EMS","RESC"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 4
[2026-02-23 15:44:20] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","RESC"]
[2026-02-23 15:44:20] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-23 15:44:20] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-23 15:44:20] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","RESC"]
[2026-02-23 15:44:20] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-23 15:44:20] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-23 15:44:20] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-02-23 15:44:20] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-23 15:44:20] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-23 15:44:21] [INFO] Found existing IncidentTypeMapping with ID: 693861a57fd64f0b2
[2026-02-23 15:44:31] [INFO] Created new Dispatches record with ID: 699c75d56988fe5ea
[2026-02-23 15:44:31] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 15:44:31] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 15:44:31] [ERROR] PHP Error [WARNING]: ftp_login(): AUTH not understood in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 15:44:31] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020100_20260223_154420.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 15:44:31] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 17:28:00] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020144_20260223_172800.XML
[2026-02-23 17:28:00] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020144_20260223_172800.XML for user: 68f1466aed072ad4a
[2026-02-23 17:28:00] [INFO] File size: 5316 bytes
[2026-02-23 17:28:21] [INFO] Created FTPFiles record with ID: 699c8e351542a27b9
[2026-02-23 17:28:21] [INFO] About to extract fields from XML. File size: 5316 bytes
[2026-02-23 17:28:21] [INFO] Number of mappings: 28
[2026-02-23 17:28:21] [INFO] Starting XML parsing. Content length: 5316
[2026-02-23 17:28:21] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 17:28:21] [INFO] Processing 28 field mappings
[2026-02-23 17:28:21] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 17:28:21] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 17:28:21] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-23 17:28:21] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-02-23 17:28:21] [INFO]   -> Found value: PCFD
EMS
RESC
[2026-02-23 17:28:21] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nRESC"
[2026-02-23 17:28:21] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 17:28:21] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-02-23 17:28:21] [INFO]   -> Found value: 2026000515
[2026-02-23 17:28:21] [INFO]   -> Set field 'incidentInternalId' = "2026000515"
[2026-02-23 17:28:21] [INFO]   -> Set field 'dispatchRunNumber' = "2026000515"
[2026-02-23 17:28:21] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 17:28:21] [INFO]   -> Found value: MEDICAL CALL
[2026-02-23 17:28:21] [INFO]   -> Set field 'incidentTypeValue1' = "MEDICAL CALL"
[2026-02-23 17:28:21] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 17:28:21] [INFO]   -> Found value: 626
[2026-02-23 17:28:21] [INFO]   -> Set field 'incidentLocationStreetNumber' = 626
[2026-02-23 17:28:21] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 17:28:21] [INFO]   -> Found value: TN
[2026-02-23 17:28:21] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 17:28:21] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 17:28:21] [INFO]   -> Found value: 38574
[2026-02-23 17:28:21] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-02-23 17:28:21] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 17:28:21] [INFO]   -> Found value: 36.10778
[2026-02-23 17:28:21] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.10777999999999821056917426176369190216064453125
[2026-02-23 17:28:21] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 17:28:21] [INFO]   -> Found value: -85.16892
[2026-02-23 17:28:21] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1689199999999999590727384202182292938232421875
[2026-02-23 17:28:21] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 17:28:21] [INFO]   -> Found value: 2026-02-23 11:27:15
[2026-02-23 17:28:21] [INFO]   -> Set field 'alarm' = "2026-02-23 11:27:15"
[2026-02-23 17:28:21] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 17:28:21] [INFO]   -> Found value: 2026-02-23 11:27:58
[2026-02-23 17:28:21] [INFO]   -> Set field 'dispatched' = "2026-02-23 11:27:58"
[2026-02-23 17:28:21] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 17:28:21] [INFO]   -> Found value: CADE RD/HIGH FLATS RD
[2026-02-23 17:28:21] [INFO]   -> Set field 'incidentLocationCross' = "CADE RD\/HIGH FLATS RD"
[2026-02-23 17:28:21] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 17:28:21] [INFO]   -> Found value: PCFR
[2026-02-23 17:28:21] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-23 17:28:21] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 17:28:21] [INFO]   -> Found value: 2026-02-23 11:27:58
[2026-02-23 17:28:21] [INFO]   -> Set field 'timedispatch' = "2026-02-23 11:27:58"
[2026-02-23 17:28:21] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 17:28:21] [INFO]   -> No value found (null or empty)
[2026-02-23 17:28:21] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 17:28:21] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-02-23 17:28:21] [INFO]   -> Found value: 20260020144
[2026-02-23 17:28:21] [INFO]   -> Set field 'policeReportNumber' = "20260020144"
[2026-02-23 17:28:21] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 17:28:21] [INFO]   -> Found value: [EMS] REQUESTING EMERGENCY RESPONSE  [02/23/26 11:27:26 KHILL] Event spawned from SICK PERSON.  [02/...
[2026-02-23 17:28:21] [INFO]   -> Set field 'dispatchNotes' = "[EMS] REQUESTING EMERGENCY RESPONSE  [02\/23\/26 11:27:26 KHILL] Event spawned from SICK PERSON.  [02\/23\/2026 11:27:15 KHILL] THEODORE NORRIS   1\/24\/1934  [02\/23\/26 11:26:53 DSTEPHENS] PAIN IN LEFT SIDE  [02\/23\/26 11:26:24 DSTEPHENS]]"
[2026-02-23 17:28:21] [INFO]   -> Set field 'cADLog' = "[EMS] REQUESTING EMERGENCY RESPONSE  [02\/23\/26 11:27:26 KHILL] Event spawned from SICK PERSON.  [02\/23\/2026 11:27:15 KHILL] THEODORE NORRIS   1\/24\/1934  [02\/23\/26 11:26:53 DSTEPHENS] PAIN IN LEFT SIDE  [02\/23\/26 11:26:24 DSTEPHENS]]"
[2026-02-23 17:28:21] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 17:28:21] [INFO]   -> Found value: MONTEREY
[2026-02-23 17:28:21] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-02-23 17:28:21] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 17:28:21] [INFO]   -> Found value: TABLE TOP
[2026-02-23 17:28:21] [INFO]   -> Set field 'streetName' = "TABLE TOP"
[2026-02-23 17:28:21] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 17:28:21] [INFO]   -> Found value: RD
[2026-02-23 17:28:21] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-23 17:28:21] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 17:28:21] [INFO]   -> Found value: 626 TABLE TOP RD
[2026-02-23 17:28:21] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "626 TABLE TOP RD"
[2026-02-23 17:28:21] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-23 17:28:21] [INFO] Concatenating street name and type
[2026-02-23 17:28:21] [INFO]   -> Combined street name: TABLE TOP RD
[2026-02-23 17:28:21] [INFO] Built locationCoordinates from lat/lng: 36.10778,-85.16892
[2026-02-23 17:28:21] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nRESC","incidentInternalId":"2026000515","dispatchRunNumber":"2026000515","incidentTypeValue1":"MEDICAL CALL","incidentLocationStreetNumber":626,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"nERISIncidentLatitude":36.10777999999999821056917426176369190216064453125,"nERISIncidentLongitude":-85.1689199999999999590727384202182292938232421875,"alarm":"2026-02-23 11:27:15","dispatched":"2026-02-23 11:27:58","incidentLocationCross":"CADE RD\/HIGH FLATS RD","cADVehicleID":"PCFR","timedispatch":"2026-02-23 11:27:58","policeReportNumber":"20260020144","dispatchNotes":"[EMS] REQUESTING EMERGENCY RESPONSE  [02\/23\/26 11:27:26 KHILL] Event spawned from SICK PERSON.  [02\/23\/2026 11:27:15 KHILL] THEODORE NORRIS   1\/24\/1934  [02\/23\/26 11:26:53 DSTEPHENS] PAIN IN LEFT SIDE  [02\/23\/26 11:26:24 DSTEPHENS]]","cADLog":"[EMS] REQUESTING EMERGENCY RESPONSE  [02\/23\/26 11:27:26 KHILL] Event spawned from SICK PERSON.  [02\/23\/2026 11:27:15 KHILL] THEODORE NORRIS   1\/24\/1934  [02\/23\/26 11:26:53 DSTEPHENS] PAIN IN LEFT SIDE  [02\/23\/26 11:26:24 DSTEPHENS]]","incidentLocationCity":"MONTEREY","streetName":"TABLE TOP RD","incidentAddressTextVersionStreet":"626 TABLE TOP RD","locationCoordinates":"36.10778,-85.16892"}
[2026-02-23 17:28:21] [INFO] Number of extracted fields: 21
[2026-02-23 17:28:21] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
RESC'
[2026-02-23 17:28:21] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
RESC', Parsed IDs = ["PCFD","EMS","RESC"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 4
[2026-02-23 17:28:21] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","RESC"]
[2026-02-23 17:28:21] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-23 17:28:21] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-23 17:28:21] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","RESC"]
[2026-02-23 17:28:21] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-23 17:28:21] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-23 17:28:21] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-02-23 17:28:21] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-23 17:28:21] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-23 17:28:21] [INFO] Found existing IncidentTypeMapping with ID: 6939328c99c5522d2
[2026-02-23 17:28:32] [INFO] Created new Dispatches record with ID: 699c8e35ede8a0224
[2026-02-23 17:28:32] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 17:28:32] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 17:30:02] [ERROR] PHP Error [WARNING]: ftp_login(): Connection timed out in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 17:31:32] [ERROR] PHP Error [WARNING]: ftp_close(): Connection timed out in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1003
[2026-02-23 17:31:33] [ERROR] PHP Error [WARNING]: ftp_close(): Connection timed out in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1003
[2026-02-23 17:31:33] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020144_20260223_172800.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 17:31:33] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 18:08:09] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml
[2026-02-23 18:08:09] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml for user: 69320e6a9e3e5ef71
[2026-02-23 18:08:09] [INFO] File size: 14339 bytes
[2026-02-23 18:08:33] [INFO] Created FTPFiles record with ID: 699c97a119639e41e
[2026-02-23 18:08:33] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 18:08:33] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-012017.xml
[2026-02-23 18:08:33] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml
[2026-02-23 18:11:15] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml
[2026-02-23 18:11:15] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml for user: 69320e6a9e3e5ef71
[2026-02-23 18:11:15] [INFO] File size: 17527 bytes
[2026-02-23 18:11:33] [INFO] Created FTPFiles record with ID: 699c98552dc81c91b
[2026-02-23 18:11:33] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 18:11:33] [INFO] File already exists in archive, using unique name: cfs_2026-012017_1771870293.xml
[2026-02-23 18:11:33] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-012017_1771870293.xml
[2026-02-23 18:11:33] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml
[2026-02-23 18:12:50] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260020165_20260223_181250.XML
[2026-02-23 18:12:50] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260020165_20260223_181250.XML for user: 68f1466aed072ad4a
[2026-02-23 18:12:50] [INFO] File size: 5062 bytes
[2026-02-23 18:12:51] [INFO] Created FTPFiles record with ID: 699c98a322b296e76
[2026-02-23 18:12:51] [INFO] About to extract fields from XML. File size: 5062 bytes
[2026-02-23 18:12:51] [INFO] Number of mappings: 28
[2026-02-23 18:12:51] [INFO] Starting XML parsing. Content length: 5062
[2026-02-23 18:12:51] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 18:12:51] [INFO] Processing 28 field mappings
[2026-02-23 18:12:51] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 18:12:51] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 18:12:51] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-23 18:12:51] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-02-23 18:12:51] [INFO]   -> Found value: AFD
EMS
[2026-02-23 18:12:51] [INFO]   -> Set field 'cADAgencyIdentifier' = "AFD\nEMS"
[2026-02-23 18:12:51] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 18:12:51] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-02-23 18:12:51] [INFO]   -> Found value: 2026000085
[2026-02-23 18:12:51] [INFO]   -> Set field 'incidentInternalId' = "2026000085"
[2026-02-23 18:12:51] [INFO]   -> Set field 'dispatchRunNumber' = "2026000085"
[2026-02-23 18:12:51] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 18:12:51] [INFO]   -> Found value: DIABETIC PROBLEM
[2026-02-23 18:12:51] [INFO]   -> Set field 'incidentTypeValue1' = "DIABETIC PROBLEM"
[2026-02-23 18:12:51] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 18:12:51] [INFO]   -> Found value: 118
[2026-02-23 18:12:51] [INFO]   -> Set field 'incidentLocationStreetNumber' = 118
[2026-02-23 18:12:51] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 18:12:51] [INFO]   -> Found value: TN
[2026-02-23 18:12:51] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 18:12:51] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 18:12:51] [INFO]   -> Found value: 38506
[2026-02-23 18:12:51] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-23 18:12:51] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 18:12:51] [INFO]   -> Found value: 36.18356
[2026-02-23 18:12:51] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.18355999999999994543031789362430572509765625
[2026-02-23 18:12:51] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 18:12:51] [INFO]   -> Found value: -85.45447
[2026-02-23 18:12:51] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.4544700000000005957190296612679958343505859375
[2026-02-23 18:12:51] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 18:12:51] [INFO]   -> Found value: 2026-02-23 12:11:05
[2026-02-23 18:12:51] [INFO]   -> Set field 'alarm' = "2026-02-23 12:11:05"
[2026-02-23 18:12:51] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 18:12:51] [INFO]   -> Found value: 2026-02-23 12:12:35
[2026-02-23 18:12:51] [INFO]   -> Set field 'dispatched' = "2026-02-23 12:12:35"
[2026-02-23 18:12:51] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 18:12:51] [INFO]   -> Found value: COOPER RD/GRESHAM DR
[2026-02-23 18:12:51] [INFO]   -> Set field 'incidentLocationCross' = "COOPER RD\/GRESHAM DR"
[2026-02-23 18:12:51] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 18:12:51] [INFO]   -> Found value: AFR
[2026-02-23 18:12:51] [INFO]   -> Set field 'cADVehicleID' = "AFR"
[2026-02-23 18:12:51] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 18:12:51] [INFO]   -> Found value: 2026-02-23 12:12:35
[2026-02-23 18:12:51] [INFO]   -> Set field 'timedispatch' = "2026-02-23 12:12:35"
[2026-02-23 18:12:51] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 18:12:51] [INFO]   -> No value found (null or empty)
[2026-02-23 18:12:51] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 18:12:51] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-02-23 18:12:51] [INFO]   -> Found value: 20260020165
[2026-02-23 18:12:51] [INFO]   -> Set field 'policeReportNumber' = "20260020165"
[2026-02-23 18:12:51] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 18:12:51] [INFO]   -> Found value: [EMS] FRONT DOOR  [02/23/26 12:11:39 DSTEPHENS] Event spawned from DIABETIC PROBLEM.  [02/23/2026 12...
[2026-02-23 18:12:51] [INFO]   -> Set field 'dispatchNotes' = "[EMS] FRONT DOOR  [02\/23\/26 12:11:39 DSTEPHENS] Event spawned from DIABETIC PROBLEM.  [02\/23\/2026 12:11:05 DSTEPHENS] DAVID GREEN  [02\/23\/26 12:10:53 DSTEPHENS]"
[2026-02-23 18:12:51] [INFO]   -> Set field 'cADLog' = "[EMS] FRONT DOOR  [02\/23\/26 12:11:39 DSTEPHENS] Event spawned from DIABETIC PROBLEM.  [02\/23\/2026 12:11:05 DSTEPHENS] DAVID GREEN  [02\/23\/26 12:10:53 DSTEPHENS]"
[2026-02-23 18:12:51] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 18:12:51] [INFO]   -> Found value: ALGOOD
[2026-02-23 18:12:51] [INFO]   -> Set field 'incidentLocationCity' = "ALGOOD"
[2026-02-23 18:12:51] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 18:12:51] [INFO]   -> Found value: BOWMAN
[2026-02-23 18:12:51] [INFO]   -> Set field 'streetName' = "BOWMAN"
[2026-02-23 18:12:51] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 18:12:51] [INFO]   -> Found value: ST
[2026-02-23 18:12:51] [INFO]   -> Set field 'streetType' = "ST"
[2026-02-23 18:12:51] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 18:12:51] [INFO]   -> Found value: 118 BOWMAN ST
[2026-02-23 18:12:51] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "118 BOWMAN ST"
[2026-02-23 18:12:51] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-23 18:12:51] [INFO] Concatenating street name and type
[2026-02-23 18:12:51] [INFO]   -> Combined street name: BOWMAN ST
[2026-02-23 18:12:51] [INFO] Built locationCoordinates from lat/lng: 36.18356,-85.45447
[2026-02-23 18:12:51] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"AFD\nEMS","incidentInternalId":"2026000085","dispatchRunNumber":"2026000085","incidentTypeValue1":"DIABETIC PROBLEM","incidentLocationStreetNumber":118,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.18355999999999994543031789362430572509765625,"nERISIncidentLongitude":-85.4544700000000005957190296612679958343505859375,"alarm":"2026-02-23 12:11:05","dispatched":"2026-02-23 12:12:35","incidentLocationCross":"COOPER RD\/GRESHAM DR","cADVehicleID":"AFR","timedispatch":"2026-02-23 12:12:35","policeReportNumber":"20260020165","dispatchNotes":"[EMS] FRONT DOOR  [02\/23\/26 12:11:39 DSTEPHENS] Event spawned from DIABETIC PROBLEM.  [02\/23\/2026 12:11:05 DSTEPHENS] DAVID GREEN  [02\/23\/26 12:10:53 DSTEPHENS]","cADLog":"[EMS] FRONT DOOR  [02\/23\/26 12:11:39 DSTEPHENS] Event spawned from DIABETIC PROBLEM.  [02\/23\/2026 12:11:05 DSTEPHENS] DAVID GREEN  [02\/23\/26 12:10:53 DSTEPHENS]","incidentLocationCity":"ALGOOD","streetName":"BOWMAN ST","incidentAddressTextVersionStreet":"118 BOWMAN ST","locationCoordinates":"36.18356,-85.45447"}
[2026-02-23 18:12:51] [INFO] Number of extracted fields: 21
[2026-02-23 18:12:51] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'AFD
EMS'
[2026-02-23 18:12:51] [INFO] Multi-agency routing check: CAD Agency ID raw = 'AFD
EMS', Parsed IDs = ["AFD","EMS"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-02-23 18:12:51] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["AFD","EMS"]
[2026-02-23 18:12:51] [INFO] Attempting SAASClient lookup for AgencyCode 'AFD' (index 0) within mailbox's assigned agencies
[2026-02-23 18:12:51] [INFO] SUCCESS: Routed to agency 'Algood Fire Department' (ID: 68910627445d6e167) at INDEX 0 based on AgencyCode 'AFD'
[2026-02-23 18:12:51] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS"]
[2026-02-23 18:13:06] [INFO] Fetched 1 stations from Stations module for agency 'Algood Fire Department': ["68922bda7fe89f7ff"]
[2026-02-23 18:13:06] [INFO] Final routing: saasclientId = 68910627445d6e167, dispatchStationsIds = ["68922bda7fe89f7ff"], matchedAgencyIndex = 0
[2026-02-23 18:13:06] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-23 18:13:06] [INFO] Filtered cADAgencyIdentifier to: AFD
[2026-02-23 18:13:06] [INFO] Updated FTPFiles record saasclientId to routed agency: 68910627445d6e167
[2026-02-23 18:13:06] [INFO] Found existing IncidentTypeMapping with ID: 698674da00d3dd81f
[2026-02-23 18:13:12] [INFO] Created new Dispatches record with ID: 699c98b335313192c
[2026-02-23 18:13:12] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 18:13:12] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 18:13:12] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260020165_20260223_181250.XML: Failed to connect to V2 FTP server: alerts.stationboss.net
[2026-02-23 18:13:12] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:998
[2026-02-23 18:15:24] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml
[2026-02-23 18:15:24] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml for user: 69320e6a9e3e5ef71
[2026-02-23 18:15:24] [INFO] File size: 18476 bytes
[2026-02-23 18:15:51] [INFO] Created FTPFiles record with ID: 699c9957be2bc5014
[2026-02-23 18:15:51] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-23 18:15:51] [INFO] File already exists in archive, using unique name: cfs_2026-012017_1771870551.xml
[2026-02-23 18:15:51] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-23/cfs_2026-012017_1771870551.xml
[2026-02-23 18:15:51] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-012017.xml
[2026-02-23 19:32:36] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020202_20260223_193236.XML
[2026-02-23 19:32:36] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020202_20260223_193236.XML for user: 68f1466aed072ad4a
[2026-02-23 19:32:36] [INFO] File size: 4707 bytes
[2026-02-23 19:32:37] [INFO] Created FTPFiles record with ID: 699cab5526a031bfb
[2026-02-23 19:32:37] [INFO] About to extract fields from XML. File size: 4707 bytes
[2026-02-23 19:32:37] [INFO] Number of mappings: 28
[2026-02-23 19:32:37] [INFO] Starting XML parsing. Content length: 4707
[2026-02-23 19:32:37] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-23 19:32:37] [INFO] Processing 28 field mappings
[2026-02-23 19:32:37] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-23 19:32:37] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-23 19:32:37] [INFO]   -> Found value: PCFD
[2026-02-23 19:32:37] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD"
[2026-02-23 19:32:37] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-23 19:32:37] [INFO]   -> Found value: 2026000516
[2026-02-23 19:32:37] [INFO]   -> Set field 'incidentInternalId' = "2026000516"
[2026-02-23 19:32:37] [INFO]   -> Set field 'dispatchRunNumber' = "2026000516"
[2026-02-23 19:32:37] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-23 19:32:37] [INFO]   -> Found value: SMOKE ALARM INSTALL
[2026-02-23 19:32:37] [INFO]   -> Set field 'incidentTypeValue1' = "SMOKE ALARM INSTALL"
[2026-02-23 19:32:37] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-23 19:32:37] [INFO]   -> Found value: 6205
[2026-02-23 19:32:37] [INFO]   -> Set field 'incidentLocationStreetNumber' = 6205
[2026-02-23 19:32:37] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-23 19:32:37] [INFO]   -> Found value: TN
[2026-02-23 19:32:37] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-23 19:32:37] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-23 19:32:37] [INFO]   -> Found value: 38582
[2026-02-23 19:32:37] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38582
[2026-02-23 19:32:37] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-23 19:32:37] [INFO]   -> No value found (null or empty)
[2026-02-23 19:32:37] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-23 19:32:37] [INFO]   -> No value found (null or empty)
[2026-02-23 19:32:37] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-23 19:32:37] [INFO]   -> Found value: 36.09528
[2026-02-23 19:32:37] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.09528000000000247382558882236480712890625
[2026-02-23 19:32:37] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-23 19:32:37] [INFO]   -> Found value: -85.70432
[2026-02-23 19:32:37] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.70431999999999561623553745448589324951171875
[2026-02-23 19:32:37] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-23 19:32:37] [INFO]   -> Found value: 2026-02-23 13:31:31
[2026-02-23 19:32:37] [INFO]   -> Set field 'alarm' = "2026-02-23 13:31:31"
[2026-02-23 19:32:37] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-23 19:32:37] [INFO]   -> Found value: 2026-02-23 13:32:30
[2026-02-23 19:32:37] [INFO]   -> Set field 'dispatched' = "2026-02-23 13:32:30"
[2026-02-23 19:32:37] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-23 19:32:37] [INFO]   -> Found value: 2026-02-23 13:32:30
[2026-02-23 19:32:37] [INFO]   -> Set field 'enroute' = "2026-02-23 13:32:30"
[2026-02-23 19:32:37] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-23 19:32:37] [INFO]   -> Found value: 2026-02-23 13:32:30
[2026-02-23 19:32:37] [INFO]   -> Set field 'onScene' = "2026-02-23 13:32:30"
[2026-02-23 19:32:37] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-23 19:32:37] [INFO]   -> No value found (null or empty)
[2026-02-23 19:32:37] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-23 19:32:37] [INFO]   -> Found value: CARRS CHAPEL RD
[2026-02-23 19:32:37] [INFO]   -> Set field 'incidentLocationCross' = "CARRS CHAPEL RD"
[2026-02-23 19:32:37] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-23 19:32:37] [INFO]   -> Found value: TK31
[2026-02-23 19:32:37] [INFO]   -> Set field 'cADVehicleID' = "TK31"
[2026-02-23 19:32:37] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-23 19:32:37] [INFO]   -> Found value: 2026-02-23 13:32:30
[2026-02-23 19:32:37] [INFO]   -> Set field 'timedispatch' = "2026-02-23 13:32:30"
[2026-02-23 19:32:37] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-23 19:32:37] [INFO]   -> Found value: 2026-02-23 13:32:30
[2026-02-23 19:32:37] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-23 13:32:30"
[2026-02-23 19:32:37] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-23 19:32:37] [INFO]   -> Found value: 2026-02-23 13:32:30
[2026-02-23 19:32:37] [INFO]   -> Set field 'timeonscene' = "2026-02-23 13:32:30"
[2026-02-23 19:32:37] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-23 19:32:37] [INFO]   -> No value found (null or empty)
[2026-02-23 19:32:37] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-23 19:32:37] [INFO]   -> No value found (null or empty)
[2026-02-23 19:32:37] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-23 19:32:37] [INFO]   -> Found value: 20260020202
[2026-02-23 19:32:37] [INFO]   -> Set field 'policeReportNumber' = "20260020202"
[2026-02-23 19:32:37] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-23 19:32:37] [INFO]   -> No value found (null or empty)
[2026-02-23 19:32:37] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-23 19:32:37] [INFO]   -> Found value: SILVER POINT
[2026-02-23 19:32:37] [INFO]   -> Set field 'incidentLocationCity' = "SILVER POINT"
[2026-02-23 19:32:37] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-23 19:32:37] [INFO]   -> Found value: TONCE CARTER
[2026-02-23 19:32:37] [INFO]   -> Set field 'streetName' = "TONCE CARTER"
[2026-02-23 19:32:37] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-23 19:32:37] [INFO]   -> Found value: RD
[2026-02-23 19:32:37] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-23 19:32:37] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-23 19:32:37] [INFO]   -> Found value: 6205 TONCE CARTER RD
[2026-02-23 19:32:37] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "6205 TONCE CARTER RD"
[2026-02-23 19:32:37] [INFO] Finished extracting fields. Total fields extracted: 23
[2026-02-23 19:32:37] [INFO] Concatenating street name and type
[2026-02-23 19:32:37] [INFO]   -> Combined street name: TONCE CARTER RD
[2026-02-23 19:32:37] [INFO] Built locationCoordinates from lat/lng: 36.09528,-85.70432
[2026-02-23 19:32:37] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD","incidentInternalId":"2026000516","dispatchRunNumber":"2026000516","incidentTypeValue1":"SMOKE ALARM INSTALL","incidentLocationStreetNumber":6205,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38582,"nERISIncidentLatitude":36.09528000000000247382558882236480712890625,"nERISIncidentLongitude":-85.70431999999999561623553745448589324951171875,"alarm":"2026-02-23 13:31:31","dispatched":"2026-02-23 13:32:30","enroute":"2026-02-23 13:32:30","onScene":"2026-02-23 13:32:30","incidentLocationCross":"CARRS CHAPEL RD","cADVehicleID":"TK31","timedispatch":"2026-02-23 13:32:30","timeenroutetoscene":"2026-02-23 13:32:30","timeonscene":"2026-02-23 13:32:30","policeReportNumber":"20260020202","incidentLocationCity":"SILVER POINT","streetName":"TONCE CARTER RD","incidentAddressTextVersionStreet":"6205 TONCE CARTER RD","locationCoordinates":"36.09528,-85.70432"}
[2026-02-23 19:32:37] [INFO] Number of extracted fields: 23
[2026-02-23 19:32:37] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD'
[2026-02-23 19:32:37] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD', Parsed IDs = ["PCFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 4
[2026-02-23 19:32:37] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD"]
[2026-02-23 19:32:37] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-23 19:32:37] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-23 19:32:37] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-23 19:32:37] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-23 19:32:37] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-23 19:32:37] [INFO] Found existing IncidentTypeMapping with ID: 69384adcd7833eaa3
[2026-02-23 19:32:48] [INFO] Created new Dispatches record with ID: 699cab5606541ef64
[2026-02-23 19:32:48] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 19:32:49] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 19:32:52] [ERROR] PHP Error [WARNING]: ftp_login(): Login incorrect. in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1002
[2026-02-23 19:32:52] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260020202_20260223_193236.XML: Failed to login to V2 FTP server with username: f1bbfaea-7d70-4d6c-9b17-a1712a36552e@alerts.stationboss.net
[2026-02-23 19:32:52] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1004
[2026-02-23 19:50:21] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-05588.xml
[2026-02-23 19:50:21] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-05588.xml for user: 68d56363ec1209189
[2026-02-23 19:50:21] [INFO] File size: 3776 bytes
[2026-02-23 19:50:22] [INFO] Created FTPFiles record with ID: 699caf7e0409fa034
[2026-02-23 19:50:22] [INFO] About to extract fields from XML. File size: 3776 bytes
[2026-02-23 19:50:22] [INFO] Number of mappings: 21
[2026-02-23 19:50:22] [INFO] Starting XML parsing. Content length: 3776
[2026-02-23 19:50:22] [INFO] XML parsed successfully. Root element: Incident
[2026-02-23 19:50:22] [INFO] Processing 21 field mappings
[2026-02-23 19:50:22] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-23 19:50:22] [INFO]   -> Found value: 26-05588
[2026-02-23 19:50:22] [INFO]   -> Set field 'dispatchRunNumber' = "26-05588"
[2026-02-23 19:50:22] [INFO]   -> Set field 'cADNumber' = "26-05588"
[2026-02-23 19:50:22] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-23 19:50:22] [INFO]   -> No value found (null or empty)
[2026-02-23 19:50:22] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-23 19:50:22] [INFO]   -> Found value: I55 SB 69.8MM
[2026-02-23 19:50:22] [INFO]   -> Set field 'streetName' = "I55 SB 69.8MM"
[2026-02-23 19:50:22] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-23 19:50:22] [INFO]   -> No value found (null or empty)
[2026-02-23 19:50:22] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-23 19:50:22] [INFO]   -> No value found (null or empty)
[2026-02-23 19:50:22] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-23 19:50:22] [INFO]   -> No value found (null or empty)
[2026-02-23 19:50:22] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-23 19:50:22] [INFO]   -> No value found (null or empty)
[2026-02-23 19:50:22] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-23 19:50:22] [INFO]   -> No value found (null or empty)
[2026-02-23 19:50:22] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-23 19:50:22] [INFO]   -> Found value: 0
[2026-02-23 19:50:22] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-23 19:50:22] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-23 19:50:22] [INFO]   -> Found value: 0
[2026-02-23 19:50:22] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-23 19:50:22] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-23 19:50:22] [INFO]   -> Found value: MOTOR VEHICLE ACCIDENT
[2026-02-23 19:50:22] [INFO]   -> Set field 'incidentTypeValue1' = "MOTOR VEHICLE ACCIDENT"
[2026-02-23 19:50:22] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-23 19:50:22] [INFO]   -> Found value: 02-23-2026 12:53:49|GOLD COLORED SUV RAN OFF THE ROADWAY INTO THE MEDIAN 
BELIEVE SOMEONE INSIDE THE...
[2026-02-23 19:50:22] [INFO]   -> Set field 'dispatchNotes' = "02-23-2026 12:53:49|GOLD COLORED SUV RAN OFF THE ROADWAY INTO THE MEDIAN \nBELIEVE SOMEONE INSIDE THE VEHICLE\nUNKNOWN INJURIES\nROADWAY NOT BLOCKED\n\nCALLER WAS A PASSERBY\nMSHP ADVISED\n\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: CAR HIT MEDIAN\nAIRBAG DEPLOYED\nSMALLER SUV BROWNISH\nUNKNOWN INJURIES\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: CALLER REQUESTING EMS 02-23-2026 12:57:46|*Transferred from Event # 26-05587: RP STATES THAT SHE IS DRIVING A TAN CHEV EQU 02-23-2026 12:57:46|*Transferred from Event # 26-05587: D120 SPOKE WITH THE DRIVER OF THE VEH 02-23-2026 12:57:46|*Transferred from Event # 26-05587: ****** Appended notes from Work Area begin ******\nAddress: I-55 Intersection: 69.8MM SB\nCategory: 911 MULTIPLE CALLS Priority: 1\nSector: 3 Source: E911 \nOpened DateTime: 02\/23\/2026 12:54:29\nNotes: LOOKS LIKE A BROWN CHEVY SUV\nUNKNOWN NUMBER OF PASSENGERS\n****** Appended notes from Work Area end   ******\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: MSHP ADVISED 02-23-2026 12:59:11|1765 EN ROUTE X2 02-23-2026 13:00:45|1501 RESPONDING 02-23-2026 13:01:10|1707 EN ROUTE TO STATION 2 02-23-2026 13:01:10|****** Appended notes from Work Area begin ******\nAddress: I-55 Intersection: SB MM 69.8\nCategory: 911 MULTIPLE CALLS Priority: 1\nSector: 3 Source: E911 \nOpened DateTime: 02\/23\/2026 12:59:50\nNotes: CAR IN SIDERAIL\nUNKNOWN PASSENGERS\nALL AIRBAGS WERE BLOWN\n\n****** Appended notes from Work Area end   ******\n 02-23-2026 13:02:03|349 REQUESTING MINER OFFICER TO RESPOND TIL MSHP ARRIVES 02-23-2026 13:02:33|MINER HAS UNIT EN ROUTE 02-23-2026 13:03:08|1765 ADVISED SINGLE VEH ACCIDENT PASSING LANE WILL BE SHUT DOWN VEH IN THE CABLES 02-23-2026 13:06:31|1752 EN ROUTE X1 02-23-2026 13:25:10|SSCA OBTAINING A REFUSAL 02-23-2026 13:25:39|1501 CLEARING THE SCENE 02-23-2026 13:27:56|Disposition - Scott County S.O. (MO):  NRN"
[2026-02-23 19:50:22] [INFO]   -> Set field 'cADLog' = "02-23-2026 12:53:49|GOLD COLORED SUV RAN OFF THE ROADWAY INTO THE MEDIAN \nBELIEVE SOMEONE INSIDE THE VEHICLE\nUNKNOWN INJURIES\nROADWAY NOT BLOCKED\n\nCALLER WAS A PASSERBY\nMSHP ADVISED\n\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: CAR HIT MEDIAN\nAIRBAG DEPLOYED\nSMALLER SUV BROWNISH\nUNKNOWN INJURIES\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: CALLER REQUESTING EMS 02-23-2026 12:57:46|*Transferred from Event # 26-05587: RP STATES THAT SHE IS DRIVING A TAN CHEV EQU 02-23-2026 12:57:46|*Transferred from Event # 26-05587: D120 SPOKE WITH THE DRIVER OF THE VEH 02-23-2026 12:57:46|*Transferred from Event # 26-05587: ****** Appended notes from Work Area begin ******\nAddress: I-55 Intersection: 69.8MM SB\nCategory: 911 MULTIPLE CALLS Priority: 1\nSector: 3 Source: E911 \nOpened DateTime: 02\/23\/2026 12:54:29\nNotes: LOOKS LIKE A BROWN CHEVY SUV\nUNKNOWN NUMBER OF PASSENGERS\n****** Appended notes from Work Area end   ******\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: MSHP ADVISED 02-23-2026 12:59:11|1765 EN ROUTE X2 02-23-2026 13:00:45|1501 RESPONDING 02-23-2026 13:01:10|1707 EN ROUTE TO STATION 2 02-23-2026 13:01:10|****** Appended notes from Work Area begin ******\nAddress: I-55 Intersection: SB MM 69.8\nCategory: 911 MULTIPLE CALLS Priority: 1\nSector: 3 Source: E911 \nOpened DateTime: 02\/23\/2026 12:59:50\nNotes: CAR IN SIDERAIL\nUNKNOWN PASSENGERS\nALL AIRBAGS WERE BLOWN\n\n****** Appended notes from Work Area end   ******\n 02-23-2026 13:02:03|349 REQUESTING MINER OFFICER TO RESPOND TIL MSHP ARRIVES 02-23-2026 13:02:33|MINER HAS UNIT EN ROUTE 02-23-2026 13:03:08|1765 ADVISED SINGLE VEH ACCIDENT PASSING LANE WILL BE SHUT DOWN VEH IN THE CABLES 02-23-2026 13:06:31|1752 EN ROUTE X1 02-23-2026 13:25:10|SSCA OBTAINING A REFUSAL 02-23-2026 13:25:39|1501 CLEARING THE SCENE 02-23-2026 13:27:56|Disposition - Scott County S.O. (MO):  NRN"
[2026-02-23 19:50:22] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-23 19:50:22] [INFO]   -> Found value: 02-23-2026T12:58:00
[2026-02-23 19:50:22] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T12:58:00
[2026-02-23 19:50:22] [ERROR] Error formatting datetime '2026-23-02T12:58:00': Failed to parse time string (2026-23-02T12:58:00) at position 6 (3): Unexpected character
[2026-02-23 19:50:22] [INFO]   -> Set field 'alarm' = null
[2026-02-23 19:50:22] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T12:58:00
[2026-02-23 19:50:22] [ERROR] Error formatting datetime '2026-23-02T12:58:00': Failed to parse time string (2026-23-02T12:58:00) at position 6 (3): Unexpected character
[2026-02-23 19:50:22] [INFO]   -> Set field 'dispatched' = null
[2026-02-23 19:50:22] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-23 19:50:22] [INFO]   -> Found value: 02-23-2026T13:02:35
[2026-02-23 19:50:22] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T13:02:35
[2026-02-23 19:50:22] [ERROR] Error formatting datetime '2026-23-02T13:02:35': Failed to parse time string (2026-23-02T13:02:35) at position 6 (3): Unexpected character
[2026-02-23 19:50:22] [INFO]   -> Set field 'onScene' = null
[2026-02-23 19:50:22] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-23 19:50:22] [INFO]   -> Found value: 02-23-2026T13:49:42
[2026-02-23 19:50:22] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T13:49:42
[2026-02-23 19:50:22] [ERROR] Error formatting datetime '2026-23-02T13:49:42': Failed to parse time string (2026-23-02T13:49:42) at position 6 (3): Unexpected character
[2026-02-23 19:50:22] [INFO]   -> Set field 'cleared' = null
[2026-02-23 19:50:22] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T13:49:42
[2026-02-23 19:50:22] [ERROR] Error formatting datetime '2026-23-02T13:49:42': Failed to parse time string (2026-23-02T13:49:42) at position 6 (3): Unexpected character
[2026-02-23 19:50:22] [INFO]   -> Set field 'inService' = null
[2026-02-23 19:50:22] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-23 19:50:22] [INFO]   -> Found value: 1752
[2026-02-23 19:50:22] [INFO]   -> Set field 'cADVehicleID' = 1752
[2026-02-23 19:50:22] [INFO]   -> Set field 'name' = "1752"
[2026-02-23 19:50:22] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-23 19:50:22] [INFO]   -> Found value: 02-23-2026T13:06:43
[2026-02-23 19:50:22] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T13:06:43
[2026-02-23 19:50:22] [ERROR] Error formatting datetime '2026-23-02T13:06:43': Failed to parse time string (2026-23-02T13:06:43) at position 6 (3): Unexpected character
[2026-02-23 19:50:22] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-02-23 19:50:22] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-23 19:50:22] [INFO]   -> No value found (null or empty)
[2026-02-23 19:50:22] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-23 19:50:22] [INFO]   -> Found value: 02-23-2026T13:23:20
[2026-02-23 19:50:22] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T13:23:20
[2026-02-23 19:50:22] [ERROR] Error formatting datetime '2026-23-02T13:23:20': Failed to parse time string (2026-23-02T13:23:20) at position 6 (3): Unexpected character
[2026-02-23 19:50:22] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-23 19:50:22] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-23 19:50:22] [INFO]   -> Found value: 02-23-2026T13:06:41
[2026-02-23 19:50:22] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T13:06:41
[2026-02-23 19:50:22] [ERROR] Error formatting datetime '2026-23-02T13:06:41': Failed to parse time string (2026-23-02T13:06:41) at position 6 (3): Unexpected character
[2026-02-23 19:50:22] [INFO]   -> Set field 'timedispatch' = null
[2026-02-23 19:50:22] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-23 19:50:22] [INFO]   -> Found value: SCRFD
[2026-02-23 19:50:22] [INFO]   -> Set field 'cADAgencyIdentifier' = "SCRFD"
[2026-02-23 19:50:22] [INFO] Finished extracting fields. Total fields extracted: 19
[2026-02-23 19:50:22] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-23 19:50:22] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-05588","cADNumber":"26-05588","streetName":"I55 SB 69.8MM","nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"MOTOR VEHICLE ACCIDENT","dispatchNotes":"02-23-2026 12:53:49|GOLD COLORED SUV RAN OFF THE ROADWAY INTO THE MEDIAN \nBELIEVE SOMEONE INSIDE THE VEHICLE\nUNKNOWN INJURIES\nROADWAY NOT BLOCKED\n\nCALLER WAS A PASSERBY\nMSHP ADVISED\n\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: CAR HIT MEDIAN\nAIRBAG DEPLOYED\nSMALLER SUV BROWNISH\nUNKNOWN INJURIES\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: CALLER REQUESTING EMS 02-23-2026 12:57:46|*Transferred from Event # 26-05587: RP STATES THAT SHE IS DRIVING A TAN CHEV EQU 02-23-2026 12:57:46|*Transferred from Event # 26-05587: D120 SPOKE WITH THE DRIVER OF THE VEH 02-23-2026 12:57:46|*Transferred from Event # 26-05587: ****** Appended notes from Work Area begin ******\nAddress: I-55 Intersection: 69.8MM SB\nCategory: 911 MULTIPLE CALLS Priority: 1\nSector: 3 Source: E911 \nOpened DateTime: 02\/23\/2026 12:54:29\nNotes: LOOKS LIKE A BROWN CHEVY SUV\nUNKNOWN NUMBER OF PASSENGERS\n****** Appended notes from Work Area end   ******\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: MSHP ADVISED 02-23-2026 12:59:11|1765 EN ROUTE X2 02-23-2026 13:00:45|1501 RESPONDING 02-23-2026 13:01:10|1707 EN ROUTE TO STATION 2 02-23-2026 13:01:10|****** Appended notes from Work Area begin ******\nAddress: I-55 Intersection: SB MM 69.8\nCategory: 911 MULTIPLE CALLS Priority: 1\nSector: 3 Source: E911 \nOpened DateTime: 02\/23\/2026 12:59:50\nNotes: CAR IN SIDERAIL\nUNKNOWN PASSENGERS\nALL AIRBAGS WERE BLOWN\n\n****** Appended notes from Work Area end   ******\n 02-23-2026 13:02:03|349 REQUESTING MINER OFFICER TO RESPOND TIL MSHP ARRIVES 02-23-2026 13:02:33|MINER HAS UNIT EN ROUTE 02-23-2026 13:03:08|1765 ADVISED SINGLE VEH ACCIDENT PASSING LANE WILL BE SHUT DOWN VEH IN THE CABLES 02-23-2026 13:06:31|1752 EN ROUTE X1 02-23-2026 13:25:10|SSCA OBTAINING A REFUSAL 02-23-2026 13:25:39|1501 CLEARING THE SCENE 02-23-2026 13:27:56|Disposition - Scott County S.O. (MO):  NRN","cADLog":"02-23-2026 12:53:49|GOLD COLORED SUV RAN OFF THE ROADWAY INTO THE MEDIAN \nBELIEVE SOMEONE INSIDE THE VEHICLE\nUNKNOWN INJURIES\nROADWAY NOT BLOCKED\n\nCALLER WAS A PASSERBY\nMSHP ADVISED\n\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: CAR HIT MEDIAN\nAIRBAG DEPLOYED\nSMALLER SUV BROWNISH\nUNKNOWN INJURIES\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: CALLER REQUESTING EMS 02-23-2026 12:57:46|*Transferred from Event # 26-05587: RP STATES THAT SHE IS DRIVING A TAN CHEV EQU 02-23-2026 12:57:46|*Transferred from Event # 26-05587: D120 SPOKE WITH THE DRIVER OF THE VEH 02-23-2026 12:57:46|*Transferred from Event # 26-05587: ****** Appended notes from Work Area begin ******\nAddress: I-55 Intersection: 69.8MM SB\nCategory: 911 MULTIPLE CALLS Priority: 1\nSector: 3 Source: E911 \nOpened DateTime: 02\/23\/2026 12:54:29\nNotes: LOOKS LIKE A BROWN CHEVY SUV\nUNKNOWN NUMBER OF PASSENGERS\n****** Appended notes from Work Area end   ******\n 02-23-2026 12:57:46|*Transferred from Event # 26-05587: MSHP ADVISED 02-23-2026 12:59:11|1765 EN ROUTE X2 02-23-2026 13:00:45|1501 RESPONDING 02-23-2026 13:01:10|1707 EN ROUTE TO STATION 2 02-23-2026 13:01:10|****** Appended notes from Work Area begin ******\nAddress: I-55 Intersection: SB MM 69.8\nCategory: 911 MULTIPLE CALLS Priority: 1\nSector: 3 Source: E911 \nOpened DateTime: 02\/23\/2026 12:59:50\nNotes: CAR IN SIDERAIL\nUNKNOWN PASSENGERS\nALL AIRBAGS WERE BLOWN\n\n****** Appended notes from Work Area end   ******\n 02-23-2026 13:02:03|349 REQUESTING MINER OFFICER TO RESPOND TIL MSHP ARRIVES 02-23-2026 13:02:33|MINER HAS UNIT EN ROUTE 02-23-2026 13:03:08|1765 ADVISED SINGLE VEH ACCIDENT PASSING LANE WILL BE SHUT DOWN VEH IN THE CABLES 02-23-2026 13:06:31|1752 EN ROUTE X1 02-23-2026 13:25:10|SSCA OBTAINING A REFUSAL 02-23-2026 13:25:39|1501 CLEARING THE SCENE 02-23-2026 13:27:56|Disposition - Scott County S.O. (MO):  NRN","alarm":null,"dispatched":null,"onScene":null,"cleared":null,"inService":null,"cADVehicleID":1752,"name":"1752","timeenroutetoscene":null,"timeunitclear":null,"timedispatch":null,"cADAgencyIdentifier":"SCRFD","locationCoordinates":"0,0"}
[2026-02-23 19:50:22] [INFO] Number of extracted fields: 20
[2026-02-23 19:50:22] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SCRFD'
[2026-02-23 19:50:22] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SCRFD', Parsed IDs = ["SCRFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-23 19:50:22] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SCRFD"]
[2026-02-23 19:50:22] [INFO] Attempting SAASClient lookup for AgencyCode 'SCRFD' (index 0) within mailbox's assigned agencies
[2026-02-23 19:50:22] [INFO] SUCCESS: Routed to agency 'Scott County Rural Fire Protection District' (ID: 6643bdb30659f00d8) at INDEX 0 based on AgencyCode 'SCRFD'
[2026-02-23 19:50:22] [INFO] Fetched 6 stations from Stations module for agency 'Scott County Rural Fire Protection District': ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"]
[2026-02-23 19:50:22] [INFO] Final routing: saasclientId = 6643bdb30659f00d8, dispatchStationsIds = ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"], matchedAgencyIndex = 0
[2026-02-23 19:50:22] [INFO] Updated FTPFiles record saasclientId to routed agency: 6643bdb30659f00d8
[2026-02-23 19:50:22] [INFO] Found existing IncidentTypeMapping with ID: 69570b3e5a7af67f0
[2026-02-23 19:50:34] [INFO] Created new Dispatches record with ID: 699caf7f1a6039b90
[2026-02-23 19:50:34] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-05588.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-23/SCRFD_26-05588.xml
[2026-02-23 19:50:34] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-05588.xml
[2026-02-23 20:13:45] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/6662f407dd1aaea6c/testfile_20250930.xml
[2026-02-23 20:13:45] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/6662f407dd1aaea6c/testfile_20250930.xml for user: 6662f407dd1aaea6c
[2026-02-23 20:13:45] [INFO] File size: 25244 bytes
[2026-02-23 20:14:01] [INFO] Created FTPFiles record with ID: 699cb509aff7e7662
[2026-02-23 20:14:01] [INFO] About to extract fields from XML. File size: 25244 bytes
[2026-02-23 20:14:01] [INFO] Number of mappings: 1
[2026-02-23 20:14:01] [INFO] Starting XML parsing. Content length: 25244
[2026-02-23 20:14:01] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-23 20:14:01] [INFO] Processing 1 field mappings
[2026-02-23 20:14:01] [INFO] Mapping #1: Extracting 'IncidentData.FixedTimeCallClosed' => 'inService'
[2026-02-23 20:14:01] [INFO]   -> Found value: 2024-07-11T16:22:36.2
[2026-02-23 20:14:01] [INFO]   -> Set field 'inService' = "2024-07-11 16:22:36"
[2026-02-23 20:14:01] [INFO] Finished extracting fields. Total fields extracted: 1
[2026-02-23 20:14:01] [INFO] Extracted parsing rules data: {"inService":"2024-07-11 16:22:36"}
[2026-02-23 20:14:01] [INFO] Number of extracted fields: 1
[2026-02-23 20:14:01] [INFO] MULTI-AGENCY: No cADAgencyIdentifier found in extracted data
[2026-02-23 20:14:01] [INFO] Multi-agency routing check: CAD Agency ID raw = 'NULL', Parsed IDs = [], Non-empty count = 0, Total agency count = 0, Assigned Agencies count = 0
[2026-02-23 20:14:01] [INFO] Single-agency mode: Using mailbox saasclientId: 65399b81e3f752061
[2026-02-23 20:14:01] [INFO] Final routing: saasclientId = 65399b81e3f752061, dispatchStationsIds = ["653a9637b6207362b","68af6151e2bb9ee0f","68b0a2100a67da7fd","68b0c4c62f5f15f04"], matchedAgencyIndex = 0
[2026-02-23 20:14:02] [INFO] Created new Dispatches record with ID: 699cb509d824f7392
[2026-02-23 20:14:02] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-23 20:14:02] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-23 20:14:05] [INFO] Successfully uploaded file to V2 FTP server: /testfile_20250930.xml
[2026-02-23 20:14:05] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/6662f407dd1aaea6c/archive/2026-02-23
[2026-02-23 20:14:05] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/6662f407dd1aaea6c/testfile_20250930.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/6662f407dd1aaea6c/archive/2026-02-23/testfile_20250930.xml
[2026-02-23 20:14:05] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/6662f407dd1aaea6c/testfile_20250930.xml
[2026-02-23 23:39:29] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-05611.xml
[2026-02-23 23:39:29] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-05611.xml for user: 68d56363ec1209189
[2026-02-23 23:39:29] [INFO] File size: 1471 bytes
[2026-02-23 23:39:29] [INFO] Created FTPFiles record with ID: 699ce531cda529919
[2026-02-23 23:39:29] [INFO] About to extract fields from XML. File size: 1471 bytes
[2026-02-23 23:39:29] [INFO] Number of mappings: 21
[2026-02-23 23:39:29] [INFO] Starting XML parsing. Content length: 1471
[2026-02-23 23:39:29] [INFO] XML parsed successfully. Root element: Incident
[2026-02-23 23:39:29] [INFO] Processing 21 field mappings
[2026-02-23 23:39:29] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-23 23:39:29] [INFO]   -> Found value: 26-05611
[2026-02-23 23:39:29] [INFO]   -> Set field 'dispatchRunNumber' = "26-05611"
[2026-02-23 23:39:29] [INFO]   -> Set field 'cADNumber' = "26-05611"
[2026-02-23 23:39:29] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-23 23:39:29] [INFO]   -> Found value: 539
[2026-02-23 23:39:29] [INFO]   -> Set field 'incidentLocationStreetNumber' = 539
[2026-02-23 23:39:29] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-23 23:39:29] [INFO]   -> Found value: N WEST ST
[2026-02-23 23:39:29] [INFO]   -> Set field 'streetName' = "N WEST ST"
[2026-02-23 23:39:29] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-23 23:39:29] [INFO]   -> No value found (null or empty)
[2026-02-23 23:39:29] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-23 23:39:29] [INFO]   -> Found value: SIKESTON
[2026-02-23 23:39:29] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-02-23 23:39:29] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-23 23:39:29] [INFO]   -> Found value: ARBORS OF WESTRIDGE PLACE
[2026-02-23 23:39:29] [INFO]   -> Set field 'businessName' = "ARBORS OF WESTRIDGE PLACE"
[2026-02-23 23:39:29] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-23 23:39:29] [INFO]   -> Found value: MO
[2026-02-23 23:39:29] [INFO]   -> Set field 'incidentLocationStateName' = "MO"
[2026-02-23 23:39:29] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-23 23:39:29] [INFO]   -> Found value: 63801
[2026-02-23 23:39:29] [INFO]   -> Set field 'nERISIncidentPostalCode' = 63801
[2026-02-23 23:39:29] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-23 23:39:29] [INFO]   -> Found value: 0
[2026-02-23 23:39:29] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-23 23:39:29] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-23 23:39:29] [INFO]   -> Found value: 0
[2026-02-23 23:39:29] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-23 23:39:29] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-23 23:39:29] [INFO]   -> Found value: FIRE-ALARM MECH
[2026-02-23 23:39:29] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-ALARM MECH"
[2026-02-23 23:39:29] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-23 23:39:29] [INFO]   -> Found value: 02-23-2026 17:34:19|COMMERCIAL FIRE ALARM
TRIPPED 3 DIFFERENT TIMES
NO FURTHER INFORMATION
 02-23-20...
[2026-02-23 23:39:29] [INFO]   -> Set field 'dispatchNotes' = "02-23-2026 17:34:19|COMMERCIAL FIRE ALARM\nTRIPPED 3 DIFFERENT TIMES\nNO FURTHER INFORMATION\n 02-23-2026 17:36:54|RP RECONTACTED TO CANCEL DISPATCH 02-23-2026 17:37:03|ACCIDENTAL PER RP"
[2026-02-23 23:39:29] [INFO]   -> Set field 'cADLog' = "02-23-2026 17:34:19|COMMERCIAL FIRE ALARM\nTRIPPED 3 DIFFERENT TIMES\nNO FURTHER INFORMATION\n 02-23-2026 17:36:54|RP RECONTACTED TO CANCEL DISPATCH 02-23-2026 17:37:03|ACCIDENTAL PER RP"
[2026-02-23 23:39:29] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-23 23:39:29] [INFO]   -> Found value: 02-23-2026T17:36:22
[2026-02-23 23:39:29] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T17:36:22
[2026-02-23 23:39:29] [ERROR] Error formatting datetime '2026-23-02T17:36:22': Failed to parse time string (2026-23-02T17:36:22) at position 6 (3): Unexpected character
[2026-02-23 23:39:29] [INFO]   -> Set field 'alarm' = null
[2026-02-23 23:39:29] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T17:36:22
[2026-02-23 23:39:29] [ERROR] Error formatting datetime '2026-23-02T17:36:22': Failed to parse time string (2026-23-02T17:36:22) at position 6 (3): Unexpected character
[2026-02-23 23:39:29] [INFO]   -> Set field 'dispatched' = null
[2026-02-23 23:39:29] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-23 23:39:29] [INFO]   -> No value found (null or empty)
[2026-02-23 23:39:29] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-23 23:39:29] [INFO]   -> No value found (null or empty)
[2026-02-23 23:39:29] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-23 23:39:29] [INFO]   -> Found value: SIK STILL
[2026-02-23 23:39:29] [INFO]   -> Set field 'cADVehicleID' = "SIK STILL"
[2026-02-23 23:39:29] [INFO]   -> Set field 'name' = "SIK STILL"
[2026-02-23 23:39:29] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-23 23:39:29] [INFO]   -> No value found (null or empty)
[2026-02-23 23:39:29] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-23 23:39:29] [INFO]   -> No value found (null or empty)
[2026-02-23 23:39:29] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-23 23:39:29] [INFO]   -> Found value: 02-23-2026T17:37:54
[2026-02-23 23:39:29] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T17:37:54
[2026-02-23 23:39:29] [ERROR] Error formatting datetime '2026-23-02T17:37:54': Failed to parse time string (2026-23-02T17:37:54) at position 6 (3): Unexpected character
[2026-02-23 23:39:29] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-23 23:39:29] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-23 23:39:29] [INFO]   -> Found value: 02-23-2026T17:36:32
[2026-02-23 23:39:29] [INFO] Reformatted DD-MM-YYYY date '02-23-2026' (day=02, month=23) to ISO: 2026-23-02T17:36:32
[2026-02-23 23:39:29] [ERROR] Error formatting datetime '2026-23-02T17:36:32': Failed to parse time string (2026-23-02T17:36:32) at position 6 (3): Unexpected character
[2026-02-23 23:39:29] [INFO]   -> Set field 'timedispatch' = null
[2026-02-23 23:39:29] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-23 23:39:29] [INFO]   -> Found value: SDPSFD
[2026-02-23 23:39:29] [INFO]   -> Set field 'cADAgencyIdentifier' = "SDPSFD"
[2026-02-23 23:39:29] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-23 23:39:29] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-23 23:39:29] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-05611","cADNumber":"26-05611","incidentLocationStreetNumber":539,"streetName":"N WEST ST","incidentLocationCity":"SIKESTON","businessName":"ARBORS OF WESTRIDGE PLACE","incidentLocationStateName":"MO","nERISIncidentPostalCode":63801,"nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"FIRE-ALARM MECH","dispatchNotes":"02-23-2026 17:34:19|COMMERCIAL FIRE ALARM\nTRIPPED 3 DIFFERENT TIMES\nNO FURTHER INFORMATION\n 02-23-2026 17:36:54|RP RECONTACTED TO CANCEL DISPATCH 02-23-2026 17:37:03|ACCIDENTAL PER RP","cADLog":"02-23-2026 17:34:19|COMMERCIAL FIRE ALARM\nTRIPPED 3 DIFFERENT TIMES\nNO FURTHER INFORMATION\n 02-23-2026 17:36:54|RP RECONTACTED TO CANCEL DISPATCH 02-23-2026 17:37:03|ACCIDENTAL PER RP","alarm":null,"dispatched":null,"cADVehicleID":"SIK STILL","name":"SIK STILL","timeunitclear":null,"timedispatch":null,"cADAgencyIdentifier":"SDPSFD","locationCoordinates":"0,0"}
[2026-02-23 23:39:29] [INFO] Number of extracted fields: 21
[2026-02-23 23:39:29] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SDPSFD'
[2026-02-23 23:39:29] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SDPSFD', Parsed IDs = ["SDPSFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-23 23:39:29] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SDPSFD"]
[2026-02-23 23:39:29] [INFO] Attempting SAASClient lookup for AgencyCode 'SDPSFD' (index 0) within mailbox's assigned agencies
[2026-02-23 23:39:30] [INFO] SUCCESS: Routed to agency 'Sikeston DPS' (ID: 6772cab7157b2ebde) at INDEX 0 based on AgencyCode 'SDPSFD'
[2026-02-23 23:39:30] [INFO] Fetched 4 stations from Stations module for agency 'Sikeston DPS': ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"]
[2026-02-23 23:39:30] [INFO] Final routing: saasclientId = 6772cab7157b2ebde, dispatchStationsIds = ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"], matchedAgencyIndex = 0
[2026-02-23 23:39:30] [INFO] Multi-agency routing matched mailbox default agency: 6772cab7157b2ebde (no update needed)
[2026-02-23 23:39:30] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e872e5ae13
[2026-02-23 23:39:32] [INFO] Created new Dispatches record with ID: 699ce532eba7d5284
[2026-02-23 23:39:32] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-05611.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-23/SDPSFD_26-05611.xml
[2026-02-23 23:39:32] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-05611.xml
