[2026-01-27 00:10:15] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009687_20260127_001015.XML
[2026-01-27 00:10:15] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009687_20260127_001015.XML for user: 68f1466aed072ad4a
[2026-01-27 00:10:15] [INFO] File size: 5046 bytes
[2026-01-27 00:10:15] [INFO] Created FTPFiles record with ID: 697802677529f91e9
[2026-01-27 00:10:15] [INFO] About to extract fields from XML. File size: 5046 bytes
[2026-01-27 00:10:15] [INFO] Number of mappings: 28
[2026-01-27 00:10:15] [INFO] Starting XML parsing. Content length: 5046
[2026-01-27 00:10:15] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 00:10:15] [INFO] Processing 28 field mappings
[2026-01-27 00:10:15] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 00:10:15] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 00:10:15] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 00:10:15] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-01-27 00:10:15] [INFO]   -> Found value: MFD
EMS
[2026-01-27 00:10:15] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD\nEMS"
[2026-01-27 00:10:15] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 00:10:15] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-01-27 00:10:15] [INFO]   -> Found value: 2026000034
[2026-01-27 00:10:15] [INFO]   -> Set field 'incidentInternalId' = "2026000034"
[2026-01-27 00:10:15] [INFO]   -> Set field 'dispatchRunNumber' = "2026000034"
[2026-01-27 00:10:15] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 00:10:15] [INFO]   -> Found value: FALL VICTIM
[2026-01-27 00:10:15] [INFO]   -> Set field 'incidentTypeValue1' = "FALL VICTIM"
[2026-01-27 00:10:15] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 00:10:15] [INFO]   -> Found value: 517
[2026-01-27 00:10:15] [INFO]   -> Set field 'incidentLocationStreetNumber' = 517
[2026-01-27 00:10:15] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 00:10:15] [INFO]   -> Found value: TN
[2026-01-27 00:10:15] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 00:10:15] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 00:10:15] [INFO]   -> Found value: 38574
[2026-01-27 00:10:15] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-01-27 00:10:15] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 00:10:15] [INFO]   -> Found value: 36.14941
[2026-01-27 00:10:15] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1494100000000031513991416431963443756103515625
[2026-01-27 00:10:15] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 00:10:15] [INFO]   -> Found value: -85.26163
[2026-01-27 00:10:15] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.261629999999996698534232564270496368408203125
[2026-01-27 00:10:15] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 00:10:15] [INFO]   -> Found value: 2026-01-26 18:09:55
[2026-01-27 00:10:15] [INFO]   -> Set field 'alarm' = "2026-01-26 18:09:55"
[2026-01-27 00:10:15] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 00:10:15] [INFO]   -> Found value: 2026-01-26 18:10:07
[2026-01-27 00:10:15] [INFO]   -> Set field 'dispatched' = "2026-01-26 18:10:07"
[2026-01-27 00:10:15] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 00:10:15] [INFO]   -> Found value: E MINERAL AVE/SPECK AVE
[2026-01-27 00:10:15] [INFO]   -> Set field 'incidentLocationCross' = "E MINERAL AVE\/SPECK AVE"
[2026-01-27 00:10:15] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 00:10:15] [INFO]   -> Found value: MFEN1
[2026-01-27 00:10:15] [INFO]   -> Set field 'cADVehicleID' = "MFEN1"
[2026-01-27 00:10:15] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 00:10:15] [INFO]   -> Found value: 2026-01-26 18:10:07
[2026-01-27 00:10:15] [INFO]   -> Set field 'timedispatch' = "2026-01-26 18:10:07"
[2026-01-27 00:10:15] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 00:10:15] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:15] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 00:10:15] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 00:10:15] [INFO]   -> Found value: 20260009687
[2026-01-27 00:10:15] [INFO]   -> Set field 'policeReportNumber' = "20260009687"
[2026-01-27 00:10:15] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 00:10:15] [INFO]   -> Found value: Event spawned from FALL VICTIM.  [01/26/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMP...
[2026-01-27 00:10:15] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from FALL VICTIM.  [01\/26\/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMPLAINING OF RIB AND BACK PAIN  NO BLEEDING  PT IS AWAKE AND ALERT  FRONT DOOR UNLOCKED  [01\/26\/26 18:09:52 TSCOTT]]"
[2026-01-27 00:10:15] [INFO]   -> Set field 'cADLog' = "Event spawned from FALL VICTIM.  [01\/26\/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMPLAINING OF RIB AND BACK PAIN  NO BLEEDING  PT IS AWAKE AND ALERT  FRONT DOOR UNLOCKED  [01\/26\/26 18:09:52 TSCOTT]]"
[2026-01-27 00:10:15] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 00:10:15] [INFO]   -> Found value: MONTEREY
[2026-01-27 00:10:15] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-01-27 00:10:15] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 00:10:15] [INFO]   -> Found value: ELM
[2026-01-27 00:10:15] [INFO]   -> Set field 'streetName' = "ELM"
[2026-01-27 00:10:15] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 00:10:15] [INFO]   -> Found value: ST
[2026-01-27 00:10:15] [INFO]   -> Set field 'streetType' = "ST"
[2026-01-27 00:10:15] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 00:10:15] [INFO]   -> Found value: 517 N ELM ST
[2026-01-27 00:10:15] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "517 N ELM ST"
[2026-01-27 00:10:15] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 00:10:15] [INFO] Concatenating street name and type
[2026-01-27 00:10:15] [INFO]   -> Combined street name: ELM ST
[2026-01-27 00:10:15] [INFO] Built locationCoordinates from lat/lng: 36.14941,-85.26163
[2026-01-27 00:10:15] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"MFD\nEMS","incidentInternalId":"2026000034","dispatchRunNumber":"2026000034","incidentTypeValue1":"FALL VICTIM","incidentLocationStreetNumber":517,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"nERISIncidentLatitude":36.1494100000000031513991416431963443756103515625,"nERISIncidentLongitude":-85.261629999999996698534232564270496368408203125,"alarm":"2026-01-26 18:09:55","dispatched":"2026-01-26 18:10:07","incidentLocationCross":"E MINERAL AVE\/SPECK AVE","cADVehicleID":"MFEN1","timedispatch":"2026-01-26 18:10:07","policeReportNumber":"20260009687","dispatchNotes":"Event spawned from FALL VICTIM.  [01\/26\/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMPLAINING OF RIB AND BACK PAIN  NO BLEEDING  PT IS AWAKE AND ALERT  FRONT DOOR UNLOCKED  [01\/26\/26 18:09:52 TSCOTT]]","cADLog":"Event spawned from FALL VICTIM.  [01\/26\/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMPLAINING OF RIB AND BACK PAIN  NO BLEEDING  PT IS AWAKE AND ALERT  FRONT DOOR UNLOCKED  [01\/26\/26 18:09:52 TSCOTT]]","incidentLocationCity":"MONTEREY","streetName":"ELM ST","incidentAddressTextVersionStreet":"517 N ELM ST","locationCoordinates":"36.14941,-85.26163"}
[2026-01-27 00:10:15] [INFO] Number of extracted fields: 21
[2026-01-27 00:10:15] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD
EMS'
[2026-01-27 00:10:15] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD
EMS', Parsed IDs = ["MFD","EMS"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-01-27 00:10:15] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD","EMS"]
[2026-01-27 00:10:15] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-01-27 00:10:15] [INFO] SUCCESS: Routed to agency 'Monterey Fire Department' (ID: 68e67aaba2bb4565e) at INDEX 0 based on AgencyCode 'MFD'
[2026-01-27 00:10:15] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS"]
[2026-01-27 00:10:15] [INFO] Fetched 1 stations from Stations module for agency 'Monterey Fire Department': ["68ffe49c256b67300"]
[2026-01-27 00:10:15] [INFO] Final routing: saasclientId = 68e67aaba2bb4565e, dispatchStationsIds = ["68ffe49c256b67300"], matchedAgencyIndex = 0
[2026-01-27 00:10:15] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 00:10:15] [INFO] Filtered cADAgencyIdentifier to: MFD
[2026-01-27 00:10:15] [INFO] Updated FTPFiles record saasclientId to routed agency: 68e67aaba2bb4565e
[2026-01-27 00:10:16] [INFO] Found existing IncidentTypeMapping with ID: 694458634e9b84eeb
[2026-01-27 00:10:18] [INFO] Created new Dispatches record with ID: 69780268735c7fc04
[2026-01-27 00:10:18] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 00:10:18] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 00:10:21] [INFO] Successfully uploaded file to V2 FTP server: /MFD_20260009687_20260127_001015.XML
[2026-01-27 00:10:21] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27
[2026-01-27 00:10:21] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009687_20260127_001015.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/MFD_20260009687_20260127_001015.XML
[2026-01-27 00:10:21] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009687_20260127_001015.XML
[2026-01-27 00:10:54] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009684_20260127_001054.XML
[2026-01-27 00:10:54] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009684_20260127_001054.XML for user: 68f1466aed072ad4a
[2026-01-27 00:10:54] [INFO] File size: 5287 bytes
[2026-01-27 00:10:55] [INFO] Created FTPFiles record with ID: 6978028f5626e4d56
[2026-01-27 00:10:55] [INFO] About to extract fields from XML. File size: 5287 bytes
[2026-01-27 00:10:55] [INFO] Number of mappings: 28
[2026-01-27 00:10:55] [INFO] Starting XML parsing. Content length: 5287
[2026-01-27 00:10:55] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 00:10:55] [INFO] Processing 28 field mappings
[2026-01-27 00:10:55] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 00:10:55] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 00:10:55] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 00:10:55] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-01-27 00:10:55] [INFO]   -> Found value: MFD
MPD
EMS
[2026-01-27 00:10:55] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD\nMPD\nEMS"
[2026-01-27 00:10:55] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 00:10:55] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-01-27 00:10:55] [INFO]   -> Found value: 2026000035
[2026-01-27 00:10:55] [INFO]   -> Set field 'incidentInternalId' = "2026000035"
[2026-01-27 00:10:55] [INFO]   -> Set field 'dispatchRunNumber' = "2026000035"
[2026-01-27 00:10:55] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 00:10:55] [INFO]   -> Found value: APARTMENT/COMPLEX FIRE
[2026-01-27 00:10:55] [INFO]   -> Set field 'incidentTypeValue1' = "APARTMENT\/COMPLEX FIRE"
[2026-01-27 00:10:55] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 00:10:55] [INFO]   -> Found value: 321
[2026-01-27 00:10:55] [INFO]   -> Set field 'incidentLocationStreetNumber' = 321
[2026-01-27 00:10:55] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 00:10:55] [INFO]   -> Found value: TN
[2026-01-27 00:10:55] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 00:10:55] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 00:10:55] [INFO]   -> Found value: 38574
[2026-01-27 00:10:55] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-01-27 00:10:55] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 00:10:55] [INFO]   -> Found value: 36.14708
[2026-01-27 00:10:55] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1470800000000025420376914553344249725341796875
[2026-01-27 00:10:55] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 00:10:55] [INFO]   -> Found value: -85.26215
[2026-01-27 00:10:55] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2621500000000054342308430932462215423583984375
[2026-01-27 00:10:55] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 00:10:55] [INFO]   -> Found value: 2026-01-26 18:09:24
[2026-01-27 00:10:55] [INFO]   -> Set field 'alarm' = "2026-01-26 18:09:24"
[2026-01-27 00:10:55] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 00:10:55] [INFO]   -> Found value: 2026-01-26 18:10:42
[2026-01-27 00:10:55] [INFO]   -> Set field 'dispatched' = "2026-01-26 18:10:42"
[2026-01-27 00:10:55] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 00:10:55] [INFO]   -> Found value: N ELM ST/ALLEY
[2026-01-27 00:10:55] [INFO]   -> Set field 'incidentLocationCross' = "N ELM ST\/ALLEY"
[2026-01-27 00:10:55] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 00:10:55] [INFO]   -> Found value: MFEN1
[2026-01-27 00:10:55] [INFO]   -> Set field 'cADVehicleID' = "MFEN1"
[2026-01-27 00:10:55] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 00:10:55] [INFO]   -> Found value: 2026-01-26 18:10:42
[2026-01-27 00:10:55] [INFO]   -> Set field 'timedispatch' = "2026-01-26 18:10:42"
[2026-01-27 00:10:55] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 00:10:55] [INFO]   -> No value found (null or empty)
[2026-01-27 00:10:55] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 00:10:55] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 00:10:55] [INFO]   -> Found value: 20260009684
[2026-01-27 00:10:55] [INFO]   -> Set field 'policeReportNumber' = "20260009684"
[2026-01-27 00:10:55] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 00:10:55] [INFO]   -> Found value: STATES HER HOUSE IS ON FIRE// COMING FROM THE AC UNIT  [01/26/26 18:10:30 KMORGAN2] [LAW] MPD ENRT  ...
[2026-01-27 00:10:55] [INFO]   -> Set field 'dispatchNotes' = "STATES HER HOUSE IS ON FIRE\/\/ COMING FROM THE AC UNIT  [01\/26\/26 18:10:30 KMORGAN2] [LAW] MPD ENRT  [01\/26\/26 18:10:23 ECLEMENS] [LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01\/26\/26 18:09:56 ECLEMENS]"
[2026-01-27 00:10:55] [INFO]   -> Set field 'cADLog' = "STATES HER HOUSE IS ON FIRE\/\/ COMING FROM THE AC UNIT  [01\/26\/26 18:10:30 KMORGAN2] [LAW] MPD ENRT  [01\/26\/26 18:10:23 ECLEMENS] [LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01\/26\/26 18:09:56 ECLEMENS]"
[2026-01-27 00:10:55] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 00:10:55] [INFO]   -> Found value: MONTEREY
[2026-01-27 00:10:55] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-01-27 00:10:55] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 00:10:55] [INFO]   -> Found value: HOYT
[2026-01-27 00:10:55] [INFO]   -> Set field 'streetName' = "HOYT"
[2026-01-27 00:10:55] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 00:10:55] [INFO]   -> Found value: AVE
[2026-01-27 00:10:55] [INFO]   -> Set field 'streetType' = "AVE"
[2026-01-27 00:10:55] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 00:10:55] [INFO]   -> Found value: 321 E HOYT AVE
[2026-01-27 00:10:55] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "321 E HOYT AVE"
[2026-01-27 00:10:55] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 00:10:55] [INFO] Concatenating street name and type
[2026-01-27 00:10:55] [INFO]   -> Combined street name: HOYT AVE
[2026-01-27 00:10:55] [INFO] Built locationCoordinates from lat/lng: 36.14708,-85.26215
[2026-01-27 00:10:55] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"MFD\nMPD\nEMS","incidentInternalId":"2026000035","dispatchRunNumber":"2026000035","incidentTypeValue1":"APARTMENT\/COMPLEX FIRE","incidentLocationStreetNumber":321,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"nERISIncidentLatitude":36.1470800000000025420376914553344249725341796875,"nERISIncidentLongitude":-85.2621500000000054342308430932462215423583984375,"alarm":"2026-01-26 18:09:24","dispatched":"2026-01-26 18:10:42","incidentLocationCross":"N ELM ST\/ALLEY","cADVehicleID":"MFEN1","timedispatch":"2026-01-26 18:10:42","policeReportNumber":"20260009684","dispatchNotes":"STATES HER HOUSE IS ON FIRE\/\/ COMING FROM THE AC UNIT  [01\/26\/26 18:10:30 KMORGAN2] [LAW] MPD ENRT  [01\/26\/26 18:10:23 ECLEMENS] [LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01\/26\/26 18:09:56 ECLEMENS]","cADLog":"STATES HER HOUSE IS ON FIRE\/\/ COMING FROM THE AC UNIT  [01\/26\/26 18:10:30 KMORGAN2] [LAW] MPD ENRT  [01\/26\/26 18:10:23 ECLEMENS] [LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01\/26\/26 18:09:56 ECLEMENS]","incidentLocationCity":"MONTEREY","streetName":"HOYT AVE","incidentAddressTextVersionStreet":"321 E HOYT AVE","locationCoordinates":"36.14708,-85.26215"}
[2026-01-27 00:10:55] [INFO] Number of extracted fields: 21
[2026-01-27 00:10:55] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD
MPD
EMS'
[2026-01-27 00:10:55] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD
MPD
EMS', Parsed IDs = ["MFD","MPD","EMS"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 4
[2026-01-27 00:10:55] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD","MPD","EMS"]
[2026-01-27 00:10:55] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-01-27 00:10:55] [INFO] SUCCESS: Routed to agency 'Monterey Fire Department' (ID: 68e67aaba2bb4565e) at INDEX 0 based on AgencyCode 'MFD'
[2026-01-27 00:10:55] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["MPD","EMS"]
[2026-01-27 00:10:55] [INFO] Fetched 1 stations from Stations module for agency 'Monterey Fire Department': ["68ffe49c256b67300"]
[2026-01-27 00:10:55] [INFO] Final routing: saasclientId = 68e67aaba2bb4565e, dispatchStationsIds = ["68ffe49c256b67300"], matchedAgencyIndex = 0
[2026-01-27 00:10:55] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-01-27 00:10:55] [INFO] Filtered cADAgencyIdentifier to: MFD
[2026-01-27 00:10:55] [INFO] Updated FTPFiles record saasclientId to routed agency: 68e67aaba2bb4565e
[2026-01-27 00:10:56] [INFO] Created new IncidentTypeMapping Data: {"cADIncidentType":"APARTMENT\/COMPLEX FIRE","saasclientId":"68e67aaba2bb4565e","name":"APARTMENT\/COMPLEX FIRE"}
[2026-01-27 00:10:56] [INFO] Created new IncidentTypeMapping with ID: 69780290223c6168d
[2026-01-27 00:10:58] [INFO] Created new Dispatches record with ID: 697802906ee14cda8
[2026-01-27 00:10:58] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 00:10:58] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 00:11:01] [INFO] Successfully uploaded file to V2 FTP server: /MFD_20260009684_20260127_001054.XML
[2026-01-27 00:11:01] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009684_20260127_001054.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/MFD_20260009684_20260127_001054.XML
[2026-01-27 00:11:01] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009684_20260127_001054.XML
[2026-01-27 00:12:34] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009688_20260127_001234.XML
[2026-01-27 00:12:34] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009688_20260127_001234.XML for user: 68f1466aed072ad4a
[2026-01-27 00:12:34] [INFO] File size: 5482 bytes
[2026-01-27 00:12:35] [INFO] Created FTPFiles record with ID: 697802f334f544c9b
[2026-01-27 00:12:35] [INFO] About to extract fields from XML. File size: 5482 bytes
[2026-01-27 00:12:35] [INFO] Number of mappings: 28
[2026-01-27 00:12:35] [INFO] Starting XML parsing. Content length: 5482
[2026-01-27 00:12:35] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 00:12:35] [INFO] Processing 28 field mappings
[2026-01-27 00:12:35] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 00:12:35] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 00:12:35] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 00:12:35] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-01-27 00:12:35] [INFO]   -> Found value: PCFD
EMS
MFD
RESC
[2026-01-27 00:12:35] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nMFD\nRESC"
[2026-01-27 00:12:35] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 00:12:35] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-01-27 00:12:35] [INFO]   -> Found value: 2026000237
[2026-01-27 00:12:35] [INFO]   -> Set field 'incidentInternalId' = "2026000237"
[2026-01-27 00:12:35] [INFO]   -> Set field 'dispatchRunNumber' = "2026000237"
[2026-01-27 00:12:35] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 00:12:35] [INFO]   -> Found value: FALL VICTIM
[2026-01-27 00:12:35] [INFO]   -> Set field 'incidentTypeValue1' = "FALL VICTIM"
[2026-01-27 00:12:35] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 00:12:35] [INFO]   -> Found value: 517
[2026-01-27 00:12:35] [INFO]   -> Set field 'incidentLocationStreetNumber' = 517
[2026-01-27 00:12:35] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 00:12:35] [INFO]   -> Found value: TN
[2026-01-27 00:12:35] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 00:12:35] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 00:12:35] [INFO]   -> Found value: 38574
[2026-01-27 00:12:35] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-01-27 00:12:35] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 00:12:35] [INFO]   -> Found value: 36.14941
[2026-01-27 00:12:35] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1494100000000031513991416431963443756103515625
[2026-01-27 00:12:35] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 00:12:35] [INFO]   -> Found value: -85.26163
[2026-01-27 00:12:35] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.261629999999996698534232564270496368408203125
[2026-01-27 00:12:35] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 00:12:35] [INFO]   -> Found value: 2026-01-26 18:11:54
[2026-01-27 00:12:35] [INFO]   -> Set field 'alarm' = "2026-01-26 18:11:54"
[2026-01-27 00:12:35] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 00:12:35] [INFO]   -> Found value: 2026-01-26 18:12:31
[2026-01-27 00:12:35] [INFO]   -> Set field 'dispatched' = "2026-01-26 18:12:31"
[2026-01-27 00:12:35] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 00:12:35] [INFO]   -> Found value: E MINERAL AVE/SPECK AVE
[2026-01-27 00:12:35] [INFO]   -> Set field 'incidentLocationCross' = "E MINERAL AVE\/SPECK AVE"
[2026-01-27 00:12:35] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 00:12:35] [INFO]   -> Found value: PCFR
[2026-01-27 00:12:35] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-01-27 00:12:35] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 00:12:35] [INFO]   -> Found value: 2026-01-26 18:12:31
[2026-01-27 00:12:35] [INFO]   -> Set field 'timedispatch' = "2026-01-26 18:12:31"
[2026-01-27 00:12:35] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 00:12:35] [INFO]   -> No value found (null or empty)
[2026-01-27 00:12:35] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 00:12:35] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 00:12:35] [INFO]   -> Found value: 20260009688
[2026-01-27 00:12:35] [INFO]   -> Set field 'policeReportNumber' = "20260009688"
[2026-01-27 00:12:35] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 00:12:35] [INFO]   -> Found value: Event spawned from FALL VICTIM.  [01/26/2026 18:11:54 TSCOTT] Event spawned from FALL VICTIM.  [01/2...
[2026-01-27 00:12:35] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from FALL VICTIM.  [01\/26\/2026 18:11:54 TSCOTT] Event spawned from FALL VICTIM.  [01\/26\/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMPLAINING OF RIB AND BACK PAIN  NO BLEEDING  PT IS AWAKE AND ALERT  FRONT DOOR UNLOCKED  [01\/26\/26 18:09:52 TSCOTT]]"
[2026-01-27 00:12:35] [INFO]   -> Set field 'cADLog' = "Event spawned from FALL VICTIM.  [01\/26\/2026 18:11:54 TSCOTT] Event spawned from FALL VICTIM.  [01\/26\/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMPLAINING OF RIB AND BACK PAIN  NO BLEEDING  PT IS AWAKE AND ALERT  FRONT DOOR UNLOCKED  [01\/26\/26 18:09:52 TSCOTT]]"
[2026-01-27 00:12:35] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 00:12:35] [INFO]   -> Found value: MONTEREY
[2026-01-27 00:12:35] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-01-27 00:12:35] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 00:12:35] [INFO]   -> Found value: ELM
[2026-01-27 00:12:35] [INFO]   -> Set field 'streetName' = "ELM"
[2026-01-27 00:12:35] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 00:12:35] [INFO]   -> Found value: ST
[2026-01-27 00:12:35] [INFO]   -> Set field 'streetType' = "ST"
[2026-01-27 00:12:35] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 00:12:35] [INFO]   -> Found value: 517 N ELM ST
[2026-01-27 00:12:35] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "517 N ELM ST"
[2026-01-27 00:12:35] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 00:12:35] [INFO] Concatenating street name and type
[2026-01-27 00:12:35] [INFO]   -> Combined street name: ELM ST
[2026-01-27 00:12:35] [INFO] Built locationCoordinates from lat/lng: 36.14941,-85.26163
[2026-01-27 00:12:35] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nMFD\nRESC","incidentInternalId":"2026000237","dispatchRunNumber":"2026000237","incidentTypeValue1":"FALL VICTIM","incidentLocationStreetNumber":517,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"nERISIncidentLatitude":36.1494100000000031513991416431963443756103515625,"nERISIncidentLongitude":-85.261629999999996698534232564270496368408203125,"alarm":"2026-01-26 18:11:54","dispatched":"2026-01-26 18:12:31","incidentLocationCross":"E MINERAL AVE\/SPECK AVE","cADVehicleID":"PCFR","timedispatch":"2026-01-26 18:12:31","policeReportNumber":"20260009688","dispatchNotes":"Event spawned from FALL VICTIM.  [01\/26\/2026 18:11:54 TSCOTT] Event spawned from FALL VICTIM.  [01\/26\/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMPLAINING OF RIB AND BACK PAIN  NO BLEEDING  PT IS AWAKE AND ALERT  FRONT DOOR UNLOCKED  [01\/26\/26 18:09:52 TSCOTT]]","cADLog":"Event spawned from FALL VICTIM.  [01\/26\/2026 18:11:54 TSCOTT] Event spawned from FALL VICTIM.  [01\/26\/2026 18:09:55 TSCOTT] 85 YOF FALL VICTIM  HIT HER HEAD  COMPLAINING OF RIB AND BACK PAIN  NO BLEEDING  PT IS AWAKE AND ALERT  FRONT DOOR UNLOCKED  [01\/26\/26 18:09:52 TSCOTT]]","incidentLocationCity":"MONTEREY","streetName":"ELM ST","incidentAddressTextVersionStreet":"517 N ELM ST","locationCoordinates":"36.14941,-85.26163"}
[2026-01-27 00:12:35] [INFO] Number of extracted fields: 21
[2026-01-27 00:12:35] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
MFD
RESC'
[2026-01-27 00:12:35] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
MFD
RESC', Parsed IDs = ["PCFD","EMS","MFD","RESC"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 4
[2026-01-27 00:12:35] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","MFD","RESC"]
[2026-01-27 00:12:35] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 00:12:35] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 00:12:35] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","MFD","RESC"]
[2026-01-27 00:12:35] [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-01-27 00:12:35] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 00:12:35] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 00:12:35] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 00:12:35] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 00:12:35] [INFO] Found existing IncidentTypeMapping with ID: 69372a143f466ddae
[2026-01-27 00:12:44] [INFO] Created new Dispatches record with ID: 697802f410ca09ca2
[2026-01-27 00:12:44] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 00:12:44] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 00:12:47] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009688_20260127_001234.XML
[2026-01-27 00:12:47] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009688_20260127_001234.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009688_20260127_001234.XML
[2026-01-27 00:12:47] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009688_20260127_001234.XML
[2026-01-27 01:27:15] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009706_20260127_012715.XML
[2026-01-27 01:27:15] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009706_20260127_012715.XML for user: 68f1466aed072ad4a
[2026-01-27 01:27:15] [INFO] File size: 5329 bytes
[2026-01-27 01:27:15] [INFO] Created FTPFiles record with ID: 69781473cdf0b2fb5
[2026-01-27 01:27:15] [INFO] About to extract fields from XML. File size: 5329 bytes
[2026-01-27 01:27:15] [INFO] Number of mappings: 28
[2026-01-27 01:27:15] [INFO] Starting XML parsing. Content length: 5329
[2026-01-27 01:27:15] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 01:27:15] [INFO] Processing 28 field mappings
[2026-01-27 01:27:15] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 01:27:15] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 01:27:15] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 01:27:15] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-01-27 01:27:15] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-01-27 01:27:15] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-01-27 01:27:15] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 01:27:15] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-01-27 01:27:15] [INFO]   -> Found value: 2026000238
[2026-01-27 01:27:15] [INFO]   -> Set field 'incidentInternalId' = "2026000238"
[2026-01-27 01:27:15] [INFO]   -> Set field 'dispatchRunNumber' = "2026000238"
[2026-01-27 01:27:15] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 01:27:15] [INFO]   -> Found value: UNCONSCIOUS
[2026-01-27 01:27:15] [INFO]   -> Set field 'incidentTypeValue1' = "UNCONSCIOUS"
[2026-01-27 01:27:15] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 01:27:15] [INFO]   -> Found value: 4015
[2026-01-27 01:27:15] [INFO]   -> Set field 'incidentLocationStreetNumber' = 4015
[2026-01-27 01:27:15] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 01:27:15] [INFO]   -> Found value: TN
[2026-01-27 01:27:15] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 01:27:15] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 01:27:15] [INFO]   -> Found value: 38544
[2026-01-27 01:27:15] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38544
[2026-01-27 01:27:15] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 01:27:15] [INFO]   -> Found value: DANA DURHAM
[2026-01-27 01:27:15] [INFO]   -> Set field 'businessName' = "DANA DURHAM"
[2026-01-27 01:27:15] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 01:27:15] [INFO]   -> No value found (null or empty)
[2026-01-27 01:27:15] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 01:27:15] [INFO]   -> Found value: 36.12494
[2026-01-27 01:27:15] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.12494000000000227146301767788827419281005859375
[2026-01-27 01:27:15] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 01:27:15] [INFO]   -> Found value: -85.62694
[2026-01-27 01:27:15] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.6269400000000047157300286926329135894775390625
[2026-01-27 01:27:15] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 01:27:15] [INFO]   -> Found value: 2026-01-26 19:26:52
[2026-01-27 01:27:15] [INFO]   -> Set field 'alarm' = "2026-01-26 19:26:52"
[2026-01-27 01:27:15] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 01:27:15] [INFO]   -> Found value: 2026-01-26 19:27:04
[2026-01-27 01:27:15] [INFO]   -> Set field 'dispatched' = "2026-01-26 19:27:04"
[2026-01-27 01:27:15] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 01:27:15] [INFO]   -> No value found (null or empty)
[2026-01-27 01:27:15] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 01:27:15] [INFO]   -> No value found (null or empty)
[2026-01-27 01:27:15] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 01:27:15] [INFO]   -> No value found (null or empty)
[2026-01-27 01:27:15] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 01:27:15] [INFO]   -> Found value: PUTNAM ST/ACADEMY RD
[2026-01-27 01:27:15] [INFO]   -> Set field 'incidentLocationCross' = "PUTNAM ST\/ACADEMY RD"
[2026-01-27 01:27:15] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 01:27:15] [INFO]   -> Found value: PCFR
[2026-01-27 01:27:15] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-01-27 01:27:15] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 01:27:15] [INFO]   -> Found value: 2026-01-26 19:27:04
[2026-01-27 01:27:15] [INFO]   -> Set field 'timedispatch' = "2026-01-26 19:27:04"
[2026-01-27 01:27:15] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 01:27:15] [INFO]   -> No value found (null or empty)
[2026-01-27 01:27:15] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 01:27:15] [INFO]   -> No value found (null or empty)
[2026-01-27 01:27:15] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 01:27:15] [INFO]   -> No value found (null or empty)
[2026-01-27 01:27:15] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 01:27:15] [INFO]   -> No value found (null or empty)
[2026-01-27 01:27:15] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 01:27:15] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 01:27:15] [INFO]   -> Found value: 20260009706
[2026-01-27 01:27:15] [INFO]   -> Set field 'policeReportNumber' = "20260009706"
[2026-01-27 01:27:15] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 01:27:15] [INFO]   -> Found value: Event spawned from UNCONSCIOUS.  [01/26/2026 19:26:52 SVOKOUN2]
[2026-01-27 01:27:15] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from UNCONSCIOUS.  [01\/26\/2026 19:26:52 SVOKOUN2]"
[2026-01-27 01:27:15] [INFO]   -> Set field 'cADLog' = "Event spawned from UNCONSCIOUS.  [01\/26\/2026 19:26:52 SVOKOUN2]"
[2026-01-27 01:27:15] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 01:27:15] [INFO]   -> Found value: BAXTER
[2026-01-27 01:27:15] [INFO]   -> Set field 'incidentLocationCity' = "BAXTER"
[2026-01-27 01:27:15] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 01:27:15] [INFO]   -> Found value: BAXTER
[2026-01-27 01:27:15] [INFO]   -> Set field 'streetName' = "BAXTER"
[2026-01-27 01:27:15] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 01:27:15] [INFO]   -> Found value: RD
[2026-01-27 01:27:15] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 01:27:15] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 01:27:15] [INFO]   -> Found value: 4015 BAXTER RD
[2026-01-27 01:27:15] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "4015 BAXTER RD"
[2026-01-27 01:27:15] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-01-27 01:27:15] [INFO] Concatenating street name and type
[2026-01-27 01:27:15] [INFO]   -> Combined street name: BAXTER RD
[2026-01-27 01:27:15] [INFO] Built locationCoordinates from lat/lng: 36.12494,-85.62694
[2026-01-27 01:27:15] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000238","dispatchRunNumber":"2026000238","incidentTypeValue1":"UNCONSCIOUS","incidentLocationStreetNumber":4015,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38544,"businessName":"DANA DURHAM","nERISIncidentLatitude":36.12494000000000227146301767788827419281005859375,"nERISIncidentLongitude":-85.6269400000000047157300286926329135894775390625,"alarm":"2026-01-26 19:26:52","dispatched":"2026-01-26 19:27:04","incidentLocationCross":"PUTNAM ST\/ACADEMY RD","cADVehicleID":"PCFR","timedispatch":"2026-01-26 19:27:04","policeReportNumber":"20260009706","dispatchNotes":"Event spawned from UNCONSCIOUS.  [01\/26\/2026 19:26:52 SVOKOUN2]","cADLog":"Event spawned from UNCONSCIOUS.  [01\/26\/2026 19:26:52 SVOKOUN2]","incidentLocationCity":"BAXTER","streetName":"BAXTER RD","incidentAddressTextVersionStreet":"4015 BAXTER RD","locationCoordinates":"36.12494,-85.62694"}
[2026-01-27 01:27:15] [INFO] Number of extracted fields: 22
[2026-01-27 01:27:15] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-01-27 01:27:15] [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-01-27 01:27:15] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-01-27 01:27:15] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 01:27:16] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 01:27:16] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-01-27 01:27:16] [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-01-27 01:27:16] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 01:27:16] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 01:27:16] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 01:27:16] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 01:27:16] [INFO] Found existing IncidentTypeMapping with ID: 693976706d4f7fb2e
[2026-01-27 01:27:26] [INFO] Created new Dispatches record with ID: 6978147493dabeb2e
[2026-01-27 01:27:26] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 01:27:26] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 01:27:29] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009706_20260127_012715.XML
[2026-01-27 01:27:29] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009706_20260127_012715.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009706_20260127_012715.XML
[2026-01-27 01:27:29] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009706_20260127_012715.XML
[2026-01-27 03:02:24] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009732_20260127_030224.XML
[2026-01-27 03:02:24] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009732_20260127_030224.XML for user: 68f1466aed072ad4a
[2026-01-27 03:02:24] [INFO] File size: 5399 bytes
[2026-01-27 03:02:25] [INFO] Created FTPFiles record with ID: 69782ac128f1160e7
[2026-01-27 03:02:25] [INFO] About to extract fields from XML. File size: 5399 bytes
[2026-01-27 03:02:25] [INFO] Number of mappings: 28
[2026-01-27 03:02:25] [INFO] Starting XML parsing. Content length: 5399
[2026-01-27 03:02:25] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 03:02:25] [INFO] Processing 28 field mappings
[2026-01-27 03:02:25] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 03:02:25] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 03:02:25] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 03:02:25] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-01-27 03:02:25] [INFO]   -> Found value: PCFD
EMS
RESC
[2026-01-27 03:02:25] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nRESC"
[2026-01-27 03:02:25] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 03:02:25] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-01-27 03:02:25] [INFO]   -> Found value: 2026000239
[2026-01-27 03:02:25] [INFO]   -> Set field 'incidentInternalId' = "2026000239"
[2026-01-27 03:02:25] [INFO]   -> Set field 'dispatchRunNumber' = "2026000239"
[2026-01-27 03:02:25] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 03:02:25] [INFO]   -> Found value: FALL VICTIM
[2026-01-27 03:02:25] [INFO]   -> Set field 'incidentTypeValue1' = "FALL VICTIM"
[2026-01-27 03:02:25] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 03:02:25] [INFO]   -> Found value: 3375
[2026-01-27 03:02:25] [INFO]   -> Set field 'incidentLocationStreetNumber' = 3375
[2026-01-27 03:02:25] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 03:02:25] [INFO]   -> Found value: TN
[2026-01-27 03:02:25] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 03:02:25] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 03:02:25] [INFO]   -> Found value: 38501
[2026-01-27 03:02:25] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-01-27 03:02:25] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 03:02:25] [INFO]   -> Found value: CECIL ODELL LEMONS
[2026-01-27 03:02:25] [INFO]   -> Set field 'businessName' = "CECIL ODELL LEMONS"
[2026-01-27 03:02:25] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 03:02:25] [INFO]   -> No value found (null or empty)
[2026-01-27 03:02:25] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 03:02:25] [INFO]   -> Found value: 36.22228
[2026-01-27 03:02:25] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.2222799999999978126652422361075878143310546875
[2026-01-27 03:02:25] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 03:02:25] [INFO]   -> Found value: -85.55058
[2026-01-27 03:02:25] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.550579999999996516635292209684848785400390625
[2026-01-27 03:02:25] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 03:02:25] [INFO]   -> Found value: 2026-01-26 21:01:45
[2026-01-27 03:02:25] [INFO]   -> Set field 'alarm' = "2026-01-26 21:01:45"
[2026-01-27 03:02:25] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 03:02:25] [INFO]   -> Found value: 2026-01-26 21:02:16
[2026-01-27 03:02:25] [INFO]   -> Set field 'dispatched' = "2026-01-26 21:02:16"
[2026-01-27 03:02:25] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 03:02:25] [INFO]   -> No value found (null or empty)
[2026-01-27 03:02:25] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 03:02:25] [INFO]   -> No value found (null or empty)
[2026-01-27 03:02:25] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 03:02:25] [INFO]   -> No value found (null or empty)
[2026-01-27 03:02:25] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 03:02:25] [INFO]   -> Found value: GAINESBORO GRADE/SHIPLEY RD
[2026-01-27 03:02:25] [INFO]   -> Set field 'incidentLocationCross' = "GAINESBORO GRADE\/SHIPLEY RD"
[2026-01-27 03:02:25] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 03:02:25] [INFO]   -> Found value: PCFR
[2026-01-27 03:02:25] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-01-27 03:02:25] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 03:02:25] [INFO]   -> Found value: 2026-01-26 21:02:16
[2026-01-27 03:02:25] [INFO]   -> Set field 'timedispatch' = "2026-01-26 21:02:16"
[2026-01-27 03:02:25] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 03:02:25] [INFO]   -> No value found (null or empty)
[2026-01-27 03:02:25] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 03:02:25] [INFO]   -> No value found (null or empty)
[2026-01-27 03:02:25] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 03:02:25] [INFO]   -> No value found (null or empty)
[2026-01-27 03:02:25] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 03:02:25] [INFO]   -> No value found (null or empty)
[2026-01-27 03:02:25] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 03:02:25] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 03:02:25] [INFO]   -> Found value: 20260009732
[2026-01-27 03:02:25] [INFO]   -> Set field 'policeReportNumber' = "20260009732"
[2026-01-27 03:02:25] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 03:02:25] [INFO]   -> Found value: KEY TO HOUSE UNDER FLOORMAT IN THE CAR  [01/26/26 21:02:15 SVOKOUN2] [EMS] FELL OUT OF CHAIR UNKOWN ...
[2026-01-27 03:02:25] [INFO]   -> Set field 'dispatchNotes' = "KEY TO HOUSE UNDER FLOORMAT IN THE CAR  [01\/26\/26 21:02:15 SVOKOUN2] [EMS] FELL OUT OF CHAIR UNKOWN INJURY  [01\/26\/26 21:02:09 SVOKOUN2] Event spawned from FALL VICTIM.  [01\/26\/2026 21:01:45 SVOKOUN2]"
[2026-01-27 03:02:25] [INFO]   -> Set field 'cADLog' = "KEY TO HOUSE UNDER FLOORMAT IN THE CAR  [01\/26\/26 21:02:15 SVOKOUN2] [EMS] FELL OUT OF CHAIR UNKOWN INJURY  [01\/26\/26 21:02:09 SVOKOUN2] Event spawned from FALL VICTIM.  [01\/26\/2026 21:01:45 SVOKOUN2]"
[2026-01-27 03:02:25] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 03:02:25] [INFO]   -> Found value: COOKEVILLE
[2026-01-27 03:02:25] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-01-27 03:02:25] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 03:02:25] [INFO]   -> Found value: CHESTER KING
[2026-01-27 03:02:25] [INFO]   -> Set field 'streetName' = "CHESTER KING"
[2026-01-27 03:02:25] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 03:02:25] [INFO]   -> Found value: RD
[2026-01-27 03:02:25] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 03:02:25] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 03:02:25] [INFO]   -> Found value: 3375 CHESTER KING RD
[2026-01-27 03:02:25] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "3375 CHESTER KING RD"
[2026-01-27 03:02:25] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-01-27 03:02:25] [INFO] Concatenating street name and type
[2026-01-27 03:02:25] [INFO]   -> Combined street name: CHESTER KING RD
[2026-01-27 03:02:25] [INFO] Built locationCoordinates from lat/lng: 36.22228,-85.55058
[2026-01-27 03:02:25] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nRESC","incidentInternalId":"2026000239","dispatchRunNumber":"2026000239","incidentTypeValue1":"FALL VICTIM","incidentLocationStreetNumber":3375,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"businessName":"CECIL ODELL LEMONS","nERISIncidentLatitude":36.2222799999999978126652422361075878143310546875,"nERISIncidentLongitude":-85.550579999999996516635292209684848785400390625,"alarm":"2026-01-26 21:01:45","dispatched":"2026-01-26 21:02:16","incidentLocationCross":"GAINESBORO GRADE\/SHIPLEY RD","cADVehicleID":"PCFR","timedispatch":"2026-01-26 21:02:16","policeReportNumber":"20260009732","dispatchNotes":"KEY TO HOUSE UNDER FLOORMAT IN THE CAR  [01\/26\/26 21:02:15 SVOKOUN2] [EMS] FELL OUT OF CHAIR UNKOWN INJURY  [01\/26\/26 21:02:09 SVOKOUN2] Event spawned from FALL VICTIM.  [01\/26\/2026 21:01:45 SVOKOUN2]","cADLog":"KEY TO HOUSE UNDER FLOORMAT IN THE CAR  [01\/26\/26 21:02:15 SVOKOUN2] [EMS] FELL OUT OF CHAIR UNKOWN INJURY  [01\/26\/26 21:02:09 SVOKOUN2] Event spawned from FALL VICTIM.  [01\/26\/2026 21:01:45 SVOKOUN2]","incidentLocationCity":"COOKEVILLE","streetName":"CHESTER KING RD","incidentAddressTextVersionStreet":"3375 CHESTER KING RD","locationCoordinates":"36.22228,-85.55058"}
[2026-01-27 03:02:25] [INFO] Number of extracted fields: 22
[2026-01-27 03:02:25] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
RESC'
[2026-01-27 03:02:25] [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-01-27 03:02:25] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","RESC"]
[2026-01-27 03:02:25] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 03:02:25] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 03:02:25] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","RESC"]
[2026-01-27 03:02:25] [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-01-27 03:02:25] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 03:02:25] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-01-27 03:02:25] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 03:02:25] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 03:02:25] [INFO] Found existing IncidentTypeMapping with ID: 69372a143f466ddae
[2026-01-27 03:02:35] [INFO] Created new Dispatches record with ID: 69782ac1eea6ad50e
[2026-01-27 03:02:35] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 03:02:35] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 03:02:38] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009732_20260127_030224.XML
[2026-01-27 03:02:38] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009732_20260127_030224.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009732_20260127_030224.XML
[2026-01-27 03:02:38] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009732_20260127_030224.XML
[2026-01-27 04:07:05] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009748_20260127_040705.XML
[2026-01-27 04:07:05] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009748_20260127_040705.XML for user: 68f1466aed072ad4a
[2026-01-27 04:07:05] [INFO] File size: 4835 bytes
[2026-01-27 04:07:05] [INFO] Created FTPFiles record with ID: 697839e99d8395995
[2026-01-27 04:07:05] [INFO] About to extract fields from XML. File size: 4835 bytes
[2026-01-27 04:07:05] [INFO] Number of mappings: 28
[2026-01-27 04:07:05] [INFO] Starting XML parsing. Content length: 4835
[2026-01-27 04:07:05] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 04:07:05] [INFO] Processing 28 field mappings
[2026-01-27 04:07:05] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 04:07:05] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 04:07:05] [INFO]   -> Found value: PCFD
[2026-01-27 04:07:05] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD"
[2026-01-27 04:07:05] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 04:07:05] [INFO]   -> Found value: 2026000240
[2026-01-27 04:07:05] [INFO]   -> Set field 'incidentInternalId' = "2026000240"
[2026-01-27 04:07:05] [INFO]   -> Set field 'dispatchRunNumber' = "2026000240"
[2026-01-27 04:07:05] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 04:07:05] [INFO]   -> Found value: CARBON MONOXIDE ALARM
[2026-01-27 04:07:05] [INFO]   -> Set field 'incidentTypeValue1' = "CARBON MONOXIDE ALARM"
[2026-01-27 04:07:05] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 04:07:05] [INFO]   -> Found value: 817
[2026-01-27 04:07:05] [INFO]   -> Set field 'incidentLocationStreetNumber' = 817
[2026-01-27 04:07:05] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 04:07:05] [INFO]   -> Found value: TN
[2026-01-27 04:07:05] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 04:07:05] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 04:07:05] [INFO]   -> Found value: 38501
[2026-01-27 04:07:05] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-01-27 04:07:05] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 04:07:05] [INFO]   -> Found value: 36.18879
[2026-01-27 04:07:05] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1887899999999973488229443319141864776611328125
[2026-01-27 04:07:05] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 04:07:05] [INFO]   -> Found value: -85.56007
[2026-01-27 04:07:05] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.56006999999999607098288834095001220703125
[2026-01-27 04:07:05] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 04:07:05] [INFO]   -> Found value: 2026-01-26 22:04:14
[2026-01-27 04:07:05] [INFO]   -> Set field 'alarm' = "2026-01-26 22:04:14"
[2026-01-27 04:07:05] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 04:07:05] [INFO]   -> Found value: 2026-01-26 22:07:00
[2026-01-27 04:07:05] [INFO]   -> Set field 'dispatched' = "2026-01-26 22:07:00"
[2026-01-27 04:07:05] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 04:07:05] [INFO]   -> Found value: PIPPIN RD
[2026-01-27 04:07:05] [INFO]   -> Set field 'incidentLocationCross' = "PIPPIN RD"
[2026-01-27 04:07:05] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 04:07:05] [INFO]   -> Found value: EN16
[2026-01-27 04:07:05] [INFO]   -> Set field 'cADVehicleID' = "EN16"
[2026-01-27 04:07:05] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 04:07:05] [INFO]   -> Found value: 2026-01-26 22:07:00
[2026-01-27 04:07:05] [INFO]   -> Set field 'timedispatch' = "2026-01-26 22:07:00"
[2026-01-27 04:07:05] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 04:07:05] [INFO]   -> No value found (null or empty)
[2026-01-27 04:07:05] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 04:07:05] [INFO]   -> Found value: 20260009748
[2026-01-27 04:07:05] [INFO]   -> Set field 'policeReportNumber' = "20260009748"
[2026-01-27 04:07:05] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 04:07:05] [INFO]   -> Found value: THEY DO HAVE A GAS STOVE PER CALLER  [01/26/26 22:05:07 SVOKOUN2] EVERYONE GETTING OUT  [01/26/26 22...
[2026-01-27 04:07:05] [INFO]   -> Set field 'dispatchNotes' = "THEY DO HAVE A GAS STOVE PER CALLER  [01\/26\/26 22:05:07 SVOKOUN2] EVERYONE GETTING OUT  [01\/26\/26 22:04:54 SVOKOUN2] GOING OF FOR 5 MINS  [01\/26\/26 22:04:38 SVOKOUN2]"
[2026-01-27 04:07:05] [INFO]   -> Set field 'cADLog' = "THEY DO HAVE A GAS STOVE PER CALLER  [01\/26\/26 22:05:07 SVOKOUN2] EVERYONE GETTING OUT  [01\/26\/26 22:04:54 SVOKOUN2] GOING OF FOR 5 MINS  [01\/26\/26 22:04:38 SVOKOUN2]"
[2026-01-27 04:07:05] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 04:07:05] [INFO]   -> Found value: COOKEVILLE
[2026-01-27 04:07:05] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-01-27 04:07:05] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 04:07:05] [INFO]   -> Found value: LINDSEY
[2026-01-27 04:07:05] [INFO]   -> Set field 'streetName' = "LINDSEY"
[2026-01-27 04:07:05] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 04:07:05] [INFO]   -> Found value: LN
[2026-01-27 04:07:05] [INFO]   -> Set field 'streetType' = "LN"
[2026-01-27 04:07:05] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 04:07:05] [INFO]   -> Found value: 817 LINDSEY LN
[2026-01-27 04:07:05] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "817 LINDSEY LN"
[2026-01-27 04:07:05] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 04:07:05] [INFO] Concatenating street name and type
[2026-01-27 04:07:05] [INFO]   -> Combined street name: LINDSEY LN
[2026-01-27 04:07:05] [INFO] Built locationCoordinates from lat/lng: 36.18879,-85.56007
[2026-01-27 04:07:05] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD","incidentInternalId":"2026000240","dispatchRunNumber":"2026000240","incidentTypeValue1":"CARBON MONOXIDE ALARM","incidentLocationStreetNumber":817,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"nERISIncidentLatitude":36.1887899999999973488229443319141864776611328125,"nERISIncidentLongitude":-85.56006999999999607098288834095001220703125,"alarm":"2026-01-26 22:04:14","dispatched":"2026-01-26 22:07:00","incidentLocationCross":"PIPPIN RD","cADVehicleID":"EN16","timedispatch":"2026-01-26 22:07:00","policeReportNumber":"20260009748","dispatchNotes":"THEY DO HAVE A GAS STOVE PER CALLER  [01\/26\/26 22:05:07 SVOKOUN2] EVERYONE GETTING OUT  [01\/26\/26 22:04:54 SVOKOUN2] GOING OF FOR 5 MINS  [01\/26\/26 22:04:38 SVOKOUN2]","cADLog":"THEY DO HAVE A GAS STOVE PER CALLER  [01\/26\/26 22:05:07 SVOKOUN2] EVERYONE GETTING OUT  [01\/26\/26 22:04:54 SVOKOUN2] GOING OF FOR 5 MINS  [01\/26\/26 22:04:38 SVOKOUN2]","incidentLocationCity":"COOKEVILLE","streetName":"LINDSEY LN","incidentAddressTextVersionStreet":"817 LINDSEY LN","locationCoordinates":"36.18879,-85.56007"}
[2026-01-27 04:07:05] [INFO] Number of extracted fields: 21
[2026-01-27 04:07:05] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD'
[2026-01-27 04:07:05] [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-01-27 04:07:05] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD"]
[2026-01-27 04:07:05] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 04:07:05] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 04:07:05] [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-01-27 04:07:05] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 04:07:05] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 04:07:06] [INFO] Found existing IncidentTypeMapping with ID: 6962dcfa2cd91c49b
[2026-01-27 04:07:14] [INFO] Created new Dispatches record with ID: 697839ea64e43144c
[2026-01-27 04:07:14] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 04:07:14] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 04:07:17] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009748_20260127_040705.XML
[2026-01-27 04:07:17] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009748_20260127_040705.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009748_20260127_040705.XML
[2026-01-27 04:07:17] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009748_20260127_040705.XML
[2026-01-27 07:10:35] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009767_20260127_071035.XML
[2026-01-27 07:10:35] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009767_20260127_071035.XML for user: 68f1466aed072ad4a
[2026-01-27 07:10:35] [INFO] File size: 4812 bytes
[2026-01-27 07:10:35] [INFO] Created FTPFiles record with ID: 697864eba5789aeb5
[2026-01-27 07:10:35] [INFO] About to extract fields from XML. File size: 4812 bytes
[2026-01-27 07:10:35] [INFO] Number of mappings: 28
[2026-01-27 07:10:35] [INFO] Starting XML parsing. Content length: 4812
[2026-01-27 07:10:35] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 07:10:35] [INFO] Processing 28 field mappings
[2026-01-27 07:10:35] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 07:10:35] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 07:10:35] [INFO]   -> Found value: PCFD
[2026-01-27 07:10:35] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD"
[2026-01-27 07:10:35] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 07:10:35] [INFO]   -> Found value: 2026000241
[2026-01-27 07:10:35] [INFO]   -> Set field 'incidentInternalId' = "2026000241"
[2026-01-27 07:10:35] [INFO]   -> Set field 'dispatchRunNumber' = "2026000241"
[2026-01-27 07:10:35] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 07:10:35] [INFO]   -> Found value: FIRE INVESTIGATION
[2026-01-27 07:10:35] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE INVESTIGATION"
[2026-01-27 07:10:35] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 07:10:35] [INFO]   -> Found value: 3158
[2026-01-27 07:10:35] [INFO]   -> Set field 'incidentLocationStreetNumber' = 3158
[2026-01-27 07:10:35] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 07:10:35] [INFO]   -> Found value: TN
[2026-01-27 07:10:35] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 07:10:35] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 07:10:35] [INFO]   -> Found value: 38501
[2026-01-27 07:10:35] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-01-27 07:10:35] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 07:10:35] [INFO]   -> Found value: 36.15664
[2026-01-27 07:10:35] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.15664000000000299905877909623086452484130859375
[2026-01-27 07:10:35] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 07:10:35] [INFO]   -> Found value: -85.57121
[2026-01-27 07:10:35] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.5712099999999935562300379388034343719482421875
[2026-01-27 07:10:35] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 07:10:35] [INFO]   -> Found value: 2026-01-27 01:08:01
[2026-01-27 07:10:35] [INFO]   -> Set field 'alarm' = "2026-01-27 01:08:01"
[2026-01-27 07:10:35] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 07:10:35] [INFO]   -> Found value: 2026-01-27 01:10:27
[2026-01-27 07:10:35] [INFO]   -> Set field 'dispatched' = "2026-01-27 01:10:27"
[2026-01-27 07:10:35] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 07:10:35] [INFO]   -> Found value: LOCUST GROVE RD/APPLE LN
[2026-01-27 07:10:35] [INFO]   -> Set field 'incidentLocationCross' = "LOCUST GROVE RD\/APPLE LN"
[2026-01-27 07:10:35] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 07:10:35] [INFO]   -> Found value: SQ11
[2026-01-27 07:10:35] [INFO]   -> Set field 'cADVehicleID' = "SQ11"
[2026-01-27 07:10:35] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 07:10:35] [INFO]   -> Found value: 2026-01-27 01:10:27
[2026-01-27 07:10:35] [INFO]   -> Set field 'timedispatch' = "2026-01-27 01:10:27"
[2026-01-27 07:10:35] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 07:10:35] [INFO]   -> No value found (null or empty)
[2026-01-27 07:10:35] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 07:10:35] [INFO]   -> Found value: 20260009767
[2026-01-27 07:10:35] [INFO]   -> Set field 'policeReportNumber' = "20260009767"
[2026-01-27 07:10:35] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 07:10:35] [INFO]   -> Found value: SMOKE FROM FIRE PLACE // NO FLAMES  [01/27/26 01:09:15 SVOKOUN2]
[2026-01-27 07:10:35] [INFO]   -> Set field 'dispatchNotes' = "SMOKE FROM FIRE PLACE \/\/ NO FLAMES  [01\/27\/26 01:09:15 SVOKOUN2]"
[2026-01-27 07:10:35] [INFO]   -> Set field 'cADLog' = "SMOKE FROM FIRE PLACE \/\/ NO FLAMES  [01\/27\/26 01:09:15 SVOKOUN2]"
[2026-01-27 07:10:35] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 07:10:35] [INFO]   -> Found value: COOKEVILLE
[2026-01-27 07:10:35] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-01-27 07:10:35] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 07:10:35] [INFO]   -> Found value: BUFFALO VALLEY
[2026-01-27 07:10:35] [INFO]   -> Set field 'streetName' = "BUFFALO VALLEY"
[2026-01-27 07:10:35] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 07:10:35] [INFO]   -> Found value: RD
[2026-01-27 07:10:35] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 07:10:35] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 07:10:35] [INFO]   -> Found value: 3158 BUFFALO VALLEY RD
[2026-01-27 07:10:35] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "3158 BUFFALO VALLEY RD"
[2026-01-27 07:10:35] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 07:10:35] [INFO] Concatenating street name and type
[2026-01-27 07:10:35] [INFO]   -> Combined street name: BUFFALO VALLEY RD
[2026-01-27 07:10:35] [INFO] Built locationCoordinates from lat/lng: 36.15664,-85.57121
[2026-01-27 07:10:35] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD","incidentInternalId":"2026000241","dispatchRunNumber":"2026000241","incidentTypeValue1":"FIRE INVESTIGATION","incidentLocationStreetNumber":3158,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"nERISIncidentLatitude":36.15664000000000299905877909623086452484130859375,"nERISIncidentLongitude":-85.5712099999999935562300379388034343719482421875,"alarm":"2026-01-27 01:08:01","dispatched":"2026-01-27 01:10:27","incidentLocationCross":"LOCUST GROVE RD\/APPLE LN","cADVehicleID":"SQ11","timedispatch":"2026-01-27 01:10:27","policeReportNumber":"20260009767","dispatchNotes":"SMOKE FROM FIRE PLACE \/\/ NO FLAMES  [01\/27\/26 01:09:15 SVOKOUN2]","cADLog":"SMOKE FROM FIRE PLACE \/\/ NO FLAMES  [01\/27\/26 01:09:15 SVOKOUN2]","incidentLocationCity":"COOKEVILLE","streetName":"BUFFALO VALLEY RD","incidentAddressTextVersionStreet":"3158 BUFFALO VALLEY RD","locationCoordinates":"36.15664,-85.57121"}
[2026-01-27 07:10:35] [INFO] Number of extracted fields: 21
[2026-01-27 07:10:35] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD'
[2026-01-27 07:10:35] [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-01-27 07:10:35] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD"]
[2026-01-27 07:10:35] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 07:10:35] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 07:10:36] [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-01-27 07:10:36] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 07:10:36] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 07:10:36] [INFO] Found existing IncidentTypeMapping with ID: 693fd3603dbcab356
[2026-01-27 07:10:45] [INFO] Created new Dispatches record with ID: 697864ec66c8f870d
[2026-01-27 07:10:45] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 07:10:45] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 07:10:48] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009767_20260127_071035.XML
[2026-01-27 07:10:48] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009767_20260127_071035.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009767_20260127_071035.XML
[2026-01-27 07:10:48] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009767_20260127_071035.XML
[2026-01-27 08:01:46] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009773_20260127_080146.XML
[2026-01-27 08:01:46] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009773_20260127_080146.XML for user: 68f1466aed072ad4a
[2026-01-27 08:01:46] [INFO] File size: 5410 bytes
[2026-01-27 08:01:46] [INFO] Created FTPFiles record with ID: 697870ea627aeb009
[2026-01-27 08:01:46] [INFO] About to extract fields from XML. File size: 5410 bytes
[2026-01-27 08:01:46] [INFO] Number of mappings: 28
[2026-01-27 08:01:46] [INFO] Starting XML parsing. Content length: 5410
[2026-01-27 08:01:46] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 08:01:46] [INFO] Processing 28 field mappings
[2026-01-27 08:01:46] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 08:01:46] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 08:01:46] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 08:01:46] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-01-27 08:01:46] [INFO]   -> Found value: PCFD
EMS
RESC
[2026-01-27 08:01:46] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nRESC"
[2026-01-27 08:01:46] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 08:01:46] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-01-27 08:01:46] [INFO]   -> Found value: 2026000242
[2026-01-27 08:01:46] [INFO]   -> Set field 'incidentInternalId' = "2026000242"
[2026-01-27 08:01:46] [INFO]   -> Set field 'dispatchRunNumber' = "2026000242"
[2026-01-27 08:01:46] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 08:01:46] [INFO]   -> Found value: MENTAL STATUS CHANGES
[2026-01-27 08:01:46] [INFO]   -> Set field 'incidentTypeValue1' = "MENTAL STATUS CHANGES"
[2026-01-27 08:01:46] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 08:01:46] [INFO]   -> Found value: 2350
[2026-01-27 08:01:46] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2350
[2026-01-27 08:01:46] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 08:01:46] [INFO]   -> Found value: TN
[2026-01-27 08:01:46] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 08:01:46] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 08:01:46] [INFO]   -> Found value: 38501
[2026-01-27 08:01:46] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-01-27 08:01:46] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 08:01:46] [INFO]   -> Found value: 36.18684
[2026-01-27 08:01:46] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.18683999999999656438376405276358127593994140625
[2026-01-27 08:01:46] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 08:01:46] [INFO]   -> Found value: -85.54530
[2026-01-27 08:01:46] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.545299999999997453414835035800933837890625
[2026-01-27 08:01:46] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 08:01:46] [INFO]   -> Found value: 2026-01-27 02:00:59
[2026-01-27 08:01:46] [INFO]   -> Set field 'alarm' = "2026-01-27 02:00:59"
[2026-01-27 08:01:46] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 08:01:46] [INFO]   -> Found value: 2026-01-27 02:01:41
[2026-01-27 08:01:46] [INFO]   -> Set field 'dispatched' = "2026-01-27 02:01:41"
[2026-01-27 08:01:46] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 08:01:46] [INFO]   -> Found value: SUN VALLEY CIR/SUN VALLEY RD
[2026-01-27 08:01:46] [INFO]   -> Set field 'incidentLocationCross' = "SUN VALLEY CIR\/SUN VALLEY RD"
[2026-01-27 08:01:46] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 08:01:46] [INFO]   -> Found value: PCFR
[2026-01-27 08:01:46] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-01-27 08:01:46] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 08:01:46] [INFO]   -> Found value: 2026-01-27 02:01:41
[2026-01-27 08:01:46] [INFO]   -> Set field 'timedispatch' = "2026-01-27 02:01:41"
[2026-01-27 08:01:46] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 08:01:46] [INFO]   -> No value found (null or empty)
[2026-01-27 08:01:46] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 08:01:46] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 08:01:46] [INFO]   -> Found value: 20260009773
[2026-01-27 08:01:46] [INFO]   -> Set field 'policeReportNumber' = "20260009773"
[2026-01-27 08:01:46] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 08:01:46] [INFO]   -> Found value: [EMS] GOING ON FOR 30 MINS  [01/27/26 02:01:19 SVOKOUN2] [EMS] VERY PALE AND NOT ACTING RIGHT  [01/2...
[2026-01-27 08:01:46] [INFO]   -> Set field 'dispatchNotes' = "[EMS] GOING ON FOR 30 MINS  [01\/27\/26 02:01:19 SVOKOUN2] [EMS] VERY PALE AND NOT ACTING RIGHT  [01\/27\/26 02:01:10 SVOKOUN2] Event spawned from MENTAL STATUS CHANGES.  [01\/27\/2026 02:00:59 SVOKOUN2] ELIZABETH LINDAHALL 24YOF  [01\/27\/26 02:00:55 SVOKOUN2]]"
[2026-01-27 08:01:46] [INFO]   -> Set field 'cADLog' = "[EMS] GOING ON FOR 30 MINS  [01\/27\/26 02:01:19 SVOKOUN2] [EMS] VERY PALE AND NOT ACTING RIGHT  [01\/27\/26 02:01:10 SVOKOUN2] Event spawned from MENTAL STATUS CHANGES.  [01\/27\/2026 02:00:59 SVOKOUN2] ELIZABETH LINDAHALL 24YOF  [01\/27\/26 02:00:55 SVOKOUN2]]"
[2026-01-27 08:01:46] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 08:01:46] [INFO]   -> Found value: COOKEVILLE
[2026-01-27 08:01:46] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-01-27 08:01:46] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 08:01:46] [INFO]   -> Found value: BENTON YOUNG
[2026-01-27 08:01:46] [INFO]   -> Set field 'streetName' = "BENTON YOUNG"
[2026-01-27 08:01:46] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 08:01:46] [INFO]   -> Found value: RD
[2026-01-27 08:01:46] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 08:01:46] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 08:01:46] [INFO]   -> Found value: 2350 BENTON YOUNG RD
[2026-01-27 08:01:46] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "2350 BENTON YOUNG RD"
[2026-01-27 08:01:46] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 08:01:46] [INFO] Concatenating street name and type
[2026-01-27 08:01:46] [INFO]   -> Combined street name: BENTON YOUNG RD
[2026-01-27 08:01:46] [INFO] Built locationCoordinates from lat/lng: 36.18684,-85.5453
[2026-01-27 08:01:46] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nRESC","incidentInternalId":"2026000242","dispatchRunNumber":"2026000242","incidentTypeValue1":"MENTAL STATUS CHANGES","incidentLocationStreetNumber":2350,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"nERISIncidentLatitude":36.18683999999999656438376405276358127593994140625,"nERISIncidentLongitude":-85.545299999999997453414835035800933837890625,"alarm":"2026-01-27 02:00:59","dispatched":"2026-01-27 02:01:41","incidentLocationCross":"SUN VALLEY CIR\/SUN VALLEY RD","cADVehicleID":"PCFR","timedispatch":"2026-01-27 02:01:41","policeReportNumber":"20260009773","dispatchNotes":"[EMS] GOING ON FOR 30 MINS  [01\/27\/26 02:01:19 SVOKOUN2] [EMS] VERY PALE AND NOT ACTING RIGHT  [01\/27\/26 02:01:10 SVOKOUN2] Event spawned from MENTAL STATUS CHANGES.  [01\/27\/2026 02:00:59 SVOKOUN2] ELIZABETH LINDAHALL 24YOF  [01\/27\/26 02:00:55 SVOKOUN2]]","cADLog":"[EMS] GOING ON FOR 30 MINS  [01\/27\/26 02:01:19 SVOKOUN2] [EMS] VERY PALE AND NOT ACTING RIGHT  [01\/27\/26 02:01:10 SVOKOUN2] Event spawned from MENTAL STATUS CHANGES.  [01\/27\/2026 02:00:59 SVOKOUN2] ELIZABETH LINDAHALL 24YOF  [01\/27\/26 02:00:55 SVOKOUN2]]","incidentLocationCity":"COOKEVILLE","streetName":"BENTON YOUNG RD","incidentAddressTextVersionStreet":"2350 BENTON YOUNG RD","locationCoordinates":"36.18684,-85.5453"}
[2026-01-27 08:01:46] [INFO] Number of extracted fields: 21
[2026-01-27 08:01:46] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
RESC'
[2026-01-27 08:01:46] [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-01-27 08:01:46] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","RESC"]
[2026-01-27 08:01:46] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 08:01:46] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 08:01:46] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","RESC"]
[2026-01-27 08:01:46] [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-01-27 08:01:46] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 08:01:46] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-01-27 08:01:46] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 08:01:46] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 08:01:46] [INFO] Found existing IncidentTypeMapping with ID: 693bcc48aa7d466fb
[2026-01-27 08:01:56] [INFO] Created new Dispatches record with ID: 697870eb2a4c83daa
[2026-01-27 08:01:56] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 08:01:57] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 08:02:00] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009773_20260127_080146.XML
[2026-01-27 08:02:00] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009773_20260127_080146.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009773_20260127_080146.XML
[2026-01-27 08:02:00] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009773_20260127_080146.XML
[2026-01-27 08:24:56] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009777_20260127_082456.XML
[2026-01-27 08:24:56] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009777_20260127_082456.XML for user: 68f1466aed072ad4a
[2026-01-27 08:24:56] [INFO] File size: 5173 bytes
[2026-01-27 08:24:56] [INFO] Created FTPFiles record with ID: 697876588daa24f04
[2026-01-27 08:24:56] [INFO] About to extract fields from XML. File size: 5173 bytes
[2026-01-27 08:24:56] [INFO] Number of mappings: 28
[2026-01-27 08:24:56] [INFO] Starting XML parsing. Content length: 5173
[2026-01-27 08:24:56] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 08:24:56] [INFO] Processing 28 field mappings
[2026-01-27 08:24:56] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 08:24:56] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 08:24:56] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 08:24:56] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-01-27 08:24:56] [INFO]   -> Found value: PCFD
EMS
RESC
[2026-01-27 08:24:56] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nRESC"
[2026-01-27 08:24:56] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 08:24:56] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-01-27 08:24:56] [INFO]   -> Found value: 2026000243
[2026-01-27 08:24:56] [INFO]   -> Set field 'incidentInternalId' = "2026000243"
[2026-01-27 08:24:56] [INFO]   -> Set field 'dispatchRunNumber' = "2026000243"
[2026-01-27 08:24:56] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 08:24:56] [INFO]   -> Found value: BREATHING PROBLEMS
[2026-01-27 08:24:56] [INFO]   -> Set field 'incidentTypeValue1' = "BREATHING PROBLEMS"
[2026-01-27 08:24:56] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 08:24:56] [INFO]   -> Found value: 164
[2026-01-27 08:24:56] [INFO]   -> Set field 'incidentLocationStreetNumber' = 164
[2026-01-27 08:24:56] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 08:24:56] [INFO]   -> Found value: TN
[2026-01-27 08:24:56] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 08:24:56] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 08:24:56] [INFO]   -> Found value: 38574
[2026-01-27 08:24:56] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-01-27 08:24:56] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 08:24:56] [INFO]   -> Found value: 36.11952
[2026-01-27 08:24:56] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.11952000000000140289557748474180698394775390625
[2026-01-27 08:24:56] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 08:24:56] [INFO]   -> Found value: -85.19721
[2026-01-27 08:24:56] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1972099999999983310772222466766834259033203125
[2026-01-27 08:24:56] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 08:24:56] [INFO]   -> Found value: 2026-01-27 02:24:40
[2026-01-27 08:24:56] [INFO]   -> Set field 'alarm' = "2026-01-27 02:24:40"
[2026-01-27 08:24:56] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 08:24:56] [INFO]   -> Found value: 2026-01-27 02:24:50
[2026-01-27 08:24:56] [INFO]   -> Set field 'dispatched' = "2026-01-27 02:24:50"
[2026-01-27 08:24:56] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 08:24:56] [INFO]   -> Found value: CLARKRANGE HWY/DRIPPING SPRINGS RD
[2026-01-27 08:24:56] [INFO]   -> Set field 'incidentLocationCross' = "CLARKRANGE HWY\/DRIPPING SPRINGS RD"
[2026-01-27 08:24:56] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 08:24:56] [INFO]   -> Found value: PCFR
[2026-01-27 08:24:56] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-01-27 08:24:56] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 08:24:56] [INFO]   -> Found value: 2026-01-27 02:24:50
[2026-01-27 08:24:56] [INFO]   -> Set field 'timedispatch' = "2026-01-27 02:24:50"
[2026-01-27 08:24:56] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 08:24:56] [INFO]   -> No value found (null or empty)
[2026-01-27 08:24:56] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 08:24:56] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 08:24:56] [INFO]   -> Found value: 20260009777
[2026-01-27 08:24:56] [INFO]   -> Set field 'policeReportNumber' = "20260009777"
[2026-01-27 08:24:56] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 08:24:56] [INFO]   -> Found value: Event spawned from BREATHING PROBLEMS.  [01/27/2026 02:24:40 SVOKOUN2]
[2026-01-27 08:24:56] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from BREATHING PROBLEMS.  [01\/27\/2026 02:24:40 SVOKOUN2]"
[2026-01-27 08:24:56] [INFO]   -> Set field 'cADLog' = "Event spawned from BREATHING PROBLEMS.  [01\/27\/2026 02:24:40 SVOKOUN2]"
[2026-01-27 08:24:56] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 08:24:56] [INFO]   -> Found value: MONTEREY
[2026-01-27 08:24:56] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-01-27 08:24:56] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 08:24:56] [INFO]   -> Found value: COPPERHEAD
[2026-01-27 08:24:56] [INFO]   -> Set field 'streetName' = "COPPERHEAD"
[2026-01-27 08:24:56] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 08:24:56] [INFO]   -> Found value: DR
[2026-01-27 08:24:56] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 08:24:56] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 08:24:56] [INFO]   -> Found value: 164 COPPERHEAD DR
[2026-01-27 08:24:56] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "164 COPPERHEAD DR"
[2026-01-27 08:24:56] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 08:24:56] [INFO] Concatenating street name and type
[2026-01-27 08:24:56] [INFO]   -> Combined street name: COPPERHEAD DR
[2026-01-27 08:24:56] [INFO] Built locationCoordinates from lat/lng: 36.11952,-85.19721
[2026-01-27 08:24:56] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nRESC","incidentInternalId":"2026000243","dispatchRunNumber":"2026000243","incidentTypeValue1":"BREATHING PROBLEMS","incidentLocationStreetNumber":164,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"nERISIncidentLatitude":36.11952000000000140289557748474180698394775390625,"nERISIncidentLongitude":-85.1972099999999983310772222466766834259033203125,"alarm":"2026-01-27 02:24:40","dispatched":"2026-01-27 02:24:50","incidentLocationCross":"CLARKRANGE HWY\/DRIPPING SPRINGS RD","cADVehicleID":"PCFR","timedispatch":"2026-01-27 02:24:50","policeReportNumber":"20260009777","dispatchNotes":"Event spawned from BREATHING PROBLEMS.  [01\/27\/2026 02:24:40 SVOKOUN2]","cADLog":"Event spawned from BREATHING PROBLEMS.  [01\/27\/2026 02:24:40 SVOKOUN2]","incidentLocationCity":"MONTEREY","streetName":"COPPERHEAD DR","incidentAddressTextVersionStreet":"164 COPPERHEAD DR","locationCoordinates":"36.11952,-85.19721"}
[2026-01-27 08:24:56] [INFO] Number of extracted fields: 21
[2026-01-27 08:24:56] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
RESC'
[2026-01-27 08:24:56] [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-01-27 08:24:56] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","RESC"]
[2026-01-27 08:24:56] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 08:24:56] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 08:24:56] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","RESC"]
[2026-01-27 08:24:56] [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-01-27 08:24:56] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 08:24:56] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-01-27 08:24:56] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 08:24:56] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 08:24:57] [INFO] Found existing IncidentTypeMapping with ID: 693e326c3c0e41cb3
[2026-01-27 08:25:06] [INFO] Created new Dispatches record with ID: 697876594a58133a1
[2026-01-27 08:25:06] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 08:25:06] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 08:25:10] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009777_20260127_082456.XML
[2026-01-27 08:25:10] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009777_20260127_082456.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009777_20260127_082456.XML
[2026-01-27 08:25:10] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009777_20260127_082456.XML
[2026-01-27 10:52:15] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009783_20260127_105215.XML
[2026-01-27 10:52:15] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009783_20260127_105215.XML for user: 68f1466aed072ad4a
[2026-01-27 10:52:15] [INFO] File size: 5177 bytes
[2026-01-27 10:52:15] [INFO] Created FTPFiles record with ID: 697898dfc60323f9a
[2026-01-27 10:52:15] [INFO] About to extract fields from XML. File size: 5177 bytes
[2026-01-27 10:52:15] [INFO] Number of mappings: 28
[2026-01-27 10:52:15] [INFO] Starting XML parsing. Content length: 5177
[2026-01-27 10:52:15] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 10:52:15] [INFO] Processing 28 field mappings
[2026-01-27 10:52:15] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 10:52:15] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 10:52:15] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 10:52:15] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-01-27 10:52:15] [INFO]   -> Found value: PCFD
EMS
[2026-01-27 10:52:15] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS"
[2026-01-27 10:52:15] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 10:52:15] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-01-27 10:52:15] [INFO]   -> Found value: 2026000244
[2026-01-27 10:52:15] [INFO]   -> Set field 'incidentInternalId' = "2026000244"
[2026-01-27 10:52:15] [INFO]   -> Set field 'dispatchRunNumber' = "2026000244"
[2026-01-27 10:52:15] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 10:52:15] [INFO]   -> Found value: MANPOWER - EMS ASSIST
[2026-01-27 10:52:15] [INFO]   -> Set field 'incidentTypeValue1' = "MANPOWER - EMS ASSIST"
[2026-01-27 10:52:15] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 10:52:15] [INFO]   -> Found value: 4386
[2026-01-27 10:52:15] [INFO]   -> Set field 'incidentLocationStreetNumber' = 4386
[2026-01-27 10:52:15] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 10:52:15] [INFO]   -> Found value: TN
[2026-01-27 10:52:15] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 10:52:15] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 10:52:15] [INFO]   -> Found value: 38501
[2026-01-27 10:52:15] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-01-27 10:52:15] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 10:52:15] [INFO]   -> Found value: 36.21029
[2026-01-27 10:52:15] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.2102900000000005320544005371630191802978515625
[2026-01-27 10:52:15] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 10:52:15] [INFO]   -> Found value: -85.59129
[2026-01-27 10:52:15] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.5912900000000007594280759803950786590576171875
[2026-01-27 10:52:15] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 10:52:15] [INFO]   -> Found value: 2026-01-27 04:51:17
[2026-01-27 10:52:15] [INFO]   -> Set field 'alarm' = "2026-01-27 04:51:17"
[2026-01-27 10:52:15] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 10:52:15] [INFO]   -> Found value: 2026-01-27 04:52:09
[2026-01-27 10:52:15] [INFO]   -> Set field 'dispatched' = "2026-01-27 04:52:09"
[2026-01-27 10:52:15] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 10:52:15] [INFO]   -> Found value: TULIP LN/WEST POINTE DR
[2026-01-27 10:52:15] [INFO]   -> Set field 'incidentLocationCross' = "TULIP LN\/WEST POINTE DR"
[2026-01-27 10:52:15] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 10:52:15] [INFO]   -> Found value: TK31
[2026-01-27 10:52:15] [INFO]   -> Set field 'cADVehicleID' = "TK31"
[2026-01-27 10:52:15] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 10:52:15] [INFO]   -> Found value: 2026-01-27 04:52:09
[2026-01-27 10:52:15] [INFO]   -> Set field 'timedispatch' = "2026-01-27 04:52:09"
[2026-01-27 10:52:15] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 10:52:15] [INFO]   -> No value found (null or empty)
[2026-01-27 10:52:15] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 10:52:15] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 10:52:15] [INFO]   -> Found value: 20260009783
[2026-01-27 10:52:15] [INFO]   -> Set field 'policeReportNumber' = "20260009783"
[2026-01-27 10:52:15] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 10:52:15] [INFO]   -> Found value: Event spawned from EMS NON-EMERGENCY.  [01/27/2026 04:51:17 BPICHE] UDTS: {733} UNIT DIRECT  [01/27/...
[2026-01-27 10:52:15] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 04:51:17 BPICHE] UDTS: {733} UNIT DIRECT  [01\/27\/26 04:45:22 BPICHE] PT HAS A CATHETER  CRAMPING VERY BADLY AND IS UNABLE TO URINATE  FEELS LIKE HE IS GOING TO FAINT FRONT DOOR UNLOCKED  [01\/27\/26 04:42:52 TSCOTT]]"
[2026-01-27 10:52:15] [INFO]   -> Set field 'cADLog' = "Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 04:51:17 BPICHE] UDTS: {733} UNIT DIRECT  [01\/27\/26 04:45:22 BPICHE] PT HAS A CATHETER  CRAMPING VERY BADLY AND IS UNABLE TO URINATE  FEELS LIKE HE IS GOING TO FAINT FRONT DOOR UNLOCKED  [01\/27\/26 04:42:52 TSCOTT]]"
[2026-01-27 10:52:15] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 10:52:15] [INFO]   -> Found value: COOKEVILLE
[2026-01-27 10:52:15] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-01-27 10:52:15] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 10:52:15] [INFO]   -> Found value: CUMBY
[2026-01-27 10:52:15] [INFO]   -> Set field 'streetName' = "CUMBY"
[2026-01-27 10:52:15] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 10:52:15] [INFO]   -> Found value: RD
[2026-01-27 10:52:15] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 10:52:15] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 10:52:15] [INFO]   -> Found value: 4386 CUMBY RD
[2026-01-27 10:52:15] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "4386 CUMBY RD"
[2026-01-27 10:52:15] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 10:52:15] [INFO] Concatenating street name and type
[2026-01-27 10:52:15] [INFO]   -> Combined street name: CUMBY RD
[2026-01-27 10:52:15] [INFO] Built locationCoordinates from lat/lng: 36.21029,-85.59129
[2026-01-27 10:52:15] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS","incidentInternalId":"2026000244","dispatchRunNumber":"2026000244","incidentTypeValue1":"MANPOWER - EMS ASSIST","incidentLocationStreetNumber":4386,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"nERISIncidentLatitude":36.2102900000000005320544005371630191802978515625,"nERISIncidentLongitude":-85.5912900000000007594280759803950786590576171875,"alarm":"2026-01-27 04:51:17","dispatched":"2026-01-27 04:52:09","incidentLocationCross":"TULIP LN\/WEST POINTE DR","cADVehicleID":"TK31","timedispatch":"2026-01-27 04:52:09","policeReportNumber":"20260009783","dispatchNotes":"Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 04:51:17 BPICHE] UDTS: {733} UNIT DIRECT  [01\/27\/26 04:45:22 BPICHE] PT HAS A CATHETER  CRAMPING VERY BADLY AND IS UNABLE TO URINATE  FEELS LIKE HE IS GOING TO FAINT FRONT DOOR UNLOCKED  [01\/27\/26 04:42:52 TSCOTT]]","cADLog":"Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 04:51:17 BPICHE] UDTS: {733} UNIT DIRECT  [01\/27\/26 04:45:22 BPICHE] PT HAS A CATHETER  CRAMPING VERY BADLY AND IS UNABLE TO URINATE  FEELS LIKE HE IS GOING TO FAINT FRONT DOOR UNLOCKED  [01\/27\/26 04:42:52 TSCOTT]]","incidentLocationCity":"COOKEVILLE","streetName":"CUMBY RD","incidentAddressTextVersionStreet":"4386 CUMBY RD","locationCoordinates":"36.21029,-85.59129"}
[2026-01-27 10:52:15] [INFO] Number of extracted fields: 21
[2026-01-27 10:52:15] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS'
[2026-01-27 10:52:15] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS', Parsed IDs = ["PCFD","EMS"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-01-27 10:52:15] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS"]
[2026-01-27 10:52:15] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 10:52:15] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 10:52:15] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS"]
[2026-01-27 10:52:16] [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-01-27 10:52:16] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 10:52:16] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 10:52:16] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 10:52:16] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 10:52:16] [INFO] Found existing IncidentTypeMapping with ID: 6938bcc5e565c9852
[2026-01-27 10:52:25] [INFO] Created new Dispatches record with ID: 697898e080906afa8
[2026-01-27 10:52:25] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 10:52:25] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 10:52:28] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009783_20260127_105215.XML
[2026-01-27 10:52:28] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009783_20260127_105215.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009783_20260127_105215.XML
[2026-01-27 10:52:28] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009783_20260127_105215.XML
[2026-01-27 12:01:05] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070102853.xml
[2026-01-27 12:01:05] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070102853.xml for user: 68920395733981a47
[2026-01-27 12:01:05] [INFO] File size: 4992 bytes
[2026-01-27 12:01:05] [INFO] Created FTPFiles record with ID: 6978a90187b4c11b7
[2026-01-27 12:01:05] [INFO] About to extract fields from XML. File size: 4992 bytes
[2026-01-27 12:01:05] [INFO] Number of mappings: 24
[2026-01-27 12:01:05] [INFO] Starting XML parsing. Content length: 4992
[2026-01-27 12:01:05] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:01:05] [INFO] Processing 24 field mappings
[2026-01-27 12:01:05] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:01:05] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:01:05] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:01:05] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:01:05] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:01:05] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:01:05] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:01:05] [INFO]   -> Found value: 37379
[2026-01-27 12:01:05] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:01:05] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:01:05] [INFO]   -> Found value: 10764
[2026-01-27 12:01:05] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:01:05] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:01:05] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:01:05] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:01:05] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:01:05] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:01:05] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:01:05] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:01:05] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:01:05] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:01:05] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:01:05] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:05] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:01:05] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:01:05] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:05] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:01:05] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:01:05] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:05] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:01:05] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:01:05] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:01:05] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:01:05] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:01:05] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:01:05] [INFO]   -> Found value: -85.13982
[2026-01-27 12:01:05] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:01:05] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:01:05] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:05] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 12:01:05] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:01:05] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:05] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:01:05] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:05] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:01:05] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:05] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:01:05] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:05] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:01:05] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:05] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:01:05] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:05] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:01:05] [INFO]   -> Found value: DR
[2026-01-27 12:01:05] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:01:05] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:01:05] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:05] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:01:05] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:01:05] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:01:05] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:01:05] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:01:05] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:05] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:01:05] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:01:05] [INFO]   -> Found value: SFD
[2026-01-27 12:01:05] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-01-27 12:01:05] [INFO] Finished extracting fields. Total fields extracted: 18
[2026-01-27 12:01:05] [INFO] Concatenating street name and type
[2026-01-27 12:01:05] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:01:05] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:01:05] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":null,"policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","cADAgencyIdentifier":"SFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:01:05] [INFO] Number of extracted fields: 18
[2026-01-27 12:01:05] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-01-27 12:01:05] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD', Parsed IDs = ["SFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-01-27 12:01:05] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-01-27 12:01:05] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:01:05] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:01:05] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:01:05] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:01:06] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:01:06] [INFO] Created new IncidentTypeMapping Data: {"cADIncidentType":"AFARES-AFA Residential","saasclientId":"681a1d681d6140e0c","name":"AFARES-AFA Residential"}
[2026-01-27 12:01:06] [INFO] Created new IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:01:08] [INFO] Created new Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:01:08] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27
[2026-01-27 12:01:08] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070102853.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070102853.xml
[2026-01-27 12:01:08] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070102853.xml
[2026-01-27 12:01:18] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070118027.xml
[2026-01-27 12:01:18] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070118027.xml for user: 68920395733981a47
[2026-01-27 12:01:18] [INFO] File size: 5127 bytes
[2026-01-27 12:01:18] [INFO] Created FTPFiles record with ID: 6978a90e6fe7266dc
[2026-01-27 12:01:18] [INFO] About to extract fields from XML. File size: 5127 bytes
[2026-01-27 12:01:18] [INFO] Number of mappings: 24
[2026-01-27 12:01:18] [INFO] Starting XML parsing. Content length: 5127
[2026-01-27 12:01:18] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:01:18] [INFO] Processing 24 field mappings
[2026-01-27 12:01:18] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:01:18] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:01:18] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:01:18] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:01:18] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:01:18] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:01:18] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:01:18] [INFO]   -> Found value: 37379
[2026-01-27 12:01:18] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:01:18] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:01:18] [INFO]   -> Found value: 10764
[2026-01-27 12:01:18] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:01:18] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:01:18] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:01:18] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:01:18] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:01:18] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:01:18] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:01:18] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:01:18] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:01:18] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:01:18] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:01:18] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:18] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:01:18] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:01:18] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:18] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:01:18] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:01:18] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:18] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:01:18] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:01:18] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:01:18] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:01:18] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:01:18] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:01:18] [INFO]   -> Found value: -85.13982
[2026-01-27 12:01:18] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:01:18] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:01:18] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:18] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 12:01:18] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:01:18] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:18] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:01:18] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:18] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:01:18] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:18] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:01:18] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:18] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:01:18] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:18] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:01:18] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:18] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:01:18] [INFO]   -> Found value: DR
[2026-01-27 12:01:18] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:01:18] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:01:18] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:18] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:01:18] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:01:18] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:01:18] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:01:18] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:01:18] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:01:18] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600"
[2026-01-27 12:01:18] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600"
[2026-01-27 12:01:18] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:01:18] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:01:18] [INFO]   -> Found value: SFD
[2026-01-27 12:01:18] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-01-27 12:01:18] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-01-27 12:01:18] [INFO] Concatenating street name and type
[2026-01-27 12:01:18] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:01:18] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:01:18] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":null,"policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600","cADAgencyIdentifier":"SFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:01:18] [INFO] Number of extracted fields: 20
[2026-01-27 12:01:18] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-01-27 12:01:18] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD', Parsed IDs = ["SFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-01-27 12:01:18] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-01-27 12:01:18] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:01:18] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:01:18] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:01:18] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:01:18] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:01:19] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:01:19] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:01:20] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:01:20] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070118027.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070118027.xml
[2026-01-27 12:01:20] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070118027.xml
[2026-01-27 12:01:23] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070123043.xml
[2026-01-27 12:01:23] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070123043.xml for user: 68920395733981a47
[2026-01-27 12:01:23] [INFO] File size: 5204 bytes
[2026-01-27 12:01:23] [INFO] Created FTPFiles record with ID: 6978a913740865c50
[2026-01-27 12:01:23] [INFO] About to extract fields from XML. File size: 5204 bytes
[2026-01-27 12:01:23] [INFO] Number of mappings: 24
[2026-01-27 12:01:23] [INFO] Starting XML parsing. Content length: 5204
[2026-01-27 12:01:23] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:01:23] [INFO] Processing 24 field mappings
[2026-01-27 12:01:23] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:01:23] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:01:23] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:01:23] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:01:23] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:01:23] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:01:23] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:01:23] [INFO]   -> Found value: 37379
[2026-01-27 12:01:23] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:01:23] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:01:23] [INFO]   -> Found value: 10764
[2026-01-27 12:01:23] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:01:23] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:01:23] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:01:23] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:01:23] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:01:23] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:01:23] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:01:23] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:01:23] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:01:23] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:01:23] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:01:23] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:23] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:01:23] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:01:23] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:23] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:01:23] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:01:23] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:23] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:01:23] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:01:23] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:01:23] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:01:23] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:01:23] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:01:23] [INFO]   -> Found value: -85.13982
[2026-01-27 12:01:23] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:01:23] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:01:23] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:23] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 12:01:23] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:01:23] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:23] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:01:23] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:23] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:01:23] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:23] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:01:23] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:23] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:01:23] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:23] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:01:23] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:23] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:01:23] [INFO]   -> Found value: DR
[2026-01-27 12:01:23] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:01:23] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:01:23] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:23] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:01:23] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:01:23] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:01:23] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:01:23] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:01:23] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:01:23] [INFO] Found 2 elements for 'Comment', concatenating 2 non-empty values
[2026-01-27 12:01:23] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:01:23] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY"
[2026-01-27 12:01:23] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY"
[2026-01-27 12:01:23] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:01:23] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:01:23] [INFO]   -> Found value: SFD
[2026-01-27 12:01:23] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-01-27 12:01:23] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-01-27 12:01:23] [INFO] Concatenating street name and type
[2026-01-27 12:01:23] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:01:23] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:01:23] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":null,"policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY","cADAgencyIdentifier":"SFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:01:23] [INFO] Number of extracted fields: 20
[2026-01-27 12:01:23] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-01-27 12:01:23] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD', Parsed IDs = ["SFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-01-27 12:01:23] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-01-27 12:01:23] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:01:23] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:01:23] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:01:23] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:01:23] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:01:24] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:01:24] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:01:24] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:01:24] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070123043.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070123043.xml
[2026-01-27 12:01:24] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070123043.xml
[2026-01-27 12:01:33] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070133153.xml
[2026-01-27 12:01:33] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070133153.xml for user: 68920395733981a47
[2026-01-27 12:01:33] [INFO] File size: 5289 bytes
[2026-01-27 12:01:33] [INFO] Created FTPFiles record with ID: 6978a91d88034225c
[2026-01-27 12:01:33] [INFO] About to extract fields from XML. File size: 5289 bytes
[2026-01-27 12:01:33] [INFO] Number of mappings: 24
[2026-01-27 12:01:33] [INFO] Starting XML parsing. Content length: 5289
[2026-01-27 12:01:33] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:01:33] [INFO] Processing 24 field mappings
[2026-01-27 12:01:33] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:01:33] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:01:33] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:01:33] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:01:33] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:01:33] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:01:33] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:01:33] [INFO]   -> Found value: 37379
[2026-01-27 12:01:33] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:01:33] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:01:33] [INFO]   -> Found value: 10764
[2026-01-27 12:01:33] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:01:33] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:01:33] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:01:33] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:01:33] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:01:33] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:01:33] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:01:33] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:01:33] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:01:33] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:01:33] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:01:33] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:33] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:01:33] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:01:33] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:33] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:01:33] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:01:33] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:33] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:01:33] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:01:33] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:01:33] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:01:33] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:01:33] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:01:33] [INFO]   -> Found value: -85.13982
[2026-01-27 12:01:33] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:01:33] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:01:33] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:33] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 12:01:33] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:01:33] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:33] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:01:33] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:33] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:01:33] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:33] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:01:33] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:33] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:01:33] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:33] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:01:33] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:33] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:01:33] [INFO]   -> Found value: DR
[2026-01-27 12:01:33] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:01:33] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:01:33] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:33] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:01:33] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:01:33] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:01:33] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:01:33] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:01:33] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:01:33] [INFO] Found 3 elements for 'Comment', concatenating 3 non-empty values
[2026-01-27 12:01:33] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:01:33] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES"
[2026-01-27 12:01:33] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES"
[2026-01-27 12:01:33] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:01:33] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:01:33] [INFO]   -> Found value: SFD
[2026-01-27 12:01:33] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-01-27 12:01:33] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-01-27 12:01:33] [INFO] Concatenating street name and type
[2026-01-27 12:01:33] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:01:33] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:01:33] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":null,"policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES","cADAgencyIdentifier":"SFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:01:33] [INFO] Number of extracted fields: 20
[2026-01-27 12:01:33] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-01-27 12:01:33] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD', Parsed IDs = ["SFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-01-27 12:01:33] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-01-27 12:01:33] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:01:33] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:01:33] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:01:33] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:01:34] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:01:34] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:01:34] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:01:34] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:01:34] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070133153.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070133153.xml
[2026-01-27 12:01:34] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070133153.xml
[2026-01-27 12:01:43] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070143278.xml
[2026-01-27 12:01:43] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070143278.xml for user: 68920395733981a47
[2026-01-27 12:01:43] [INFO] File size: 5388 bytes
[2026-01-27 12:01:43] [INFO] Created FTPFiles record with ID: 6978a927a12641196
[2026-01-27 12:01:43] [INFO] About to extract fields from XML. File size: 5388 bytes
[2026-01-27 12:01:43] [INFO] Number of mappings: 24
[2026-01-27 12:01:43] [INFO] Starting XML parsing. Content length: 5388
[2026-01-27 12:01:43] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:01:43] [INFO] Processing 24 field mappings
[2026-01-27 12:01:43] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:01:43] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:01:43] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:01:43] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:01:43] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:01:43] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:01:43] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:01:43] [INFO]   -> Found value: 37379
[2026-01-27 12:01:43] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:01:43] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:01:43] [INFO]   -> Found value: 10764
[2026-01-27 12:01:43] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:01:43] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:01:43] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:01:43] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:01:43] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:01:43] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:01:43] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:01:43] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:01:43] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:01:43] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:01:43] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:01:43] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:43] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:01:43] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:01:43] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:43] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:01:43] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:01:43] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:43] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:01:43] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:01:43] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:01:43] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:01:43] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:01:43] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:01:43] [INFO]   -> Found value: -85.13982
[2026-01-27 12:01:43] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:01:43] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:01:43] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:43] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 12:01:43] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:01:43] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:43] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:01:43] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:43] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:01:43] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:43] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:01:43] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:43] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:01:43] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:43] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:01:43] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:43] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:01:43] [INFO]   -> Found value: DR
[2026-01-27 12:01:43] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:01:43] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:01:43] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:43] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:01:43] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:01:43] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:01:43] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:01:43] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:01:43] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:01:43] [INFO] Found 4 elements for 'Comment', concatenating 4 non-empty values
[2026-01-27 12:01:43] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:01:43] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE"
[2026-01-27 12:01:43] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE"
[2026-01-27 12:01:43] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:01:43] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:01:43] [INFO]   -> Found value: SFD
[2026-01-27 12:01:43] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-01-27 12:01:43] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-01-27 12:01:43] [INFO] Concatenating street name and type
[2026-01-27 12:01:43] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:01:43] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:01:43] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":null,"policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE","cADAgencyIdentifier":"SFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:01:43] [INFO] Number of extracted fields: 20
[2026-01-27 12:01:43] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-01-27 12:01:43] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD', Parsed IDs = ["SFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-01-27 12:01:43] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-01-27 12:01:43] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:01:43] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:01:43] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:01:43] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:01:44] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:01:44] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:01:44] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:01:44] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:01:44] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070143278.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070143278.xml
[2026-01-27 12:01:44] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070143278.xml
[2026-01-27 12:01:58] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070158484.xml
[2026-01-27 12:01:58] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070158484.xml for user: 68920395733981a47
[2026-01-27 12:01:58] [INFO] File size: 5486 bytes
[2026-01-27 12:01:58] [INFO] Created FTPFiles record with ID: 6978a936d3c1a22af
[2026-01-27 12:01:58] [INFO] About to extract fields from XML. File size: 5486 bytes
[2026-01-27 12:01:58] [INFO] Number of mappings: 24
[2026-01-27 12:01:58] [INFO] Starting XML parsing. Content length: 5486
[2026-01-27 12:01:58] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:01:58] [INFO] Processing 24 field mappings
[2026-01-27 12:01:58] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:01:58] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:01:58] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:01:58] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:01:58] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:01:58] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:01:58] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:01:58] [INFO]   -> Found value: 37379
[2026-01-27 12:01:58] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:01:58] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:01:58] [INFO]   -> Found value: 10764
[2026-01-27 12:01:58] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:01:58] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:01:58] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:01:58] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:01:58] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:01:58] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:01:58] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:01:58] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:01:58] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:01:58] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:01:58] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:01:58] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:58] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:01:58] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:01:58] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:58] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:01:58] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:01:58] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:58] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:01:58] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:01:58] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:01:58] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:01:58] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:01:58] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:01:58] [INFO]   -> Found value: -85.13982
[2026-01-27 12:01:58] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:01:58] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:01:58] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:01:58] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 12:01:58] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:01:58] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:58] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:01:58] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:58] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:01:58] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:58] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:01:58] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:58] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:01:58] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:58] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:01:58] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:58] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:01:58] [INFO]   -> Found value: DR
[2026-01-27 12:01:58] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:01:58] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:01:58] [INFO]   -> No value found (null or empty)
[2026-01-27 12:01:58] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:01:58] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:01:58] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:01:58] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:01:58] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:01:58] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:01:58] [INFO] Found 5 elements for 'Comment', concatenating 5 non-empty values
[2026-01-27 12:01:58] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:01:58] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS"
[2026-01-27 12:01:58] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS"
[2026-01-27 12:01:58] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:01:58] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:01:58] [INFO]   -> Found value: SFD
[2026-01-27 12:01:58] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-01-27 12:01:58] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-01-27 12:01:58] [INFO] Concatenating street name and type
[2026-01-27 12:01:58] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:01:58] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:01:58] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":null,"policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS","cADAgencyIdentifier":"SFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:01:58] [INFO] Number of extracted fields: 20
[2026-01-27 12:01:58] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-01-27 12:01:58] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD', Parsed IDs = ["SFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-01-27 12:01:58] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-01-27 12:01:58] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:01:59] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:01:59] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:01:59] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:01:59] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:01:59] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:01:59] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:01:59] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:01:59] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070158484.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070158484.xml
[2026-01-27 12:01:59] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070158484.xml
[2026-01-27 12:02:39] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070238988.xml
[2026-01-27 12:02:39] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070238988.xml for user: 68920395733981a47
[2026-01-27 12:02:39] [INFO] File size: 8618 bytes
[2026-01-27 12:02:39] [INFO] Created FTPFiles record with ID: 6978a95f59c684d90
[2026-01-27 12:02:39] [INFO] About to extract fields from XML. File size: 8618 bytes
[2026-01-27 12:02:39] [INFO] Number of mappings: 24
[2026-01-27 12:02:39] [INFO] Starting XML parsing. Content length: 8618
[2026-01-27 12:02:39] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:02:39] [INFO] Processing 24 field mappings
[2026-01-27 12:02:39] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:02:39] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:02:39] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:02:39] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:02:39] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:02:39] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:02:39] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:02:39] [INFO]   -> Found value: 37379
[2026-01-27 12:02:39] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:02:39] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:02:39] [INFO]   -> Found value: 10764
[2026-01-27 12:02:39] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:02:39] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:02:39] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:02:39] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:02:39] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:02:39] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:02:39] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:02:39] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:02:39] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:02:39] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:02:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:02:39] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:02:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:02:39] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:02:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:02:39] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:02:39] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:02:39] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:02:39] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:02:39] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:02:39] [INFO]   -> Found value: -85.13982
[2026-01-27 12:02:39] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:02:39] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:02:39] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:02:39] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:02:39] [INFO]   -> Found value: H1700
[2026-01-27 12:02:39] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:02:39] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:02:39] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:02:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:02:39] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:02:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:02:39] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:02:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:02:39] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:02:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:02:39] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:02:39] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:02:39] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:02:39] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:02:39] [INFO]   -> Found value: DR
[2026-01-27 12:02:39] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:02:39] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:02:39] [INFO]   -> Found value: 26-000009
[2026-01-27 12:02:39] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:02:39] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:02:39] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:02:39] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:02:39] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:02:39] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:02:39] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:02:39] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:02:39] [INFO] Found 7 elements for 'Comment', concatenating 7 non-empty values
[2026-01-27 12:02:39] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:02:39] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700."
[2026-01-27 12:02:39] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700."
[2026-01-27 12:02:39] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:02:39] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:02:39] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:02:39] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:02:39] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:02:39] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:02:39] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:02:39] [INFO] Concatenating street name and type
[2026-01-27 12:02:39] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:02:39] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:02:39] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:02:39] [INFO] Number of extracted fields: 29
[2026-01-27 12:02:39] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:02:39] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:02:39] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:02:39] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:02:39] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:02:39] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:02:39] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:02:39] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:02:39] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:02:39] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:02:39] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:02:39] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:02:40] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:02:40] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:02:40] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070238988.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070238988.xml
[2026-01-27 12:02:40] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070238988.xml
[2026-01-27 12:02:44] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070244042.xml
[2026-01-27 12:02:44] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070244042.xml for user: 68920395733981a47
[2026-01-27 12:02:44] [INFO] File size: 8749 bytes
[2026-01-27 12:02:44] [INFO] Created FTPFiles record with ID: 6978a9646a69e2a41
[2026-01-27 12:02:44] [INFO] About to extract fields from XML. File size: 8749 bytes
[2026-01-27 12:02:44] [INFO] Number of mappings: 24
[2026-01-27 12:02:44] [INFO] Starting XML parsing. Content length: 8749
[2026-01-27 12:02:44] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:02:44] [INFO] Processing 24 field mappings
[2026-01-27 12:02:44] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:02:44] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:02:44] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:02:44] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:02:44] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:02:44] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:02:44] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:02:44] [INFO]   -> Found value: 37379
[2026-01-27 12:02:44] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:02:44] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:02:44] [INFO]   -> Found value: 10764
[2026-01-27 12:02:44] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:02:44] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:02:44] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:02:44] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:02:44] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:02:44] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:02:44] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:02:44] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:02:44] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:02:44] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:02:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:02:44] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:02:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:02:44] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:02:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:02:44] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:02:44] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:02:44] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:02:44] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:02:44] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:02:44] [INFO]   -> Found value: -85.13982
[2026-01-27 12:02:44] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:02:44] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:02:44] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:02:44] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:02:44] [INFO]   -> Found value: H1700
[2026-01-27 12:02:44] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:02:44] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:02:44] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:02:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:02:44] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:02:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:02:44] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:02:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:02:44] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:02:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:02:44] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:02:44] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:02:44] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:02:44] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:02:44] [INFO]   -> Found value: DR
[2026-01-27 12:02:44] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:02:44] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:02:44] [INFO]   -> Found value: 26-000009
[2026-01-27 12:02:44] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:02:44] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:02:44] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:02:44] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:02:44] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:02:44] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:02:44] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:02:44] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:02:44] [INFO] Found 8 elements for 'Comment', concatenating 8 non-empty values
[2026-01-27 12:02:44] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:02:44] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY"
[2026-01-27 12:02:44] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY"
[2026-01-27 12:02:44] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:02:44] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:02:44] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:02:44] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:02:44] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:02:44] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:02:44] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:02:44] [INFO] Concatenating street name and type
[2026-01-27 12:02:44] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:02:44] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:02:44] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:02:44] [INFO] Number of extracted fields: 29
[2026-01-27 12:02:44] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:02:44] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:02:44] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:02:44] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:02:44] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:02:44] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:02:44] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:02:44] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:02:44] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:02:44] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:02:44] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:02:45] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:02:45] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:02:45] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:02:45] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070244042.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070244042.xml
[2026-01-27 12:02:45] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070244042.xml
[2026-01-27 12:02:59] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070259230.xml
[2026-01-27 12:02:59] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070259230.xml for user: 68920395733981a47
[2026-01-27 12:02:59] [INFO] File size: 8846 bytes
[2026-01-27 12:02:59] [INFO] Created FTPFiles record with ID: 6978a9739ba95947b
[2026-01-27 12:02:59] [INFO] About to extract fields from XML. File size: 8846 bytes
[2026-01-27 12:02:59] [INFO] Number of mappings: 24
[2026-01-27 12:02:59] [INFO] Starting XML parsing. Content length: 8846
[2026-01-27 12:02:59] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:02:59] [INFO] Processing 24 field mappings
[2026-01-27 12:02:59] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:02:59] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:02:59] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:02:59] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:02:59] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:02:59] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:02:59] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:02:59] [INFO]   -> Found value: 37379
[2026-01-27 12:02:59] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:02:59] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:02:59] [INFO]   -> Found value: 10764
[2026-01-27 12:02:59] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:02:59] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:02:59] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:02:59] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:02:59] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:02:59] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:02:59] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:02:59] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:02:59] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:02:59] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:02:59] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:02:59] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:02:59] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:02:59] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:02:59] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:02:59] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:02:59] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:02:59] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:02:59] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:02:59] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:02:59] [INFO]   -> Found value: -85.13982
[2026-01-27 12:02:59] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:02:59] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:02:59] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:02:59] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:02:59] [INFO]   -> Found value: H1700
[2026-01-27 12:02:59] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:02:59] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:02:59] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:02:59] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:02:59] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:02:59] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:02:59] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:02:59] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:02:59] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:02:59] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:02:59] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:02:59] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:02:59] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:02:59] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:02:59] [INFO]   -> Found value: DR
[2026-01-27 12:02:59] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:02:59] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:02:59] [INFO]   -> Found value: 26-000009
[2026-01-27 12:02:59] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:02:59] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:02:59] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:02:59] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:02:59] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:02:59] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:02:59] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:02:59] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:02:59] [INFO] Found 9 elements for 'Comment', concatenating 9 non-empty values
[2026-01-27 12:02:59] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:02:59] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY"
[2026-01-27 12:02:59] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY"
[2026-01-27 12:02:59] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:02:59] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:02:59] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:02:59] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:02:59] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:02:59] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:02:59] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:02:59] [INFO] Concatenating street name and type
[2026-01-27 12:02:59] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:02:59] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:02:59] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:02:59] [INFO] Number of extracted fields: 29
[2026-01-27 12:02:59] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:02:59] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:02:59] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:02:59] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:02:59] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:02:59] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:02:59] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:02:59] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:02:59] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:02:59] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:03:00] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:03:00] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:03:00] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:03:00] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:03:00] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070259230.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070259230.xml
[2026-01-27 12:03:00] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070259230.xml
[2026-01-27 12:03:04] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070304278.xml
[2026-01-27 12:03:04] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070304278.xml for user: 68920395733981a47
[2026-01-27 12:03:04] [INFO] File size: 8928 bytes
[2026-01-27 12:03:04] [INFO] Created FTPFiles record with ID: 6978a978a2050e28a
[2026-01-27 12:03:04] [INFO] About to extract fields from XML. File size: 8928 bytes
[2026-01-27 12:03:04] [INFO] Number of mappings: 24
[2026-01-27 12:03:04] [INFO] Starting XML parsing. Content length: 8928
[2026-01-27 12:03:04] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:03:04] [INFO] Processing 24 field mappings
[2026-01-27 12:03:04] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:03:04] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:03:04] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:03:04] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:03:04] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:03:04] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:03:04] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:03:04] [INFO]   -> Found value: 37379
[2026-01-27 12:03:04] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:03:04] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:03:04] [INFO]   -> Found value: 10764
[2026-01-27 12:03:04] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:03:04] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:03:04] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:03:04] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:03:04] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:03:04] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:03:04] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:03:04] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:03:04] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:03:04] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:03:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:03:04] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:03:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:03:04] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:03:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:03:04] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:03:04] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:03:04] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:03:04] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:03:04] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:03:04] [INFO]   -> Found value: -85.13982
[2026-01-27 12:03:04] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:03:04] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:03:04] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:03:04] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:03:04] [INFO]   -> Found value: H1700
[2026-01-27 12:03:04] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:03:04] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:03:04] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:03:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:03:04] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:03:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:03:04] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:03:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:03:04] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:03:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:03:04] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:03:04] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:03:04] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:03:04] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:03:04] [INFO]   -> Found value: DR
[2026-01-27 12:03:04] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:03:04] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:03:04] [INFO]   -> Found value: 26-000009
[2026-01-27 12:03:04] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:03:04] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:03:04] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:03:04] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:03:04] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:03:04] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:03:04] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:03:04] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:03:04] [INFO] Found 10 elements for 'Comment', concatenating 10 non-empty values
[2026-01-27 12:03:04] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:03:04] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS"
[2026-01-27 12:03:04] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS"
[2026-01-27 12:03:04] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:03:04] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:03:04] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:03:04] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:03:04] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:03:04] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:03:04] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:03:04] [INFO] Concatenating street name and type
[2026-01-27 12:03:04] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:03:04] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:03:04] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:03:04] [INFO] Number of extracted fields: 29
[2026-01-27 12:03:04] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:03:04] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:03:04] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:03:04] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:03:04] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:03:04] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:03:04] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:03:04] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:03:04] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:03:04] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:03:05] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:03:05] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:03:05] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:03:05] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:03:05] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070304278.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070304278.xml
[2026-01-27 12:03:05] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070304278.xml
[2026-01-27 12:03:39] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070339611.xml
[2026-01-27 12:03:39] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070339611.xml for user: 68920395733981a47
[2026-01-27 12:03:39] [INFO] File size: 9026 bytes
[2026-01-27 12:03:40] [INFO] Created FTPFiles record with ID: 6978a99c0563306b3
[2026-01-27 12:03:40] [INFO] About to extract fields from XML. File size: 9026 bytes
[2026-01-27 12:03:40] [INFO] Number of mappings: 24
[2026-01-27 12:03:40] [INFO] Starting XML parsing. Content length: 9026
[2026-01-27 12:03:40] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:03:40] [INFO] Processing 24 field mappings
[2026-01-27 12:03:40] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:03:40] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:03:40] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:03:40] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:03:40] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:03:40] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:03:40] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:03:40] [INFO]   -> Found value: 37379
[2026-01-27 12:03:40] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:03:40] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:03:40] [INFO]   -> Found value: 10764
[2026-01-27 12:03:40] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:03:40] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:03:40] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:03:40] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:03:40] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:03:40] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:03:40] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:03:40] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:03:40] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:03:40] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:03:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:03:40] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:03:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:03:40] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:03:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:03:40] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:03:40] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:03:40] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:03:40] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:03:40] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:03:40] [INFO]   -> Found value: -85.13982
[2026-01-27 12:03:40] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:03:40] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:03:40] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:03:40] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:03:40] [INFO]   -> Found value: H1700
[2026-01-27 12:03:40] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:03:40] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:03:40] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:03:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:03:40] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:03:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:03:40] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:03:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:03:40] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:03:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:03:40] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:03:40] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:03:40] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:03:40] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:03:40] [INFO]   -> Found value: DR
[2026-01-27 12:03:40] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:03:40] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:03:40] [INFO]   -> Found value: 26-000009
[2026-01-27 12:03:40] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:03:40] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:03:40] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:03:40] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:03:40] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:03:40] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:03:40] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:03:40] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:03:40] [INFO] Found 11 elements for 'Comment', concatenating 11 non-empty values
[2026-01-27 12:03:40] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:03:40] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE"
[2026-01-27 12:03:40] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE"
[2026-01-27 12:03:40] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:03:40] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:03:40] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:03:40] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:03:40] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:03:40] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:03:40] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:03:40] [INFO] Concatenating street name and type
[2026-01-27 12:03:40] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:03:40] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:03:40] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:03:40] [INFO] Number of extracted fields: 29
[2026-01-27 12:03:40] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:03:40] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:03:40] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:03:40] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:03:40] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:03:40] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:03:40] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:03:40] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:03:40] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:03:40] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:03:40] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:03:40] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:03:40] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:03:40] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:03:40] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070339611.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070339611.xml
[2026-01-27 12:03:40] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070339611.xml
[2026-01-27 12:04:30] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070430214.xml
[2026-01-27 12:04:30] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070430214.xml for user: 68920395733981a47
[2026-01-27 12:04:30] [INFO] File size: 9142 bytes
[2026-01-27 12:04:30] [INFO] Created FTPFiles record with ID: 6978a9ce94840133d
[2026-01-27 12:04:30] [INFO] About to extract fields from XML. File size: 9142 bytes
[2026-01-27 12:04:30] [INFO] Number of mappings: 24
[2026-01-27 12:04:30] [INFO] Starting XML parsing. Content length: 9142
[2026-01-27 12:04:30] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:04:30] [INFO] Processing 24 field mappings
[2026-01-27 12:04:30] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:04:30] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:04:30] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:04:30] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:04:30] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:04:30] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:04:30] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:04:30] [INFO]   -> Found value: 37379
[2026-01-27 12:04:30] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:04:30] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:04:30] [INFO]   -> Found value: 10764
[2026-01-27 12:04:30] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:04:30] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:04:30] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:04:30] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:04:30] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:04:30] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:04:30] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:04:30] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:04:30] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:04:30] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:04:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:04:30] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:04:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:04:30] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:04:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:04:30] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:04:30] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:04:30] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:04:30] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:04:30] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:04:30] [INFO]   -> Found value: -85.13982
[2026-01-27 12:04:30] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:04:30] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:04:30] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:04:30] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:04:30] [INFO]   -> Found value: H1700
[2026-01-27 12:04:30] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:04:30] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:04:30] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:04:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:04:30] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:04:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:04:30] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:04:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:04:30] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:04:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:04:30] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:04:30] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:04:30] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:04:30] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:04:30] [INFO]   -> Found value: DR
[2026-01-27 12:04:30] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:04:30] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:04:30] [INFO]   -> Found value: 26-000009
[2026-01-27 12:04:30] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:04:30] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:04:30] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:04:30] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:04:30] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:04:30] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:04:30] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:04:30] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:04:30] [INFO] Found 12 elements for 'Comment', concatenating 12 non-empty values
[2026-01-27 12:04:30] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:04:30] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY"
[2026-01-27 12:04:30] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY"
[2026-01-27 12:04:30] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:04:30] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:04:30] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:04:30] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:04:30] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:04:30] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:04:30] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:04:30] [INFO] Concatenating street name and type
[2026-01-27 12:04:30] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:04:30] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:04:30] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:04:30] [INFO] Number of extracted fields: 29
[2026-01-27 12:04:30] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:04:30] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:04:30] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:04:30] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:04:30] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:04:30] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:04:30] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:04:30] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:04:30] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:04:30] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:04:31] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:04:31] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:04:31] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:04:32] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:04:32] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070430214.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070430214.xml
[2026-01-27 12:04:32] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070430214.xml
[2026-01-27 12:04:40] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070440315.xml
[2026-01-27 12:04:40] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070440315.xml for user: 68920395733981a47
[2026-01-27 12:04:40] [INFO] File size: 9242 bytes
[2026-01-27 12:04:40] [INFO] Created FTPFiles record with ID: 6978a9d8b41b29f27
[2026-01-27 12:04:40] [INFO] About to extract fields from XML. File size: 9242 bytes
[2026-01-27 12:04:40] [INFO] Number of mappings: 24
[2026-01-27 12:04:40] [INFO] Starting XML parsing. Content length: 9242
[2026-01-27 12:04:40] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:04:40] [INFO] Processing 24 field mappings
[2026-01-27 12:04:40] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:04:40] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:04:40] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:04:40] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:04:40] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:04:40] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:04:40] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:04:40] [INFO]   -> Found value: 37379
[2026-01-27 12:04:40] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:04:40] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:04:40] [INFO]   -> Found value: 10764
[2026-01-27 12:04:40] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:04:40] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:04:40] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:04:40] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:04:40] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:04:40] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:04:40] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:04:40] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:04:40] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:04:40] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:04:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:04:40] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:04:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:04:40] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:04:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:04:40] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:04:40] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:04:40] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:04:40] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:04:40] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:04:40] [INFO]   -> Found value: -85.13982
[2026-01-27 12:04:40] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:04:40] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:04:40] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:04:40] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:04:40] [INFO]   -> Found value: H1700
[2026-01-27 12:04:40] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:04:40] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:04:40] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:04:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:04:40] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:04:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:04:40] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:04:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:04:40] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:04:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:04:40] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:04:40] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:04:40] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:04:40] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:04:40] [INFO]   -> Found value: DR
[2026-01-27 12:04:40] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:04:40] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:04:40] [INFO]   -> Found value: 26-000009
[2026-01-27 12:04:40] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:04:40] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:04:40] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:04:40] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:04:40] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:04:40] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:04:40] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:04:40] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:04:40] [INFO] Found 13 elements for 'Comment', concatenating 13 non-empty values
[2026-01-27 12:04:40] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:04:40] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN"
[2026-01-27 12:04:40] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN"
[2026-01-27 12:04:40] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:04:40] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:04:40] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:04:40] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:04:40] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:04:40] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:04:40] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:04:40] [INFO] Concatenating street name and type
[2026-01-27 12:04:40] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:04:40] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:04:40] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:04:40] [INFO] Number of extracted fields: 29
[2026-01-27 12:04:40] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:04:40] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:04:40] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:04:40] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:04:40] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:04:40] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:04:41] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:04:41] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:04:41] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:04:41] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:04:41] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:04:41] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:04:41] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:04:41] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:04:41] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070440315.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070440315.xml
[2026-01-27 12:04:41] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070440315.xml
[2026-01-27 12:05:05] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070505741.xml
[2026-01-27 12:05:05] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070505741.xml for user: 68920395733981a47
[2026-01-27 12:05:05] [INFO] File size: 9338 bytes
[2026-01-27 12:05:06] [INFO] Created FTPFiles record with ID: 6978a9f2282fdf432
[2026-01-27 12:05:06] [INFO] About to extract fields from XML. File size: 9338 bytes
[2026-01-27 12:05:06] [INFO] Number of mappings: 24
[2026-01-27 12:05:06] [INFO] Starting XML parsing. Content length: 9338
[2026-01-27 12:05:06] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:05:06] [INFO] Processing 24 field mappings
[2026-01-27 12:05:06] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:05:06] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:05:06] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:05:06] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:05:06] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:05:06] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:05:06] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:05:06] [INFO]   -> Found value: 37379
[2026-01-27 12:05:06] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:05:06] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:05:06] [INFO]   -> Found value: 10764
[2026-01-27 12:05:06] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:05:06] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:05:06] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:05:06] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:05:06] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:05:06] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:05:06] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:05:06] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:05:06] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:05:06] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:05:06] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:05:06] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:05:06] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:05:06] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:05:06] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:05:06] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:05:06] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:05:06] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:05:06] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:05:06] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:05:06] [INFO]   -> Found value: -85.13982
[2026-01-27 12:05:06] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:05:06] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:05:06] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:05:06] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:05:06] [INFO]   -> Found value: H1700
[2026-01-27 12:05:06] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:05:06] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:05:06] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:05:06] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:05:06] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:05:06] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:05:06] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:05:06] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:05:06] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:05:06] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:05:06] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:05:06] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:05:06] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:05:06] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:05:06] [INFO]   -> Found value: DR
[2026-01-27 12:05:06] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:05:06] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:05:06] [INFO]   -> Found value: 26-000009
[2026-01-27 12:05:06] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:05:06] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:05:06] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:05:06] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:05:06] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:05:06] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:05:06] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:05:06] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:05:06] [INFO] Found 14 elements for 'Comment', concatenating 14 non-empty values
[2026-01-27 12:05:06] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:05:06] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED"
[2026-01-27 12:05:06] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED"
[2026-01-27 12:05:06] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:05:06] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:05:06] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:05:06] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:05:06] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:05:06] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:05:06] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:05:06] [INFO] Concatenating street name and type
[2026-01-27 12:05:06] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:05:06] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:05:06] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:05:06] [INFO] Number of extracted fields: 29
[2026-01-27 12:05:06] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:05:06] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:05:06] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:05:06] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:05:06] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:05:06] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:05:06] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:05:06] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:05:06] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:05:06] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:05:06] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:05:06] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:05:07] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:05:07] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:05:07] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070505741.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070505741.xml
[2026-01-27 12:05:07] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070505741.xml
[2026-01-27 12:05:41] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070540944.xml
[2026-01-27 12:05:41] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070540944.xml for user: 68920395733981a47
[2026-01-27 12:05:41] [INFO] File size: 9439 bytes
[2026-01-27 12:05:41] [INFO] Created FTPFiles record with ID: 6978aa1551f7335de
[2026-01-27 12:05:41] [INFO] About to extract fields from XML. File size: 9439 bytes
[2026-01-27 12:05:41] [INFO] Number of mappings: 24
[2026-01-27 12:05:41] [INFO] Starting XML parsing. Content length: 9439
[2026-01-27 12:05:41] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:05:41] [INFO] Processing 24 field mappings
[2026-01-27 12:05:41] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:05:41] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:05:41] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:05:41] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:05:41] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:05:41] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:05:41] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:05:41] [INFO]   -> Found value: 37379
[2026-01-27 12:05:41] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:05:41] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:05:41] [INFO]   -> Found value: 10764
[2026-01-27 12:05:41] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:05:41] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:05:41] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:05:41] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:05:41] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:05:41] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:05:41] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:05:41] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:05:41] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:05:41] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:05:41] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:05:41] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:05:41] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:05:41] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:05:41] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:05:41] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:05:41] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:05:41] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:05:41] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:05:41] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:05:41] [INFO]   -> Found value: -85.13982
[2026-01-27 12:05:41] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:05:41] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:05:41] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:05:41] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:05:41] [INFO]   -> Found value: H1700
[2026-01-27 12:05:41] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:05:41] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:05:41] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:05:41] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:05:41] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:05:41] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:05:41] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:05:41] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:05:41] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:05:41] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:05:41] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:05:41] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:05:41] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:05:41] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:05:41] [INFO]   -> Found value: DR
[2026-01-27 12:05:41] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:05:41] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:05:41] [INFO]   -> Found value: 26-000009
[2026-01-27 12:05:41] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:05:41] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:05:41] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:05:41] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:05:41] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:05:41] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:05:41] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:05:41] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:05:41] [INFO] Found 15 elements for 'Comment', concatenating 15 non-empty values
[2026-01-27 12:05:41] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:05:41] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER"
[2026-01-27 12:05:41] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER"
[2026-01-27 12:05:41] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:05:41] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:05:41] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:05:41] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:05:41] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:05:41] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:05:41] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:05:41] [INFO] Concatenating street name and type
[2026-01-27 12:05:41] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:05:41] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:05:41] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:05:41] [INFO] Number of extracted fields: 29
[2026-01-27 12:05:41] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:05:41] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:05:41] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:05:41] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:05:41] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:05:41] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:05:41] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:05:41] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:05:41] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:05:41] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:05:41] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:05:41] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:05:42] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:05:42] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:05:42] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070540944.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070540944.xml
[2026-01-27 12:05:42] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070540944.xml
[2026-01-27 12:05:56] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070556165.xml
[2026-01-27 12:05:56] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070556165.xml for user: 68920395733981a47
[2026-01-27 12:05:56] [INFO] File size: 9544 bytes
[2026-01-27 12:05:56] [INFO] Created FTPFiles record with ID: 6978aa2488692b53a
[2026-01-27 12:05:56] [INFO] About to extract fields from XML. File size: 9544 bytes
[2026-01-27 12:05:56] [INFO] Number of mappings: 24
[2026-01-27 12:05:56] [INFO] Starting XML parsing. Content length: 9544
[2026-01-27 12:05:56] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:05:56] [INFO] Processing 24 field mappings
[2026-01-27 12:05:56] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:05:56] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:05:56] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:05:56] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:05:56] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:05:56] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:05:56] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:05:56] [INFO]   -> Found value: 37379
[2026-01-27 12:05:56] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:05:56] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:05:56] [INFO]   -> Found value: 10764
[2026-01-27 12:05:56] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:05:56] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:05:56] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:05:56] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:05:56] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:05:56] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:05:56] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:05:56] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:05:56] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:05:56] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:05:56] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:05:56] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:05:56] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:05:56] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:05:56] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:05:56] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:05:56] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:05:56] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:05:56] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:05:56] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:05:56] [INFO]   -> Found value: -85.13982
[2026-01-27 12:05:56] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:05:56] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:05:56] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:05:56] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:05:56] [INFO]   -> Found value: H1700
[2026-01-27 12:05:56] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-01-27 12:05:56] [INFO]   -> Set field 'name' = "H1700"
[2026-01-27 12:05:56] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:05:56] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:05:56] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:05:56] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:05:56] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:05:56] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:05:56] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:05:56] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:05:56] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:05:56] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:05:56] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:02:36"
[2026-01-27 12:05:56] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:05:56] [INFO]   -> Found value: DR
[2026-01-27 12:05:56] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:05:56] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:05:56] [INFO]   -> Found value: 26-000009
[2026-01-27 12:05:56] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:05:56] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:05:56] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:05:56] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:05:56] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:05:56] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:05:56] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:05:56] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:05:56] [INFO] Found 16 elements for 'Comment', concatenating 16 non-empty values
[2026-01-27 12:05:56] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:05:56] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL"
[2026-01-27 12:05:56] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL"
[2026-01-27 12:05:56] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:05:56] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:05:56] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:05:56] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-01-27 12:05:56] [INFO]   -> Found value: SFD
SFD
[2026-01-27 12:05:56] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-01-27 12:05:56] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:05:56] [INFO] Concatenating street name and type
[2026-01-27 12:05:56] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:05:56] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:05:56] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:02:36","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:05:56] [INFO] Number of extracted fields: 29
[2026-01-27 12:05:56] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-01-27 12:05:56] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD', Parsed IDs = ["SFD","SFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-01-27 12:05:56] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-01-27 12:05:56] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:05:56] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:05:56] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-01-27 12:05:56] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:05:56] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:05:56] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 12:05:56] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:05:56] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:05:57] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:05:57] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:05:57] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:05:57] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070556165.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070556165.xml
[2026-01-27 12:05:57] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070556165.xml
[2026-01-27 12:07:17] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070717071.xml
[2026-01-27 12:07:17] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070717071.xml for user: 68920395733981a47
[2026-01-27 12:07:17] [INFO] File size: 12107 bytes
[2026-01-27 12:07:17] [INFO] Created FTPFiles record with ID: 6978aa7575421a50e
[2026-01-27 12:07:17] [INFO] About to extract fields from XML. File size: 12107 bytes
[2026-01-27 12:07:17] [INFO] Number of mappings: 24
[2026-01-27 12:07:17] [INFO] Starting XML parsing. Content length: 12107
[2026-01-27 12:07:17] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:07:17] [INFO] Processing 24 field mappings
[2026-01-27 12:07:17] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:07:17] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:07:17] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:07:17] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:07:17] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:07:17] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:07:17] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:07:17] [INFO]   -> Found value: 37379
[2026-01-27 12:07:17] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:07:17] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:07:17] [INFO]   -> Found value: 10764
[2026-01-27 12:07:17] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:07:17] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:07:17] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:07:17] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:07:17] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:07:17] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:07:17] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:07:17] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:07:17] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:07:17] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:07:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:07:17] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:07:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:07:17] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:07:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:07:17] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:07:17] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:07:17] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:07:17] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:07:17] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:07:17] [INFO]   -> Found value: -85.13982
[2026-01-27 12:07:17] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:07:17] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:07:17] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:07:17] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:07:17] [INFO]   -> Found value: H1700A
[2026-01-27 12:07:17] [INFO]   -> Set field 'cADVehicleID' = "H1700A"
[2026-01-27 12:07:17] [INFO]   -> Set field 'name' = "H1700A"
[2026-01-27 12:07:17] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:07:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:07:17] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:07:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:07:17] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:07:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:07:17] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:07:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:07:17] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:07:17] [INFO]   -> Found value: 2026-01-27T07:07:16.417-05:00
[2026-01-27 12:07:17] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:07:16"
[2026-01-27 12:07:17] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:07:17] [INFO]   -> Found value: DR
[2026-01-27 12:07:17] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:07:17] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:07:17] [INFO]   -> Found value: 26-000009
[2026-01-27 12:07:17] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:07:17] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:07:17] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:07:17] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:07:17] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:07:17] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:07:17] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:07:17] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:07:17] [INFO] Found 16 elements for 'Comment', concatenating 16 non-empty values
[2026-01-27 12:07:17] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:07:17] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL"
[2026-01-27 12:07:17] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL"
[2026-01-27 12:07:17] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:07:17] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:07:17] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:07:17] [INFO] Found 3 elements for 'AgencyIdentifier', concatenating 3 non-empty values
[2026-01-27 12:07:17] [INFO]   -> Found value: SFD
SFD
SFD
[2026-01-27 12:07:17] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nSFD"
[2026-01-27 12:07:17] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:07:17] [INFO] Concatenating street name and type
[2026-01-27 12:07:17] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:07:17] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:07:17] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700A","name":"H1700A","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:07:16","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL","cADAgencyIdentifier":"SFD\nSFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:07:17] [INFO] Number of extracted fields: 29
[2026-01-27 12:07:17] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
SFD'
[2026-01-27 12:07:17] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
SFD', Parsed IDs = ["SFD","SFD","SFD"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 2
[2026-01-27 12:07:17] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","SFD"]
[2026-01-27 12:07:17] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:07:17] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:07:17] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","SFD"]
[2026-01-27 12:07:17] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:07:17] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:07:17] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-01-27 12:07:17] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:07:17] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:07:18] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:07:18] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:07:18] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:07:18] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070717071.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070717071.xml
[2026-01-27 12:07:18] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070717071.xml
[2026-01-27 12:08:38] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070838002.xml
[2026-01-27 12:08:38] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070838002.xml for user: 68920395733981a47
[2026-01-27 12:08:38] [INFO] File size: 12191 bytes
[2026-01-27 12:08:38] [INFO] Created FTPFiles record with ID: 6978aac6aa50e361b
[2026-01-27 12:08:38] [INFO] About to extract fields from XML. File size: 12191 bytes
[2026-01-27 12:08:38] [INFO] Number of mappings: 24
[2026-01-27 12:08:38] [INFO] Starting XML parsing. Content length: 12191
[2026-01-27 12:08:38] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:08:38] [INFO] Processing 24 field mappings
[2026-01-27 12:08:38] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:08:38] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:08:38] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:08:38] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:08:38] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:08:38] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:08:38] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:08:38] [INFO]   -> Found value: 37379
[2026-01-27 12:08:38] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:08:38] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:08:38] [INFO]   -> Found value: 10764
[2026-01-27 12:08:38] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:08:38] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:08:38] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:08:38] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:08:38] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:08:38] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:08:38] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:08:38] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:08:38] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:08:38] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:08:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:08:38] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:08:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:08:38] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:08:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:08:38] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:08:38] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:08:38] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:08:38] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:08:38] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:08:38] [INFO]   -> Found value: -85.13982
[2026-01-27 12:08:38] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:08:38] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:08:38] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:08:38] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:08:38] [INFO]   -> Found value: H1700A
[2026-01-27 12:08:38] [INFO]   -> Set field 'cADVehicleID' = "H1700A"
[2026-01-27 12:08:38] [INFO]   -> Set field 'name' = "H1700A"
[2026-01-27 12:08:38] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:08:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:08:38] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:08:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:08:38] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:08:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:08:38] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:08:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:08:38] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:08:38] [INFO]   -> Found value: 2026-01-27T07:07:16.417-05:00
[2026-01-27 12:08:38] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:07:16"
[2026-01-27 12:08:38] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:08:38] [INFO]   -> Found value: DR
[2026-01-27 12:08:38] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:08:38] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:08:38] [INFO]   -> Found value: 26-000009
[2026-01-27 12:08:38] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:08:38] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:08:38] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:08:38] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:08:38] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:08:38] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:08:38] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:08:38] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:08:38] [INFO] Found 17 elements for 'Comment', concatenating 17 non-empty values
[2026-01-27 12:08:38] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:08:38] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES"
[2026-01-27 12:08:38] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES"
[2026-01-27 12:08:38] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:08:38] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:08:38] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:08:38] [INFO] Found 3 elements for 'AgencyIdentifier', concatenating 3 non-empty values
[2026-01-27 12:08:38] [INFO]   -> Found value: SFD
SFD
SFD
[2026-01-27 12:08:38] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nSFD"
[2026-01-27 12:08:38] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:08:38] [INFO] Concatenating street name and type
[2026-01-27 12:08:38] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:08:38] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:08:38] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"H1700A","name":"H1700A","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:07:16","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES","cADAgencyIdentifier":"SFD\nSFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:08:38] [INFO] Number of extracted fields: 29
[2026-01-27 12:08:38] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
SFD'
[2026-01-27 12:08:38] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
SFD', Parsed IDs = ["SFD","SFD","SFD"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 2
[2026-01-27 12:08:38] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","SFD"]
[2026-01-27 12:08:38] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:08:38] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:08:38] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","SFD"]
[2026-01-27 12:08:39] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:08:39] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:08:39] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-01-27 12:08:39] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:08:39] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:08:39] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:08:39] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:08:39] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:08:39] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070838002.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127070838002.xml
[2026-01-27 12:08:39] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127070838002.xml
[2026-01-27 12:11:30] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071129754.xml
[2026-01-27 12:11:30] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071129754.xml for user: 68920395733981a47
[2026-01-27 12:11:30] [INFO] File size: 14652 bytes
[2026-01-27 12:11:30] [INFO] Created FTPFiles record with ID: 6978ab725ab39455f
[2026-01-27 12:11:30] [INFO] About to extract fields from XML. File size: 14652 bytes
[2026-01-27 12:11:30] [INFO] Number of mappings: 24
[2026-01-27 12:11:30] [INFO] Starting XML parsing. Content length: 14652
[2026-01-27 12:11:30] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:11:30] [INFO] Processing 24 field mappings
[2026-01-27 12:11:30] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:11:30] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:11:30] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:11:30] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:11:30] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:11:30] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:11:30] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:11:30] [INFO]   -> Found value: 37379
[2026-01-27 12:11:30] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:11:30] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:11:30] [INFO]   -> Found value: 10764
[2026-01-27 12:11:30] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:11:30] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:11:30] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:11:30] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:11:30] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:11:30] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:11:30] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:11:30] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:11:30] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:11:30] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:11:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'enroute' = null
[2026-01-27 12:11:30] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:11:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:11:30] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:11:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:11:30] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:11:30] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:11:30] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:11:30] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:11:30] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:11:30] [INFO]   -> Found value: -85.13982
[2026-01-27 12:11:30] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:11:30] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:11:30] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:11:30] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:11:30] [INFO]   -> Found value: C1SF
[2026-01-27 12:11:30] [INFO]   -> Set field 'cADVehicleID' = "C1SF"
[2026-01-27 12:11:30] [INFO]   -> Set field 'name' = "C1SF"
[2026-01-27 12:11:30] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:11:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:11:30] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:11:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:11:30] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:11:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:11:30] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:11:30] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-01-27 12:11:30] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:11:30] [INFO]   -> Found value: 2026-01-27T07:11:28.11-05:00
[2026-01-27 12:11:30] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:11:28"
[2026-01-27 12:11:30] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:11:30] [INFO]   -> Found value: DR
[2026-01-27 12:11:30] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:11:30] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:11:30] [INFO]   -> Found value: 26-000009
[2026-01-27 12:11:30] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:11:30] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:11:30] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:11:30] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:11:30] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:11:30] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:11:30] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:11:30] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:11:30] [INFO] Found 17 elements for 'Comment', concatenating 17 non-empty values
[2026-01-27 12:11:30] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:11:30] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES"
[2026-01-27 12:11:30] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES"
[2026-01-27 12:11:30] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:11:30] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:11:30] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:11:30] [INFO] Found 4 elements for 'AgencyIdentifier', concatenating 4 non-empty values
[2026-01-27 12:11:30] [INFO]   -> Found value: SFD
SFD
SFD
SFD
[2026-01-27 12:11:30] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nSFD\nSFD"
[2026-01-27 12:11:30] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:11:30] [INFO] Concatenating street name and type
[2026-01-27 12:11:30] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:11:30] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:11:30] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"C1SF","name":"C1SF","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-01-27 12:11:28","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES","cADAgencyIdentifier":"SFD\nSFD\nSFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:11:30] [INFO] Number of extracted fields: 29
[2026-01-27 12:11:30] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
SFD
SFD'
[2026-01-27 12:11:30] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
SFD
SFD', Parsed IDs = ["SFD","SFD","SFD","SFD"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 2
[2026-01-27 12:11:30] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","SFD","SFD"]
[2026-01-27 12:11:30] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:11:30] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:11:30] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","SFD","SFD"]
[2026-01-27 12:11:30] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:11:30] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:11:30] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 12:11:30] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:11:30] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:11:31] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:11:31] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:11:31] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:11:31] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071129754.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127071129754.xml
[2026-01-27 12:11:31] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071129754.xml
[2026-01-27 12:11:39] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071139837.xml
[2026-01-27 12:11:39] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071139837.xml for user: 68920395733981a47
[2026-01-27 12:11:39] [INFO] File size: 14796 bytes
[2026-01-27 12:11:40] [INFO] Created FTPFiles record with ID: 6978ab7c3f56c55f3
[2026-01-27 12:11:40] [INFO] About to extract fields from XML. File size: 14796 bytes
[2026-01-27 12:11:40] [INFO] Number of mappings: 24
[2026-01-27 12:11:40] [INFO] Starting XML parsing. Content length: 14796
[2026-01-27 12:11:40] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:11:40] [INFO] Processing 24 field mappings
[2026-01-27 12:11:40] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:11:40] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:11:40] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:11:40] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:11:40] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:11:40] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:11:40] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:11:40] [INFO]   -> Found value: 37379
[2026-01-27 12:11:40] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:11:40] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:11:40] [INFO]   -> Found value: 10764
[2026-01-27 12:11:40] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:11:40] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:11:40] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:11:40] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:11:40] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:11:40] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:11:40] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:11:40] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:11:40] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:11:40] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:11:40] [INFO]   -> Found value: 2026-01-27T07:11:37.767-05:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'enroute' = "2026-01-27 12:11:37"
[2026-01-27 12:11:40] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:11:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'onScene' = null
[2026-01-27 12:11:40] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:11:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:11:40] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:11:40] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:11:40] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:11:40] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:11:40] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:11:40] [INFO]   -> Found value: -85.13982
[2026-01-27 12:11:40] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:11:40] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:11:40] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:11:40] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:11:40] [INFO]   -> Found value: C1SF
[2026-01-27 12:11:40] [INFO]   -> Set field 'cADVehicleID' = "C1SF"
[2026-01-27 12:11:40] [INFO]   -> Set field 'name' = "C1SF"
[2026-01-27 12:11:40] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:11:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:11:40] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:11:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 12:11:40] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:11:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:11:40] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:11:40] [INFO]   -> Found value: 2026-01-27T07:11:37.767-05:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'timeenroutetoscene' = "2026-01-27 12:11:37"
[2026-01-27 12:11:40] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:11:40] [INFO]   -> Found value: 2026-01-27T07:11:28.11-05:00
[2026-01-27 12:11:40] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:11:28"
[2026-01-27 12:11:40] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:11:40] [INFO]   -> Found value: DR
[2026-01-27 12:11:40] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:11:40] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:11:40] [INFO]   -> Found value: 26-000009
[2026-01-27 12:11:40] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:11:40] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:11:40] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:11:40] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:11:40] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:11:40] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:11:40] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:11:40] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:11:40] [INFO] Found 17 elements for 'Comment', concatenating 17 non-empty values
[2026-01-27 12:11:40] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:11:40] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES"
[2026-01-27 12:11:40] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES"
[2026-01-27 12:11:40] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:11:40] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:11:40] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:11:40] [INFO] Found 4 elements for 'AgencyIdentifier', concatenating 4 non-empty values
[2026-01-27 12:11:40] [INFO]   -> Found value: SFD
SFD
SFD
SFD
[2026-01-27 12:11:40] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nSFD\nSFD"
[2026-01-27 12:11:40] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:11:40] [INFO] Concatenating street name and type
[2026-01-27 12:11:40] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:11:40] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:11:40] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":"2026-01-27 12:11:37","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"C1SF","name":"C1SF","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-01-27 12:11:37","timedispatch":"2026-01-27 12:11:28","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES","cADAgencyIdentifier":"SFD\nSFD\nSFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:11:40] [INFO] Number of extracted fields: 29
[2026-01-27 12:11:40] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
SFD
SFD'
[2026-01-27 12:11:40] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
SFD
SFD', Parsed IDs = ["SFD","SFD","SFD","SFD"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 2
[2026-01-27 12:11:40] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","SFD","SFD"]
[2026-01-27 12:11:40] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:11:40] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:11:40] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","SFD","SFD"]
[2026-01-27 12:11:40] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:11:40] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:11:40] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 12:11:40] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:11:40] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:11:40] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:11:41] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:11:41] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:11:41] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071139837.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127071139837.xml
[2026-01-27 12:11:41] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071139837.xml
[2026-01-27 12:17:19] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071718769.xml
[2026-01-27 12:17:19] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071718769.xml for user: 68920395733981a47
[2026-01-27 12:17:19] [INFO] File size: 14952 bytes
[2026-01-27 12:17:19] [INFO] Created FTPFiles record with ID: 6978accf6a3fbe26f
[2026-01-27 12:17:19] [INFO] About to extract fields from XML. File size: 14952 bytes
[2026-01-27 12:17:19] [INFO] Number of mappings: 24
[2026-01-27 12:17:19] [INFO] Starting XML parsing. Content length: 14952
[2026-01-27 12:17:19] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:17:19] [INFO] Processing 24 field mappings
[2026-01-27 12:17:19] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:17:19] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:17:19] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:17:19] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:17:19] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:17:19] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:17:19] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:17:19] [INFO]   -> Found value: 37379
[2026-01-27 12:17:19] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:17:19] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:17:19] [INFO]   -> Found value: 10764
[2026-01-27 12:17:19] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:17:19] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:17:19] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:17:19] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:17:19] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:17:19] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:17:19] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:17:19] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:17:19] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:17:19] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:17:19] [INFO]   -> Found value: 2026-01-27T07:11:37.767-05:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'enroute' = "2026-01-27 12:11:37"
[2026-01-27 12:17:19] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:17:19] [INFO]   -> Found value: 2026-01-27T07:17:18.003-05:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'onScene' = "2026-01-27 12:17:18"
[2026-01-27 12:17:19] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:17:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:17:19] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:17:19] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:17:19] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:17:19] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:17:19] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:17:19] [INFO]   -> Found value: -85.13982
[2026-01-27 12:17:19] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:17:19] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:17:19] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:17:19] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:17:19] [INFO]   -> Found value: C1SF
[2026-01-27 12:17:19] [INFO]   -> Set field 'cADVehicleID' = "C1SF"
[2026-01-27 12:17:19] [INFO]   -> Set field 'name' = "C1SF"
[2026-01-27 12:17:19] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:17:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:17:19] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:17:19] [INFO]   -> Found value: 2026-01-27T07:17:18.003-05:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'timeonscene' = "2026-01-27 12:17:18"
[2026-01-27 12:17:19] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:17:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:17:19] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:17:19] [INFO]   -> Found value: 2026-01-27T07:11:37.767-05:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'timeenroutetoscene' = "2026-01-27 12:11:37"
[2026-01-27 12:17:19] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:17:19] [INFO]   -> Found value: 2026-01-27T07:11:28.11-05:00
[2026-01-27 12:17:19] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:11:28"
[2026-01-27 12:17:19] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:17:19] [INFO]   -> Found value: DR
[2026-01-27 12:17:19] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:17:19] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:17:19] [INFO]   -> Found value: 26-000009
[2026-01-27 12:17:19] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:17:19] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:17:19] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:17:19] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:17:19] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:17:19] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:17:19] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:17:19] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:17:19] [INFO] Found 17 elements for 'Comment', concatenating 17 non-empty values
[2026-01-27 12:17:19] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:17:19] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES"
[2026-01-27 12:17:19] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES"
[2026-01-27 12:17:19] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:17:19] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:17:19] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:17:19] [INFO] Found 4 elements for 'AgencyIdentifier', concatenating 4 non-empty values
[2026-01-27 12:17:19] [INFO]   -> Found value: SFD
SFD
SFD
SFD
[2026-01-27 12:17:19] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nSFD\nSFD"
[2026-01-27 12:17:19] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:17:19] [INFO] Concatenating street name and type
[2026-01-27 12:17:19] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:17:19] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:17:19] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":"2026-01-27 12:11:37","onScene":"2026-01-27 12:17:18","cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"C1SF","name":"C1SF","timeunitclear":null,"timeonscene":"2026-01-27 12:17:18","timestaging":null,"timeenroutetoscene":"2026-01-27 12:11:37","timedispatch":"2026-01-27 12:11:28","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES","cADAgencyIdentifier":"SFD\nSFD\nSFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:17:19] [INFO] Number of extracted fields: 29
[2026-01-27 12:17:19] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
SFD
SFD'
[2026-01-27 12:17:19] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
SFD
SFD', Parsed IDs = ["SFD","SFD","SFD","SFD"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 2
[2026-01-27 12:17:19] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","SFD","SFD"]
[2026-01-27 12:17:19] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:17:19] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:17:19] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","SFD","SFD"]
[2026-01-27 12:17:19] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:17:19] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:17:19] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 12:17:19] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:17:19] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:17:20] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:17:20] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:17:20] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:17:20] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071718769.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127071718769.xml
[2026-01-27 12:17:20] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127071718769.xml
[2026-01-27 12:22:05] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009793_20260127_122205.XML
[2026-01-27 12:22:05] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009793_20260127_122205.XML for user: 68f1466aed072ad4a
[2026-01-27 12:22:05] [INFO] File size: 5285 bytes
[2026-01-27 12:22:06] [INFO] Created FTPFiles record with ID: 6978adee19ae1ee0e
[2026-01-27 12:22:06] [INFO] About to extract fields from XML. File size: 5285 bytes
[2026-01-27 12:22:06] [INFO] Number of mappings: 28
[2026-01-27 12:22:06] [INFO] Starting XML parsing. Content length: 5285
[2026-01-27 12:22:06] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 12:22:06] [INFO] Processing 28 field mappings
[2026-01-27 12:22:06] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 12:22:06] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 12:22:06] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:22:06] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-01-27 12:22:06] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-01-27 12:22:06] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-01-27 12:22:06] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:22:06] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-01-27 12:22:06] [INFO]   -> Found value: 2026000245
[2026-01-27 12:22:06] [INFO]   -> Set field 'incidentInternalId' = "2026000245"
[2026-01-27 12:22:06] [INFO]   -> Set field 'dispatchRunNumber' = "2026000245"
[2026-01-27 12:22:06] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 12:22:06] [INFO]   -> Found value: DIABETIC PROBLEM
[2026-01-27 12:22:06] [INFO]   -> Set field 'incidentTypeValue1' = "DIABETIC PROBLEM"
[2026-01-27 12:22:06] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:22:06] [INFO]   -> Found value: 1140
[2026-01-27 12:22:06] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1140
[2026-01-27 12:22:06] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 12:22:06] [INFO]   -> Found value: TN
[2026-01-27 12:22:06] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 12:22:06] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:22:06] [INFO]   -> Found value: 38544
[2026-01-27 12:22:06] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38544
[2026-01-27 12:22:06] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 12:22:06] [INFO]   -> Found value: 36.15213
[2026-01-27 12:22:06] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.15212999999999965439201332628726959228515625
[2026-01-27 12:22:06] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 12:22:06] [INFO]   -> Found value: -85.66080
[2026-01-27 12:22:06] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.6607999999999947249307297170162200927734375
[2026-01-27 12:22:06] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 12:22:06] [INFO]   -> Found value: 2026-01-27 06:21:31
[2026-01-27 12:22:06] [INFO]   -> Set field 'alarm' = "2026-01-27 06:21:31"
[2026-01-27 12:22:06] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 12:22:06] [INFO]   -> Found value: 2026-01-27 06:22:00
[2026-01-27 12:22:06] [INFO]   -> Set field 'dispatched' = "2026-01-27 06:22:00"
[2026-01-27 12:22:06] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 12:22:06] [INFO]   -> Found value: HIGHLAND AVE
[2026-01-27 12:22:06] [INFO]   -> Set field 'incidentLocationCross' = "HIGHLAND AVE"
[2026-01-27 12:22:06] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 12:22:06] [INFO]   -> Found value: PCFR
[2026-01-27 12:22:06] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-01-27 12:22:06] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 12:22:06] [INFO]   -> Found value: 2026-01-27 06:22:00
[2026-01-27 12:22:06] [INFO]   -> Set field 'timedispatch' = "2026-01-27 06:22:00"
[2026-01-27 12:22:06] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 12:22:06] [INFO]   -> No value found (null or empty)
[2026-01-27 12:22:06] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 12:22:06] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 12:22:06] [INFO]   -> Found value: 20260009793
[2026-01-27 12:22:06] [INFO]   -> Set field 'policeReportNumber' = "20260009793"
[2026-01-27 12:22:06] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 12:22:06] [INFO]   -> Found value: Event spawned from DIABETIC PROBLEM.  [01/27/2026 06:21:31 KHILL]
[2026-01-27 12:22:06] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from DIABETIC PROBLEM.  [01\/27\/2026 06:21:31 KHILL]"
[2026-01-27 12:22:06] [INFO]   -> Set field 'cADLog' = "Event spawned from DIABETIC PROBLEM.  [01\/27\/2026 06:21:31 KHILL]"
[2026-01-27 12:22:06] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 12:22:06] [INFO]   -> Found value: BAXTER
[2026-01-27 12:22:06] [INFO]   -> Set field 'incidentLocationCity' = "BAXTER"
[2026-01-27 12:22:06] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 12:22:06] [INFO]   -> Found value: EAGLES NEST
[2026-01-27 12:22:06] [INFO]   -> Set field 'streetName' = "EAGLES NEST"
[2026-01-27 12:22:06] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 12:22:06] [INFO]   -> Found value: RD
[2026-01-27 12:22:06] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 12:22:06] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 12:22:06] [INFO]   -> Found value: 1140 EAGLES NEST RD
[2026-01-27 12:22:06] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "1140 EAGLES NEST RD"
[2026-01-27 12:22:06] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 12:22:06] [INFO] Concatenating street name and type
[2026-01-27 12:22:06] [INFO]   -> Combined street name: EAGLES NEST RD
[2026-01-27 12:22:06] [INFO] Built locationCoordinates from lat/lng: 36.15213,-85.6608
[2026-01-27 12:22:06] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000245","dispatchRunNumber":"2026000245","incidentTypeValue1":"DIABETIC PROBLEM","incidentLocationStreetNumber":1140,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38544,"nERISIncidentLatitude":36.15212999999999965439201332628726959228515625,"nERISIncidentLongitude":-85.6607999999999947249307297170162200927734375,"alarm":"2026-01-27 06:21:31","dispatched":"2026-01-27 06:22:00","incidentLocationCross":"HIGHLAND AVE","cADVehicleID":"PCFR","timedispatch":"2026-01-27 06:22:00","policeReportNumber":"20260009793","dispatchNotes":"Event spawned from DIABETIC PROBLEM.  [01\/27\/2026 06:21:31 KHILL]","cADLog":"Event spawned from DIABETIC PROBLEM.  [01\/27\/2026 06:21:31 KHILL]","incidentLocationCity":"BAXTER","streetName":"EAGLES NEST RD","incidentAddressTextVersionStreet":"1140 EAGLES NEST RD","locationCoordinates":"36.15213,-85.6608"}
[2026-01-27 12:22:06] [INFO] Number of extracted fields: 21
[2026-01-27 12:22:06] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-01-27 12:22:06] [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-01-27 12:22:06] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-01-27 12:22:06] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:22:06] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 12:22:06] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-01-27 12:22:06] [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-01-27 12:22:06] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 12:22:06] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 12:22:06] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 12:22:06] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 12:22:06] [INFO] Found existing IncidentTypeMapping with ID: 6937a13f0053c6dd7
[2026-01-27 12:22:15] [INFO] Created new Dispatches record with ID: 6978adeedab381da0
[2026-01-27 12:22:15] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 12:22:16] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 12:22:19] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009793_20260127_122205.XML
[2026-01-27 12:22:19] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009793_20260127_122205.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009793_20260127_122205.XML
[2026-01-27 12:22:19] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009793_20260127_122205.XML
[2026-01-27 12:35:33] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127073531485.xml
[2026-01-27 12:35:33] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127073531485.xml for user: 68920395733981a47
[2026-01-27 12:35:33] [INFO] File size: 15046 bytes
[2026-01-27 12:35:34] [INFO] Created FTPFiles record with ID: 6978b11619c38e116
[2026-01-27 12:35:34] [INFO] About to extract fields from XML. File size: 15046 bytes
[2026-01-27 12:35:34] [INFO] Number of mappings: 24
[2026-01-27 12:35:34] [INFO] Starting XML parsing. Content length: 15046
[2026-01-27 12:35:34] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:35:34] [INFO] Processing 24 field mappings
[2026-01-27 12:35:34] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:35:34] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:35:34] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:35:34] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:35:34] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:35:34] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:35:34] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:35:34] [INFO]   -> Found value: 37379
[2026-01-27 12:35:34] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:35:34] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:35:34] [INFO]   -> Found value: 10764
[2026-01-27 12:35:34] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:35:34] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:35:34] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:35:34] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:35:34] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:35:34] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:35:34] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:35:34] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:35:34] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:35:34] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:35:34] [INFO]   -> Found value: 2026-01-27T07:11:37.767-05:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'enroute' = "2026-01-27 12:11:37"
[2026-01-27 12:35:34] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:35:34] [INFO]   -> Found value: 2026-01-27T07:17:18.003-05:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'onScene' = "2026-01-27 12:17:18"
[2026-01-27 12:35:34] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:35:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'cleared' = null
[2026-01-27 12:35:34] [INFO]   -> Set field 'inService' = null
[2026-01-27 12:35:34] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:35:34] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:35:34] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:35:34] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:35:34] [INFO]   -> Found value: -85.13982
[2026-01-27 12:35:34] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:35:34] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:35:34] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:35:34] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:35:34] [INFO]   -> Found value: C1SF
[2026-01-27 12:35:34] [INFO]   -> Set field 'cADVehicleID' = "C1SF"
[2026-01-27 12:35:34] [INFO]   -> Set field 'name' = "C1SF"
[2026-01-27 12:35:34] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:35:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 12:35:34] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:35:34] [INFO]   -> Found value: 2026-01-27T07:17:18.003-05:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'timeonscene' = "2026-01-27 12:17:18"
[2026-01-27 12:35:34] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:35:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:35:34] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:35:34] [INFO]   -> Found value: 2026-01-27T07:11:37.767-05:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'timeenroutetoscene' = "2026-01-27 12:11:37"
[2026-01-27 12:35:34] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:35:34] [INFO]   -> Found value: 2026-01-27T07:11:28.11-05:00
[2026-01-27 12:35:34] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:11:28"
[2026-01-27 12:35:34] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:35:34] [INFO]   -> Found value: DR
[2026-01-27 12:35:34] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:35:34] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:35:34] [INFO]   -> Found value: 26-000009
[2026-01-27 12:35:34] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:35:34] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:35:34] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:35:34] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:35:34] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:35:34] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:35:34] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:35:34] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:35:34] [INFO] Found 18 elements for 'Comment', concatenating 18 non-empty values
[2026-01-27 12:35:34] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:35:34] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES\n01\/27\/2026 07:35:29 MAYS-AXIUM_C            [18] NEG ON CO2 FAULTY DETECTOR"
[2026-01-27 12:35:34] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES\n01\/27\/2026 07:35:29 MAYS-AXIUM_C            [18] NEG ON CO2 FAULTY DETECTOR"
[2026-01-27 12:35:34] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:35:34] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:35:34] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:35:34] [INFO] Found 4 elements for 'AgencyIdentifier', concatenating 4 non-empty values
[2026-01-27 12:35:34] [INFO]   -> Found value: SFD
SFD
SFD
SFD
[2026-01-27 12:35:34] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nSFD\nSFD"
[2026-01-27 12:35:34] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:35:34] [INFO] Concatenating street name and type
[2026-01-27 12:35:34] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:35:34] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:35:34] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":"2026-01-27 12:11:37","onScene":"2026-01-27 12:17:18","cleared":null,"inService":null,"nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"C1SF","name":"C1SF","timeunitclear":null,"timeonscene":"2026-01-27 12:17:18","timestaging":null,"timeenroutetoscene":"2026-01-27 12:11:37","timedispatch":"2026-01-27 12:11:28","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES\n01\/27\/2026 07:35:29 MAYS-AXIUM_C            [18] NEG ON CO2 FAULTY DETECTOR","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES\n01\/27\/2026 07:35:29 MAYS-AXIUM_C            [18] NEG ON CO2 FAULTY DETECTOR","cADAgencyIdentifier":"SFD\nSFD\nSFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:35:34] [INFO] Number of extracted fields: 29
[2026-01-27 12:35:34] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
SFD
SFD'
[2026-01-27 12:35:34] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
SFD
SFD', Parsed IDs = ["SFD","SFD","SFD","SFD"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 2
[2026-01-27 12:35:34] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","SFD","SFD"]
[2026-01-27 12:35:34] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:35:34] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:35:34] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","SFD","SFD"]
[2026-01-27 12:35:34] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:35:34] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:35:34] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 12:35:34] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:35:34] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:35:34] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:35:34] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:35:35] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:35:35] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127073531485.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127073531485.xml
[2026-01-27 12:35:35] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127073531485.xml
[2026-01-27 12:39:44] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127073944378.xml
[2026-01-27 12:39:44] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127073944378.xml for user: 68920395733981a47
[2026-01-27 12:39:44] [INFO] File size: 16758 bytes
[2026-01-27 12:39:44] [INFO] Created FTPFiles record with ID: 6978b210eb3ab7a7d
[2026-01-27 12:39:44] [INFO] About to extract fields from XML. File size: 16758 bytes
[2026-01-27 12:39:44] [INFO] Number of mappings: 24
[2026-01-27 12:39:44] [INFO] Starting XML parsing. Content length: 16758
[2026-01-27 12:39:44] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-01-27 12:39:44] [INFO] Processing 24 field mappings
[2026-01-27 12:39:44] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-01-27 12:39:44] [INFO]   -> Found value: AFARES-AFA Residential
[2026-01-27 12:39:44] [INFO]   -> Set field 'incidentTypeValue1' = "AFARES-AFA Residential"
[2026-01-27 12:39:44] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-01-27 12:39:44] [INFO]   -> Found value: 10764 CALLIE MARIE DR
[2026-01-27 12:39:44] [INFO]   -> Set field 'businessName' = "10764 CALLIE MARIE DR"
[2026-01-27 12:39:44] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-01-27 12:39:44] [INFO]   -> Found value: 37379
[2026-01-27 12:39:44] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-01-27 12:39:44] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-01-27 12:39:44] [INFO]   -> Found value: 10764
[2026-01-27 12:39:44] [INFO]   -> Set field 'incidentLocationStreetNumber' = 10764
[2026-01-27 12:39:44] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-01-27 12:39:44] [INFO]   -> Found value: CALLIE MARIE
[2026-01-27 12:39:44] [INFO]   -> Set field 'streetName' = "CALLIE MARIE"
[2026-01-27 12:39:44] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-01-27 12:39:44] [INFO]   -> Found value: OLD THATCHER RD/No Cross Street
[2026-01-27 12:39:44] [INFO]   -> Set field 'incidentLocationCross' = "OLD THATCHER RD\/No Cross Street"
[2026-01-27 12:39:44] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:00:23.933-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'alarm' = "2026-01-27 12:00:23"
[2026-01-27 12:39:44] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:11:37.767-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'enroute' = "2026-01-27 12:11:37"
[2026-01-27 12:39:44] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:17:18.003-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'onScene' = "2026-01-27 12:17:18"
[2026-01-27 12:39:44] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:39:41.533-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'cleared' = "2026-01-27 12:39:41"
[2026-01-27 12:39:44] [INFO]   -> Set field 'inService' = "2026-01-27 12:39:41"
[2026-01-27 12:39:44] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-01-27 12:39:44] [INFO]   -> Found value: 35.256060999999995
[2026-01-27 12:39:44] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.25606099999999543115336564369499683380126953125
[2026-01-27 12:39:44] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-01-27 12:39:44] [INFO]   -> Found value: -85.13982
[2026-01-27 12:39:44] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.1398200000000002773958840407431125640869140625
[2026-01-27 12:39:44] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:02:36.437-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:02:36"
[2026-01-27 12:39:44] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-01-27 12:39:44] [INFO]   -> Found value: C1SF
[2026-01-27 12:39:44] [INFO]   -> Set field 'cADVehicleID' = "C1SF"
[2026-01-27 12:39:44] [INFO]   -> Set field 'name' = "C1SF"
[2026-01-27 12:39:44] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:39:41.533-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'timeunitclear' = "2026-01-27 12:39:41"
[2026-01-27 12:39:44] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:17:18.003-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'timeonscene' = "2026-01-27 12:17:18"
[2026-01-27 12:39:44] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-01-27 12:39:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'timestaging' = null
[2026-01-27 12:39:44] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:11:37.767-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'timeenroutetoscene' = "2026-01-27 12:11:37"
[2026-01-27 12:39:44] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-27T07:11:28.11-05:00
[2026-01-27 12:39:44] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:11:28"
[2026-01-27 12:39:44] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-01-27 12:39:44] [INFO]   -> Found value: DR
[2026-01-27 12:39:44] [INFO]   -> Set field 'streetType' = "DR"
[2026-01-27 12:39:44] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 12:39:44] [INFO]   -> Found value: 26-000009
[2026-01-27 12:39:44] [INFO]   -> Set field 'incidentInternalId' = "26-000009"
[2026-01-27 12:39:44] [INFO]   -> Set field 'dispatchRunNumber' = "26-000009"
[2026-01-27 12:39:44] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-01-27 12:39:44] [INFO]   -> Found value: 2026-01-35233
[2026-01-27 12:39:44] [INFO]   -> Set field 'policeReportNumber' = "2026-01-35233"
[2026-01-27 12:39:44] [INFO]   -> Set field 'cADNumber' = "2026-01-35233"
[2026-01-27 12:39:44] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-01-27 12:39:44] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-01-27 12:39:44] [INFO] Found 18 elements for 'Comment', concatenating 18 non-empty values
[2026-01-27 12:39:44] [INFO]   -> Found value: 01/27/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM/CARBON MONOXIDE ALARM BEEN GOING OFF SIN...
[2026-01-27 12:39:44] [INFO]   -> Set field 'dispatchNotes' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES\n01\/27\/2026 07:35:29 MAYS-AXIUM_C            [18] NEG ON CO2 FAULTY DETECTOR"
[2026-01-27 12:39:44] [INFO]   -> Set field 'cADLog' = "01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES\n01\/27\/2026 07:35:29 MAYS-AXIUM_C            [18] NEG ON CO2 FAULTY DETECTOR"
[2026-01-27 12:39:44] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-01-27 12:39:44] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-01-27 12:39:44] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 12:39:44] [INFO] Found 4 elements for 'AgencyIdentifier', concatenating 4 non-empty values
[2026-01-27 12:39:44] [INFO]   -> Found value: SFD
SFD
SFD
SFD
[2026-01-27 12:39:44] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nSFD\nSFD"
[2026-01-27 12:39:44] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-01-27 12:39:44] [INFO] Concatenating street name and type
[2026-01-27 12:39:44] [INFO]   -> Combined street name: CALLIE MARIE DR
[2026-01-27 12:39:44] [INFO] Built locationCoordinates from lat/lng: 35.256061,-85.13982
[2026-01-27 12:39:44] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"AFARES-AFA Residential","businessName":"10764 CALLIE MARIE DR","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":10764,"streetName":"CALLIE MARIE DR","incidentLocationCross":"OLD THATCHER RD\/No Cross Street","alarm":"2026-01-27 12:00:23","enroute":"2026-01-27 12:11:37","onScene":"2026-01-27 12:17:18","cleared":"2026-01-27 12:39:41","inService":"2026-01-27 12:39:41","nERISIncidentLatitude":35.25606099999999543115336564369499683380126953125,"nERISIncidentLongitude":-85.1398200000000002773958840407431125640869140625,"dispatched":"2026-01-27 12:02:36","cADVehicleID":"C1SF","name":"C1SF","timeunitclear":"2026-01-27 12:39:41","timeonscene":"2026-01-27 12:17:18","timestaging":null,"timeenroutetoscene":"2026-01-27 12:11:37","timedispatch":"2026-01-27 12:11:28","incidentInternalId":"26-000009","dispatchRunNumber":"26-000009","policeReportNumber":"2026-01-35233","cADNumber":"2026-01-35233","dispatchNotes":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES\n01\/27\/2026 07:35:29 MAYS-AXIUM_C            [18] NEG ON CO2 FAULTY DETECTOR","cADLog":"01\/27\/2026 07:01:16 HEBERER_T               [1] SMOKE ALARM\/CARBON MONOXIDE ALARM BEEN GOING OFF SINCE 0600\n01\/27\/2026 07:01:21 HEBERER_T               [2] NO DISPLAY\n01\/27\/2026 07:01:29 HEBERER_T               [3] NO SMOKE\/NO FLAMES\n01\/27\/2026 07:01:41 HEBERER_T               [4] RP WORRIED ABOUT CARBON MONOXIDE\n01\/27\/2026 07:01:55 HEBERER_T               [5] 3 PEOPLE EVACUATING WITH 3 CATS\n01\/27\/2026 07:02:34 MAYS-AXIUM_C            [6] ***fg 5\n01\/27\/2026 07:02:36 MAYS-AXIUM_C            [7] Automatic Case Number(s) issued for Incident #[2026-01-35233], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000009 requested by H1700.\n01\/27\/2026 07:02:40 HEBERER_T               [8] 15YOF HAS HAD HEADACHE, NAUSEA AND LETHARGY SINCE LAST WEDNESDAY\n01\/27\/2026 07:02:56 HEBERER_T               [9] 15YOF WENT TO DOCTOR YESTERDAY\n01\/27\/2026 07:02:59 HEBERER_T               [10] RP DENYING EMS\n01\/27\/2026 07:03:37 HEBERER_T               [11] NOT SMELLING ANY SIGNS OF FIRE\n01\/27\/2026 07:04:25 HEBERER_T               [12] HVAC UNIT HAD A NEW COIL INSTALLED LAST THURSDAY\n01\/27\/2026 07:04:35 HEBERER_T               [13] GAS FIREPLACE THAT IS USED OFTEN\n01\/27\/2026 07:05:02 HEBERER_T               [14] ALL OCCUPANTS HAVE EVACUATED\n01\/27\/2026 07:05:39 HEBERER_T               [15] RP IS IN A WHITE TOYOTA HIGLANDER\n01\/27\/2026 07:05:52 HEBERER_T               [16] ALL CATS ARE OUT OF THE HOUSE AS WELL\n01\/27\/2026 07:08:33 MAYS-AXIUM_C            [17] 2ND SET OF TONES\n01\/27\/2026 07:35:29 MAYS-AXIUM_C            [18] NEG ON CO2 FAULTY DETECTOR","cADAgencyIdentifier":"SFD\nSFD\nSFD\nSFD","locationCoordinates":"35.256061,-85.13982"}
[2026-01-27 12:39:44] [INFO] Number of extracted fields: 29
[2026-01-27 12:39:44] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
SFD
SFD'
[2026-01-27 12:39:44] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
SFD
SFD', Parsed IDs = ["SFD","SFD","SFD","SFD"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 2
[2026-01-27 12:39:44] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","SFD","SFD"]
[2026-01-27 12:39:44] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-01-27 12:39:45] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-01-27 12:39:45] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","SFD","SFD"]
[2026-01-27 12:39:45] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-01-27 12:39:45] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-01-27 12:39:45] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 12:39:45] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-01-27 12:39:45] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-01-27 12:39:45] [INFO] Found existing IncidentTypeMapping with ID: 6978a9025ce2a1c63
[2026-01-27 12:39:45] [INFO] Found existing Dispatch with cADNumber '2026-01-35233', ID: 6978a902ae2375899 - will update instead of create
[2026-01-27 12:39:45] [INFO] Updated existing Dispatches record with ID: 6978a902ae2375899
[2026-01-27 12:39:45] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127073944378.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/archive/2026-01-27/INCCOMBINED_2026-01-35233_20260127073944378.xml
[2026-01-27 12:39:45] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-01-35233_20260127073944378.xml
[2026-01-27 15:39:16] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009861_20260127_153916.XML
[2026-01-27 15:39:16] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009861_20260127_153916.XML for user: 68f1466aed072ad4a
[2026-01-27 15:39:16] [INFO] File size: 5501 bytes
[2026-01-27 15:39:16] [INFO] Created FTPFiles record with ID: 6978dc24d0cedeeb1
[2026-01-27 15:39:16] [INFO] About to extract fields from XML. File size: 5501 bytes
[2026-01-27 15:39:16] [INFO] Number of mappings: 28
[2026-01-27 15:39:16] [INFO] Starting XML parsing. Content length: 5501
[2026-01-27 15:39:16] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 15:39:16] [INFO] Processing 28 field mappings
[2026-01-27 15:39:16] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 15:39:16] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 15:39:16] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 15:39:16] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-01-27 15:39:16] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-01-27 15:39:16] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-01-27 15:39:16] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 15:39:16] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-01-27 15:39:16] [INFO]   -> Found value: 2026000246
[2026-01-27 15:39:16] [INFO]   -> Set field 'incidentInternalId' = "2026000246"
[2026-01-27 15:39:16] [INFO]   -> Set field 'dispatchRunNumber' = "2026000246"
[2026-01-27 15:39:16] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 15:39:16] [INFO]   -> Found value: CHEST PAIN
[2026-01-27 15:39:16] [INFO]   -> Set field 'incidentTypeValue1' = "CHEST PAIN"
[2026-01-27 15:39:16] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 15:39:16] [INFO]   -> Found value: 2847
[2026-01-27 15:39:16] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2847
[2026-01-27 15:39:16] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 15:39:16] [INFO]   -> Found value: TN
[2026-01-27 15:39:16] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 15:39:16] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 15:39:16] [INFO]   -> Found value: 38506
[2026-01-27 15:39:16] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-01-27 15:39:16] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 15:39:16] [INFO]   -> Found value: 36.11135
[2026-01-27 15:39:16] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1113500000000016143530956469476222991943359375
[2026-01-27 15:39:16] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 15:39:16] [INFO]   -> Found value: -85.44996
[2026-01-27 15:39:16] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.449960000000004356479621492326259613037109375
[2026-01-27 15:39:16] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 15:39:16] [INFO]   -> Found value: 2026-01-27 09:38:18
[2026-01-27 15:39:16] [INFO]   -> Set field 'alarm' = "2026-01-27 09:38:18"
[2026-01-27 15:39:16] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 15:39:16] [INFO]   -> Found value: 2026-01-27 09:39:09
[2026-01-27 15:39:16] [INFO]   -> Set field 'dispatched' = "2026-01-27 09:39:09"
[2026-01-27 15:39:16] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 15:39:16] [INFO]   -> Found value: WATSON RD/WINEBARGER RD
[2026-01-27 15:39:16] [INFO]   -> Set field 'incidentLocationCross' = "WATSON RD\/WINEBARGER RD"
[2026-01-27 15:39:16] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 15:39:16] [INFO]   -> Found value: PCFR
[2026-01-27 15:39:16] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-01-27 15:39:16] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 15:39:16] [INFO]   -> Found value: 2026-01-27 09:39:09
[2026-01-27 15:39:16] [INFO]   -> Set field 'timedispatch' = "2026-01-27 09:39:09"
[2026-01-27 15:39:16] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 15:39:16] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 15:39:16] [INFO]   -> Found value: 20260009861
[2026-01-27 15:39:16] [INFO]   -> Set field 'policeReportNumber' = "20260009861"
[2026-01-27 15:39:16] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 15:39:16] [INFO]   -> Found value: [LAW] UDTS: LE NOT RESPONDING  [01/27/26 09:39:07 SBALLARD] [EMS] FRONT DOOR  [01/27/26 09:38:22 DSW...
[2026-01-27 15:39:16] [INFO]   -> Set field 'dispatchNotes' = "[LAW] UDTS: LE NOT RESPONDING  [01\/27\/26 09:39:07 SBALLARD] [EMS] FRONT DOOR  [01\/27\/26 09:38:22 DSWINK] Event spawned from CHEST PAIN.  [01\/27\/2026 09:38:18 DSWINK] FATHER IS HAVING CHEST TIGHTNESS CARDIAC HX WEAKNESS 83 YOM  [01\/27\/26 09:38:11 DSWINK]]"
[2026-01-27 15:39:16] [INFO]   -> Set field 'cADLog' = "[LAW] UDTS: LE NOT RESPONDING  [01\/27\/26 09:39:07 SBALLARD] [EMS] FRONT DOOR  [01\/27\/26 09:38:22 DSWINK] Event spawned from CHEST PAIN.  [01\/27\/2026 09:38:18 DSWINK] FATHER IS HAVING CHEST TIGHTNESS CARDIAC HX WEAKNESS 83 YOM  [01\/27\/26 09:38:11 DSWINK]]"
[2026-01-27 15:39:16] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 15:39:16] [INFO]   -> Found value: COOKEVILLE
[2026-01-27 15:39:16] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-01-27 15:39:16] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 15:39:16] [INFO]   -> Found value: HWY 70
[2026-01-27 15:39:16] [INFO]   -> Set field 'streetName' = "HWY 70"
[2026-01-27 15:39:16] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 15:39:16] [INFO]   -> No value found (null or empty)
[2026-01-27 15:39:16] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 15:39:16] [INFO]   -> Found value: 2847 HWY 70 E
[2026-01-27 15:39:16] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "2847 HWY 70 E"
[2026-01-27 15:39:16] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-01-27 15:39:16] [INFO] Built locationCoordinates from lat/lng: 36.11135,-85.44996
[2026-01-27 15:39:16] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000246","dispatchRunNumber":"2026000246","incidentTypeValue1":"CHEST PAIN","incidentLocationStreetNumber":2847,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.1113500000000016143530956469476222991943359375,"nERISIncidentLongitude":-85.449960000000004356479621492326259613037109375,"alarm":"2026-01-27 09:38:18","dispatched":"2026-01-27 09:39:09","incidentLocationCross":"WATSON RD\/WINEBARGER RD","cADVehicleID":"PCFR","timedispatch":"2026-01-27 09:39:09","policeReportNumber":"20260009861","dispatchNotes":"[LAW] UDTS: LE NOT RESPONDING  [01\/27\/26 09:39:07 SBALLARD] [EMS] FRONT DOOR  [01\/27\/26 09:38:22 DSWINK] Event spawned from CHEST PAIN.  [01\/27\/2026 09:38:18 DSWINK] FATHER IS HAVING CHEST TIGHTNESS CARDIAC HX WEAKNESS 83 YOM  [01\/27\/26 09:38:11 DSWINK]]","cADLog":"[LAW] UDTS: LE NOT RESPONDING  [01\/27\/26 09:39:07 SBALLARD] [EMS] FRONT DOOR  [01\/27\/26 09:38:22 DSWINK] Event spawned from CHEST PAIN.  [01\/27\/2026 09:38:18 DSWINK] FATHER IS HAVING CHEST TIGHTNESS CARDIAC HX WEAKNESS 83 YOM  [01\/27\/26 09:38:11 DSWINK]]","incidentLocationCity":"COOKEVILLE","streetName":"HWY 70","incidentAddressTextVersionStreet":"2847 HWY 70 E","locationCoordinates":"36.11135,-85.44996"}
[2026-01-27 15:39:16] [INFO] Number of extracted fields: 21
[2026-01-27 15:39:16] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-01-27 15:39:16] [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-01-27 15:39:16] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-01-27 15:39:16] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 15:39:17] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 15:39:17] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-01-27 15:39:17] [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-01-27 15:39:17] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 15:39:17] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-01-27 15:39:17] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 15:39:17] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 15:39:17] [INFO] Found existing IncidentTypeMapping with ID: 6939c33d3eae65119
[2026-01-27 15:39:46] [INFO] Created new Dispatches record with ID: 6978dc397c40f3cc1
[2026-01-27 15:39:46] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 15:39:46] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 15:39:50] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009861_20260127_153916.XML
[2026-01-27 15:39:50] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009861_20260127_153916.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009861_20260127_153916.XML
[2026-01-27 15:39:50] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009861_20260127_153916.XML
[2026-01-27 16:09:06] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260009876_20260127_160906.XML
[2026-01-27 16:09:06] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260009876_20260127_160906.XML for user: 68f1466aed072ad4a
[2026-01-27 16:09:06] [INFO] File size: 4695 bytes
[2026-01-27 16:09:27] [INFO] Created FTPFiles record with ID: 6978e337bbc22fad2
[2026-01-27 16:09:27] [INFO] About to extract fields from XML. File size: 4695 bytes
[2026-01-27 16:09:27] [INFO] Number of mappings: 28
[2026-01-27 16:09:27] [INFO] Starting XML parsing. Content length: 4695
[2026-01-27 16:09:27] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 16:09:27] [INFO] Processing 28 field mappings
[2026-01-27 16:09:27] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 16:09:27] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 16:09:27] [INFO]   -> Found value: AFD
[2026-01-27 16:09:27] [INFO]   -> Set field 'cADAgencyIdentifier' = "AFD"
[2026-01-27 16:09:27] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 16:09:27] [INFO]   -> Found value: 2026000036
[2026-01-27 16:09:27] [INFO]   -> Set field 'incidentInternalId' = "2026000036"
[2026-01-27 16:09:27] [INFO]   -> Set field 'dispatchRunNumber' = "2026000036"
[2026-01-27 16:09:27] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 16:09:27] [INFO]   -> Found value: FIRE ALARM
[2026-01-27 16:09:27] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE ALARM"
[2026-01-27 16:09:27] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 16:09:27] [INFO]   -> Found value: 205
[2026-01-27 16:09:27] [INFO]   -> Set field 'incidentLocationStreetNumber' = 205
[2026-01-27 16:09:27] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 16:09:27] [INFO]   -> Found value: TN
[2026-01-27 16:09:27] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 16:09:27] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 16:09:27] [INFO]   -> Found value: 38506
[2026-01-27 16:09:27] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-01-27 16:09:27] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 16:09:27] [INFO]   -> Found value: TRINITY ASSEMBLY
[2026-01-27 16:09:27] [INFO]   -> Set field 'businessName' = "TRINITY ASSEMBLY"
[2026-01-27 16:09:27] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 16:09:27] [INFO]   -> No value found (null or empty)
[2026-01-27 16:09:27] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 16:09:27] [INFO]   -> Found value: 36.19187
[2026-01-27 16:09:27] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.19187000000000153931978275068104267120361328125
[2026-01-27 16:09:27] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 16:09:27] [INFO]   -> Found value: -85.45159
[2026-01-27 16:09:27] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.4515899999999959391061565838754177093505859375
[2026-01-27 16:09:27] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 16:09:27] [INFO]   -> Found value: 2026-01-27 10:06:23
[2026-01-27 16:09:27] [INFO]   -> Set field 'alarm' = "2026-01-27 10:06:23"
[2026-01-27 16:09:27] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 16:09:27] [INFO]   -> Found value: 2026-01-27 10:08:54
[2026-01-27 16:09:27] [INFO]   -> Set field 'dispatched' = "2026-01-27 10:08:54"
[2026-01-27 16:09:27] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 16:09:27] [INFO]   -> No value found (null or empty)
[2026-01-27 16:09:27] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 16:09:27] [INFO]   -> No value found (null or empty)
[2026-01-27 16:09:27] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 16:09:27] [INFO]   -> No value found (null or empty)
[2026-01-27 16:09:27] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 16:09:27] [INFO]   -> Found value: W MAIN ST/5TH AVE
[2026-01-27 16:09:27] [INFO]   -> Set field 'incidentLocationCross' = "W MAIN ST\/5TH AVE"
[2026-01-27 16:09:27] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 16:09:27] [INFO]   -> Found value: AEN2
[2026-01-27 16:09:27] [INFO]   -> Set field 'cADVehicleID' = "AEN2"
[2026-01-27 16:09:27] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 16:09:27] [INFO]   -> Found value: 2026-01-27 10:08:54
[2026-01-27 16:09:27] [INFO]   -> Set field 'timedispatch' = "2026-01-27 10:08:54"
[2026-01-27 16:09:27] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 16:09:27] [INFO]   -> No value found (null or empty)
[2026-01-27 16:09:27] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 16:09:27] [INFO]   -> No value found (null or empty)
[2026-01-27 16:09:27] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 16:09:27] [INFO]   -> No value found (null or empty)
[2026-01-27 16:09:27] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 16:09:27] [INFO]   -> No value found (null or empty)
[2026-01-27 16:09:27] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 16:09:27] [INFO]   -> Found value: 20260009876
[2026-01-27 16:09:27] [INFO]   -> Set field 'policeReportNumber' = "20260009876"
[2026-01-27 16:09:27] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 16:09:27] [INFO]   -> Found value: EXT # 4     OR #0  [01/27/26 10:08:09 DSTEPHENS] zone 18  [01/27/26 10:07:07 DSTEPHENS]
[2026-01-27 16:09:27] [INFO]   -> Set field 'dispatchNotes' = "EXT # 4     OR #0  [01\/27\/26 10:08:09 DSTEPHENS] zone 18  [01\/27\/26 10:07:07 DSTEPHENS]"
[2026-01-27 16:09:27] [INFO]   -> Set field 'cADLog' = "EXT # 4     OR #0  [01\/27\/26 10:08:09 DSTEPHENS] zone 18  [01\/27\/26 10:07:07 DSTEPHENS]"
[2026-01-27 16:09:27] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 16:09:27] [INFO]   -> Found value: ALGOOD
[2026-01-27 16:09:27] [INFO]   -> Set field 'incidentLocationCity' = "ALGOOD"
[2026-01-27 16:09:27] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 16:09:27] [INFO]   -> Found value: WALL
[2026-01-27 16:09:27] [INFO]   -> Set field 'streetName' = "WALL"
[2026-01-27 16:09:27] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 16:09:27] [INFO]   -> Found value: ST
[2026-01-27 16:09:27] [INFO]   -> Set field 'streetType' = "ST"
[2026-01-27 16:09:27] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 16:09:27] [INFO]   -> Found value: 205 W WALL ST
[2026-01-27 16:09:27] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "205 W WALL ST"
[2026-01-27 16:09:27] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-01-27 16:09:27] [INFO] Concatenating street name and type
[2026-01-27 16:09:27] [INFO]   -> Combined street name: WALL ST
[2026-01-27 16:09:27] [INFO] Built locationCoordinates from lat/lng: 36.19187,-85.45159
[2026-01-27 16:09:27] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"AFD","incidentInternalId":"2026000036","dispatchRunNumber":"2026000036","incidentTypeValue1":"FIRE ALARM","incidentLocationStreetNumber":205,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"businessName":"TRINITY ASSEMBLY","nERISIncidentLatitude":36.19187000000000153931978275068104267120361328125,"nERISIncidentLongitude":-85.4515899999999959391061565838754177093505859375,"alarm":"2026-01-27 10:06:23","dispatched":"2026-01-27 10:08:54","incidentLocationCross":"W MAIN ST\/5TH AVE","cADVehicleID":"AEN2","timedispatch":"2026-01-27 10:08:54","policeReportNumber":"20260009876","dispatchNotes":"EXT # 4     OR #0  [01\/27\/26 10:08:09 DSTEPHENS] zone 18  [01\/27\/26 10:07:07 DSTEPHENS]","cADLog":"EXT # 4     OR #0  [01\/27\/26 10:08:09 DSTEPHENS] zone 18  [01\/27\/26 10:07:07 DSTEPHENS]","incidentLocationCity":"ALGOOD","streetName":"WALL ST","incidentAddressTextVersionStreet":"205 W WALL ST","locationCoordinates":"36.19187,-85.45159"}
[2026-01-27 16:09:27] [INFO] Number of extracted fields: 22
[2026-01-27 16:09:27] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'AFD'
[2026-01-27 16:09:27] [INFO] Multi-agency routing check: CAD Agency ID raw = 'AFD', Parsed IDs = ["AFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 4
[2026-01-27 16:09:27] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["AFD"]
[2026-01-27 16:09:27] [INFO] Attempting SAASClient lookup for AgencyCode 'AFD' (index 0) within mailbox's assigned agencies
[2026-01-27 16:09:28] [INFO] SUCCESS: Routed to agency 'Algood Fire Department' (ID: 68910627445d6e167) at INDEX 0 based on AgencyCode 'AFD'
[2026-01-27 16:09:28] [INFO] Fetched 1 stations from Stations module for agency 'Algood Fire Department': ["68922bda7fe89f7ff"]
[2026-01-27 16:09:28] [INFO] Final routing: saasclientId = 68910627445d6e167, dispatchStationsIds = ["68922bda7fe89f7ff"], matchedAgencyIndex = 0
[2026-01-27 16:09:28] [INFO] Updated FTPFiles record saasclientId to routed agency: 68910627445d6e167
[2026-01-27 16:09:43] [INFO] Created new IncidentTypeMapping Data: {"cADIncidentType":"FIRE ALARM","saasclientId":"68910627445d6e167","name":"FIRE ALARM"}
[2026-01-27 16:09:53] [INFO] Created new IncidentTypeMapping with ID: 6978e351e0f80c4f5
[2026-01-27 16:10:11] [INFO] Created new Dispatches record with ID: 6978e35eb268735ec
[2026-01-27 16:10:11] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 16:10:11] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 16:10:14] [INFO] Successfully uploaded file to V2 FTP server: /AFD_20260009876_20260127_160906.XML
[2026-01-27 16:10:14] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260009876_20260127_160906.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/AFD_20260009876_20260127_160906.XML
[2026-01-27 16:10:14] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260009876_20260127_160906.XML
[2026-01-27 16:57:20] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 16:57:20] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml for user: 69320e6a9e3e5ef71
[2026-01-27 16:57:20] [INFO] File size: 13031 bytes
[2026-01-27 16:57:41] [INFO] Created FTPFiles record with ID: 6978ee84f21aec5da
[2026-01-27 16:57:41] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-01-27 16:57:41] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-01-27
[2026-01-27 16:57:41] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-01-27/cfs_2026-005643.xml
[2026-01-27 16:57:41] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:02:02] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:02:02] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml for user: 69320e6a9e3e5ef71
[2026-01-27 17:02:02] [INFO] File size: 15888 bytes
[2026-01-27 17:02:24] [INFO] Created FTPFiles record with ID: 6978efa0b2333308b
[2026-01-27 17:02:24] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-01-27 17:02:24] [INFO] File already exists in archive, using unique name: cfs_2026-005643_1769533344.xml
[2026-01-27 17:02:24] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-01-27/cfs_2026-005643_1769533344.xml
[2026-01-27 17:02:24] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:02:37] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:02:37] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml for user: 69320e6a9e3e5ef71
[2026-01-27 17:02:37] [INFO] File size: 16895 bytes
[2026-01-27 17:02:49] [INFO] Created FTPFiles record with ID: 6978efb8ed2cc1979
[2026-01-27 17:02:49] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-01-27 17:02:49] [INFO] File already exists in archive, using unique name: cfs_2026-005643_1769533369.xml
[2026-01-27 17:02:49] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-01-27/cfs_2026-005643_1769533369.xml
[2026-01-27 17:02:49] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:03:01] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:03:01] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml for user: 69320e6a9e3e5ef71
[2026-01-27 17:03:01] [INFO] File size: 17882 bytes
[2026-01-27 17:03:02] [INFO] Created FTPFiles record with ID: 6978efc6089aec809
[2026-01-27 17:03:02] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-01-27 17:03:02] [INFO] File already exists in archive, using unique name: cfs_2026-005643_1769533382.xml
[2026-01-27 17:03:02] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-01-27/cfs_2026-005643_1769533382.xml
[2026-01-27 17:03:02] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:14:06] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:14:06] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml for user: 69320e6a9e3e5ef71
[2026-01-27 17:14:06] [INFO] File size: 19503 bytes
[2026-01-27 17:14:07] [INFO] Created FTPFiles record with ID: 6978f25f2a279823f
[2026-01-27 17:14:07] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-01-27 17:14:07] [INFO] File already exists in archive, using unique name: cfs_2026-005643_1769534047.xml
[2026-01-27 17:14:07] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-01-27/cfs_2026-005643_1769534047.xml
[2026-01-27 17:14:07] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:14:31] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:14:31] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml for user: 69320e6a9e3e5ef71
[2026-01-27 17:14:31] [INFO] File size: 20546 bytes
[2026-01-27 17:14:57] [INFO] Created FTPFiles record with ID: 6978f2917467c93b4
[2026-01-27 17:14:57] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-01-27 17:14:57] [INFO] File already exists in archive, using unique name: cfs_2026-005643_1769534097.xml
[2026-01-27 17:14:57] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-01-27/cfs_2026-005643_1769534097.xml
[2026-01-27 17:14:57] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:16:59] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 17:16:59] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml for user: 69320e6a9e3e5ef71
[2026-01-27 17:16:59] [INFO] File size: 22189 bytes
[2026-01-27 17:17:00] [INFO] Created FTPFiles record with ID: 6978f30c0cd5564f6
[2026-01-27 17:17:00] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-01-27 17:17:00] [INFO] File already exists in archive, using unique name: cfs_2026-005643_1769534220.xml
[2026-01-27 17:17:00] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-01-27/cfs_2026-005643_1769534220.xml
[2026-01-27 17:17:00] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-005643.xml
[2026-01-27 18:29:28] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-02800.xml
[2026-01-27 18:29:28] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-02800.xml for user: 68d56363ec1209189
[2026-01-27 18:29:28] [INFO] File size: 1757 bytes
[2026-01-27 18:29:28] [INFO] Created FTPFiles record with ID: 697904088fbcd96a9
[2026-01-27 18:29:28] [INFO] About to extract fields from XML. File size: 1757 bytes
[2026-01-27 18:29:28] [INFO] Number of mappings: 21
[2026-01-27 18:29:28] [INFO] Starting XML parsing. Content length: 1757
[2026-01-27 18:29:28] [INFO] XML parsed successfully. Root element: Incident
[2026-01-27 18:29:28] [INFO] Processing 21 field mappings
[2026-01-27 18:29:28] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-01-27 18:29:28] [INFO]   -> Found value: 26-02800
[2026-01-27 18:29:28] [INFO]   -> Set field 'dispatchRunNumber' = "26-02800"
[2026-01-27 18:29:28] [INFO]   -> Set field 'cADNumber' = "26-02800"
[2026-01-27 18:29:28] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-01-27 18:29:28] [INFO]   -> Found value: 1253
[2026-01-27 18:29:28] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1253
[2026-01-27 18:29:28] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-01-27 18:29:28] [INFO]   -> Found value: COUNTY HIGHWAY 529
[2026-01-27 18:29:28] [INFO]   -> Set field 'streetName' = "COUNTY HIGHWAY 529"
[2026-01-27 18:29:28] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-01-27 18:29:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:29:28] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-01-27 18:29:28] [INFO]   -> Found value: SIKESTON
[2026-01-27 18:29:28] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-01-27 18:29:28] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-01-27 18:29:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:29:28] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-01-27 18:29:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:29:28] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-01-27 18:29:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:29:28] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-01-27 18:29:28] [INFO]   -> Found value: 0
[2026-01-27 18:29:28] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-01-27 18:29:28] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-01-27 18:29:28] [INFO]   -> Found value: 0
[2026-01-27 18:29:28] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-01-27 18:29:28] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-01-27 18:29:28] [INFO]   -> Found value: MEDICAL
[2026-01-27 18:29:28] [INFO]   -> Set field 'incidentTypeValue1' = "MEDICAL"
[2026-01-27 18:29:28] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-01-27 18:29:28] [INFO]   -> Found value: 01-27-2026 11:21:49|68YO MALE SEVERE ABDOMINAL PAIN AND GOING TOWARDS GENITALS  01-27-2026 11:35:33|...
[2026-01-27 18:29:28] [INFO]   -> Set field 'dispatchNotes' = "01-27-2026 11:21:49|68YO MALE SEVERE ABDOMINAL PAIN AND GOING TOWARDS GENITALS  01-27-2026 11:35:33|****** Appended notes from Work Area begin ******\nSource: E911 \nLaw Enf: Sikeston Department of Public Safety \nOpened DateTime: 01\/27\/2026 11:34:40\nNotes: Call Received on 01\/27\/2026 @ 11:34\n\nLocation: 2175 STATE HWY C\n\n911 CALLER WANTED A ETA ON EMS\n****** Appended notes from Work Area end   ******\n 01-27-2026 11:37:30|1532 ON SCENE"
[2026-01-27 18:29:28] [INFO]   -> Set field 'cADLog' = "01-27-2026 11:21:49|68YO MALE SEVERE ABDOMINAL PAIN AND GOING TOWARDS GENITALS  01-27-2026 11:35:33|****** Appended notes from Work Area begin ******\nSource: E911 \nLaw Enf: Sikeston Department of Public Safety \nOpened DateTime: 01\/27\/2026 11:34:40\nNotes: Call Received on 01\/27\/2026 @ 11:34\n\nLocation: 2175 STATE HWY C\n\n911 CALLER WANTED A ETA ON EMS\n****** Appended notes from Work Area end   ******\n 01-27-2026 11:37:30|1532 ON SCENE"
[2026-01-27 18:29:28] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-01-27 18:29:28] [INFO]   -> Found value: 01-27-2026T11:22:38
[2026-01-27 18:29:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T11:22:38
[2026-01-27 18:29:28] [ERROR] Error formatting datetime '2026-27-01T11:22:38': Failed to parse time string (2026-27-01T11:22:38) at position 6 (7): Unexpected character
[2026-01-27 18:29:28] [INFO]   -> Set field 'alarm' = null
[2026-01-27 18:29:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T11:22:38
[2026-01-27 18:29:28] [ERROR] Error formatting datetime '2026-27-01T11:22:38': Failed to parse time string (2026-27-01T11:22:38) at position 6 (7): Unexpected character
[2026-01-27 18:29:28] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 18:29:28] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-01-27 18:29:28] [INFO]   -> Found value: 01-27-2026T12:12:24
[2026-01-27 18:29:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:12:24
[2026-01-27 18:29:28] [ERROR] Error formatting datetime '2026-27-01T12:12:24': Failed to parse time string (2026-27-01T12:12:24) at position 6 (7): Unexpected character
[2026-01-27 18:29:28] [INFO]   -> Set field 'onScene' = null
[2026-01-27 18:29:28] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-01-27 18:29:28] [INFO]   -> Found value: 01-27-2026T12:28:55
[2026-01-27 18:29:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:28:55
[2026-01-27 18:29:28] [ERROR] Error formatting datetime '2026-27-01T12:28:55': Failed to parse time string (2026-27-01T12:28:55) at position 6 (7): Unexpected character
[2026-01-27 18:29:28] [INFO]   -> Set field 'cleared' = null
[2026-01-27 18:29:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:28:55
[2026-01-27 18:29:28] [ERROR] Error formatting datetime '2026-27-01T12:28:55': Failed to parse time string (2026-27-01T12:28:55) at position 6 (7): Unexpected character
[2026-01-27 18:29:28] [INFO]   -> Set field 'inService' = null
[2026-01-27 18:29:28] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-01-27 18:29:28] [INFO]   -> Found value: RURAL PAGE
[2026-01-27 18:29:28] [INFO]   -> Set field 'cADVehicleID' = "RURAL PAGE"
[2026-01-27 18:29:28] [INFO]   -> Set field 'name' = "RURAL PAGE"
[2026-01-27 18:29:28] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-01-27 18:29:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:29:28] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-01-27 18:29:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:29:28] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-01-27 18:29:28] [INFO]   -> Found value: 01-27-2026T12:28:55
[2026-01-27 18:29:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:28:55
[2026-01-27 18:29:28] [ERROR] Error formatting datetime '2026-27-01T12:28:55': Failed to parse time string (2026-27-01T12:28:55) at position 6 (7): Unexpected character
[2026-01-27 18:29:28] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 18:29:28] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-01-27 18:29:28] [INFO]   -> Found value: 01-27-2026T11:22:38
[2026-01-27 18:29:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T11:22:38
[2026-01-27 18:29:28] [ERROR] Error formatting datetime '2026-27-01T11:22:38': Failed to parse time string (2026-27-01T11:22:38) at position 6 (7): Unexpected character
[2026-01-27 18:29:28] [INFO]   -> Set field 'timedispatch' = null
[2026-01-27 18:29:28] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-01-27 18:29:28] [INFO]   -> Found value: SCRFD
[2026-01-27 18:29:28] [INFO]   -> Set field 'cADAgencyIdentifier' = "SCRFD"
[2026-01-27 18:29:28] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-01-27 18:29:28] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-01-27 18:29:28] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-02800","cADNumber":"26-02800","incidentLocationStreetNumber":1253,"streetName":"COUNTY HIGHWAY 529","incidentLocationCity":"SIKESTON","nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"MEDICAL","dispatchNotes":"01-27-2026 11:21:49|68YO MALE SEVERE ABDOMINAL PAIN AND GOING TOWARDS GENITALS  01-27-2026 11:35:33|****** Appended notes from Work Area begin ******\nSource: E911 \nLaw Enf: Sikeston Department of Public Safety \nOpened DateTime: 01\/27\/2026 11:34:40\nNotes: Call Received on 01\/27\/2026 @ 11:34\n\nLocation: 2175 STATE HWY C\n\n911 CALLER WANTED A ETA ON EMS\n****** Appended notes from Work Area end   ******\n 01-27-2026 11:37:30|1532 ON SCENE","cADLog":"01-27-2026 11:21:49|68YO MALE SEVERE ABDOMINAL PAIN AND GOING TOWARDS GENITALS  01-27-2026 11:35:33|****** Appended notes from Work Area begin ******\nSource: E911 \nLaw Enf: Sikeston Department of Public Safety \nOpened DateTime: 01\/27\/2026 11:34:40\nNotes: Call Received on 01\/27\/2026 @ 11:34\n\nLocation: 2175 STATE HWY C\n\n911 CALLER WANTED A ETA ON EMS\n****** Appended notes from Work Area end   ******\n 01-27-2026 11:37:30|1532 ON SCENE","alarm":null,"dispatched":null,"onScene":null,"cleared":null,"inService":null,"cADVehicleID":"RURAL PAGE","name":"RURAL PAGE","timeunitclear":null,"timedispatch":null,"cADAgencyIdentifier":"SCRFD","locationCoordinates":"0,0"}
[2026-01-27 18:29:28] [INFO] Number of extracted fields: 21
[2026-01-27 18:29:28] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SCRFD'
[2026-01-27 18:29:28] [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-01-27 18:29:28] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SCRFD"]
[2026-01-27 18:29:28] [INFO] Attempting SAASClient lookup for AgencyCode 'SCRFD' (index 0) within mailbox's assigned agencies
[2026-01-27 18:29:28] [INFO] SUCCESS: Routed to agency 'Scott County Rural Fire Protection District' (ID: 6643bdb30659f00d8) at INDEX 0 based on AgencyCode 'SCRFD'
[2026-01-27 18:29:28] [INFO] Fetched 6 stations from Stations module for agency 'Scott County Rural Fire Protection District': ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"]
[2026-01-27 18:29:28] [INFO] Final routing: saasclientId = 6643bdb30659f00d8, dispatchStationsIds = ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"], matchedAgencyIndex = 0
[2026-01-27 18:29:29] [INFO] Updated FTPFiles record saasclientId to routed agency: 6643bdb30659f00d8
[2026-01-27 18:29:29] [INFO] Created new IncidentTypeMapping Data: {"cADIncidentType":"MEDICAL","saasclientId":"6643bdb30659f00d8","name":"MEDICAL"}
[2026-01-27 18:29:32] [INFO] Created new IncidentTypeMapping with ID: 6979040ce473322a8
[2026-01-27 18:29:33] [INFO] Found existing Dispatch with cADNumber '26-02800', ID: 6978f462ed78a2b1a - will update instead of create
[2026-01-27 18:29:33] [INFO] Updated existing Dispatches record with ID: 6978f462ed78a2b1a
[2026-01-27 18:29:33] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-01-27
[2026-01-27 18:29:33] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-02800.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-01-27/SCRFD_26-02800.xml
[2026-01-27 18:29:33] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-02800.xml
[2026-01-27 18:32:28] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-02806.xml
[2026-01-27 18:32:28] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-02806.xml for user: 68d56363ec1209189
[2026-01-27 18:32:28] [INFO] File size: 2914 bytes
[2026-01-27 18:32:28] [INFO] Created FTPFiles record with ID: 697904bc811568171
[2026-01-27 18:32:28] [INFO] About to extract fields from XML. File size: 2914 bytes
[2026-01-27 18:32:28] [INFO] Number of mappings: 21
[2026-01-27 18:32:28] [INFO] Starting XML parsing. Content length: 2914
[2026-01-27 18:32:28] [INFO] XML parsed successfully. Root element: Incident
[2026-01-27 18:32:28] [INFO] Processing 21 field mappings
[2026-01-27 18:32:28] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-01-27 18:32:28] [INFO]   -> Found value: 26-02806
[2026-01-27 18:32:28] [INFO]   -> Set field 'dispatchRunNumber' = "26-02806"
[2026-01-27 18:32:28] [INFO]   -> Set field 'cADNumber' = "26-02806"
[2026-01-27 18:32:28] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-01-27 18:32:28] [INFO]   -> Found value: 708
[2026-01-27 18:32:28] [INFO]   -> Set field 'incidentLocationStreetNumber' = 708
[2026-01-27 18:32:28] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-01-27 18:32:28] [INFO]   -> Found value: E GLADYS ST
[2026-01-27 18:32:28] [INFO]   -> Set field 'streetName' = "E GLADYS ST"
[2026-01-27 18:32:28] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-01-27 18:32:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:32:28] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-01-27 18:32:28] [INFO]   -> Found value: SIKESTON
[2026-01-27 18:32:28] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-01-27 18:32:28] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-01-27 18:32:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:32:28] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-01-27 18:32:28] [INFO]   -> Found value: MO
[2026-01-27 18:32:28] [INFO]   -> Set field 'incidentLocationStateName' = "MO"
[2026-01-27 18:32:28] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-01-27 18:32:28] [INFO]   -> Found value: 63801
[2026-01-27 18:32:28] [INFO]   -> Set field 'nERISIncidentPostalCode' = 63801
[2026-01-27 18:32:28] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-01-27 18:32:28] [INFO]   -> Found value: 0
[2026-01-27 18:32:28] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-01-27 18:32:28] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-01-27 18:32:28] [INFO]   -> Found value: 0
[2026-01-27 18:32:28] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-01-27 18:32:28] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-01-27 18:32:28] [INFO]   -> Found value: FIRE-STRUCTURE
[2026-01-27 18:32:28] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-STRUCTURE"
[2026-01-27 18:32:28] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-01-27 18:32:28] [INFO]   -> Found value: 01-27-2026 12:08:37|FIRE IN FURNACE
SMOKE COMING OUT OF VENTS 
 01-27-2026 12:10:17|BMU ADVISED 01-2...
[2026-01-27 18:32:28] [INFO]   -> Set field 'dispatchNotes' = "01-27-2026 12:08:37|FIRE IN FURNACE\nSMOKE COMING OUT OF VENTS \n 01-27-2026 12:10:17|BMU ADVISED 01-27-2026 12:12:48|LIBERTY GAS ADVISED 01-27-2026 12:14:26|C89 SNGL STORY NOTHING SHOWING 01-27-2026 12:15:51|LIGHT SMOKE IN RESIDENCE  NO FIRE AT THIS TIME  DOWNGRADE UNITS NOT ON SCENE 01-27-2026 12:16:25|CV 01-27-2026 12:22:21|BMU ON SCENE 01-27-2026 12:29:02|LIBERTY ON SCENE 01-27-2026 12:32:07|NO FIRE ISSUE WITH FURNACE  SITUATION HAS BEEN ISOLATED  COMMAND TERMINATED  ALL UNITS IN SERVICE"
[2026-01-27 18:32:28] [INFO]   -> Set field 'cADLog' = "01-27-2026 12:08:37|FIRE IN FURNACE\nSMOKE COMING OUT OF VENTS \n 01-27-2026 12:10:17|BMU ADVISED 01-27-2026 12:12:48|LIBERTY GAS ADVISED 01-27-2026 12:14:26|C89 SNGL STORY NOTHING SHOWING 01-27-2026 12:15:51|LIGHT SMOKE IN RESIDENCE  NO FIRE AT THIS TIME  DOWNGRADE UNITS NOT ON SCENE 01-27-2026 12:16:25|CV 01-27-2026 12:22:21|BMU ON SCENE 01-27-2026 12:29:02|LIBERTY ON SCENE 01-27-2026 12:32:07|NO FIRE ISSUE WITH FURNACE  SITUATION HAS BEEN ISOLATED  COMMAND TERMINATED  ALL UNITS IN SERVICE"
[2026-01-27 18:32:28] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-01-27 18:32:28] [INFO]   -> Found value: 01-27-2026T12:09:56
[2026-01-27 18:32:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:09:56
[2026-01-27 18:32:28] [ERROR] Error formatting datetime '2026-27-01T12:09:56': Failed to parse time string (2026-27-01T12:09:56) at position 6 (7): Unexpected character
[2026-01-27 18:32:28] [INFO]   -> Set field 'alarm' = null
[2026-01-27 18:32:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:09:56
[2026-01-27 18:32:28] [ERROR] Error formatting datetime '2026-27-01T12:09:56': Failed to parse time string (2026-27-01T12:09:56) at position 6 (7): Unexpected character
[2026-01-27 18:32:28] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 18:32:28] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-01-27 18:32:28] [INFO]   -> Found value: 01-27-2026T12:13:59
[2026-01-27 18:32:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:13:59
[2026-01-27 18:32:28] [ERROR] Error formatting datetime '2026-27-01T12:13:59': Failed to parse time string (2026-27-01T12:13:59) at position 6 (7): Unexpected character
[2026-01-27 18:32:28] [INFO]   -> Set field 'onScene' = null
[2026-01-27 18:32:28] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-01-27 18:32:28] [INFO]   -> Found value: 01-27-2026T12:32:10
[2026-01-27 18:32:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:32:10
[2026-01-27 18:32:28] [ERROR] Error formatting datetime '2026-27-01T12:32:10': Failed to parse time string (2026-27-01T12:32:10) at position 6 (7): Unexpected character
[2026-01-27 18:32:28] [INFO]   -> Set field 'cleared' = null
[2026-01-27 18:32:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:32:10
[2026-01-27 18:32:28] [ERROR] Error formatting datetime '2026-27-01T12:32:10': Failed to parse time string (2026-27-01T12:32:10) at position 6 (7): Unexpected character
[2026-01-27 18:32:28] [INFO]   -> Set field 'inService' = null
[2026-01-27 18:32:28] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-01-27 18:32:28] [INFO]   -> Found value: DOWNGRADE
[2026-01-27 18:32:28] [INFO]   -> Set field 'cADVehicleID' = "DOWNGRADE"
[2026-01-27 18:32:28] [INFO]   -> Set field 'name' = "DOWNGRADE"
[2026-01-27 18:32:28] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-01-27 18:32:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:32:28] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-01-27 18:32:28] [INFO]   -> No value found (null or empty)
[2026-01-27 18:32:28] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-01-27 18:32:28] [INFO]   -> Found value: 01-27-2026T12:32:10
[2026-01-27 18:32:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:32:10
[2026-01-27 18:32:28] [ERROR] Error formatting datetime '2026-27-01T12:32:10': Failed to parse time string (2026-27-01T12:32:10) at position 6 (7): Unexpected character
[2026-01-27 18:32:28] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 18:32:28] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-01-27 18:32:28] [INFO]   -> Found value: 01-27-2026T12:16:31
[2026-01-27 18:32:28] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:16:31
[2026-01-27 18:32:28] [ERROR] Error formatting datetime '2026-27-01T12:16:31': Failed to parse time string (2026-27-01T12:16:31) at position 6 (7): Unexpected character
[2026-01-27 18:32:28] [INFO]   -> Set field 'timedispatch' = null
[2026-01-27 18:32:28] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-01-27 18:32:28] [INFO]   -> Found value: SDPSFD
[2026-01-27 18:32:28] [INFO]   -> Set field 'cADAgencyIdentifier' = "SDPSFD"
[2026-01-27 18:32:28] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-01-27 18:32:28] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-01-27 18:32:28] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-02806","cADNumber":"26-02806","incidentLocationStreetNumber":708,"streetName":"E GLADYS ST","incidentLocationCity":"SIKESTON","incidentLocationStateName":"MO","nERISIncidentPostalCode":63801,"nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"FIRE-STRUCTURE","dispatchNotes":"01-27-2026 12:08:37|FIRE IN FURNACE\nSMOKE COMING OUT OF VENTS \n 01-27-2026 12:10:17|BMU ADVISED 01-27-2026 12:12:48|LIBERTY GAS ADVISED 01-27-2026 12:14:26|C89 SNGL STORY NOTHING SHOWING 01-27-2026 12:15:51|LIGHT SMOKE IN RESIDENCE  NO FIRE AT THIS TIME  DOWNGRADE UNITS NOT ON SCENE 01-27-2026 12:16:25|CV 01-27-2026 12:22:21|BMU ON SCENE 01-27-2026 12:29:02|LIBERTY ON SCENE 01-27-2026 12:32:07|NO FIRE ISSUE WITH FURNACE  SITUATION HAS BEEN ISOLATED  COMMAND TERMINATED  ALL UNITS IN SERVICE","cADLog":"01-27-2026 12:08:37|FIRE IN FURNACE\nSMOKE COMING OUT OF VENTS \n 01-27-2026 12:10:17|BMU ADVISED 01-27-2026 12:12:48|LIBERTY GAS ADVISED 01-27-2026 12:14:26|C89 SNGL STORY NOTHING SHOWING 01-27-2026 12:15:51|LIGHT SMOKE IN RESIDENCE  NO FIRE AT THIS TIME  DOWNGRADE UNITS NOT ON SCENE 01-27-2026 12:16:25|CV 01-27-2026 12:22:21|BMU ON SCENE 01-27-2026 12:29:02|LIBERTY ON SCENE 01-27-2026 12:32:07|NO FIRE ISSUE WITH FURNACE  SITUATION HAS BEEN ISOLATED  COMMAND TERMINATED  ALL UNITS IN SERVICE","alarm":null,"dispatched":null,"onScene":null,"cleared":null,"inService":null,"cADVehicleID":"DOWNGRADE","name":"DOWNGRADE","timeunitclear":null,"timedispatch":null,"cADAgencyIdentifier":"SDPSFD","locationCoordinates":"0,0"}
[2026-01-27 18:32:28] [INFO] Number of extracted fields: 23
[2026-01-27 18:32:28] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SDPSFD'
[2026-01-27 18:32:28] [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-01-27 18:32:28] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SDPSFD"]
[2026-01-27 18:32:28] [INFO] Attempting SAASClient lookup for AgencyCode 'SDPSFD' (index 0) within mailbox's assigned agencies
[2026-01-27 18:32:28] [INFO] SUCCESS: Routed to agency 'Sikeston DPS' (ID: 6772cab7157b2ebde) at INDEX 0 based on AgencyCode 'SDPSFD'
[2026-01-27 18:32:28] [INFO] Fetched 4 stations from Stations module for agency 'Sikeston DPS': ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"]
[2026-01-27 18:32:28] [INFO] Final routing: saasclientId = 6772cab7157b2ebde, dispatchStationsIds = ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"], matchedAgencyIndex = 0
[2026-01-27 18:32:28] [INFO] Multi-agency routing matched mailbox default agency: 6772cab7157b2ebde (no update needed)
[2026-01-27 18:32:29] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e868e55c0c
[2026-01-27 18:32:30] [INFO] Created new Dispatches record with ID: 697904bd7a03276ad
[2026-01-27 18:32:30] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-02806.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-01-27/SDPSFD_26-02806.xml
[2026-01-27 18:32:30] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-02806.xml
[2026-01-27 18:33:15] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009933_20260127_183315.XML
[2026-01-27 18:33:15] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009933_20260127_183315.XML for user: 68f1466aed072ad4a
[2026-01-27 18:33:15] [INFO] File size: 4788 bytes
[2026-01-27 18:33:15] [INFO] Created FTPFiles record with ID: 697904ebeaa5fd2df
[2026-01-27 18:33:15] [INFO] About to extract fields from XML. File size: 4788 bytes
[2026-01-27 18:33:15] [INFO] Number of mappings: 28
[2026-01-27 18:33:15] [INFO] Starting XML parsing. Content length: 4788
[2026-01-27 18:33:15] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 18:33:15] [INFO] Processing 28 field mappings
[2026-01-27 18:33:15] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 18:33:15] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 18:33:15] [INFO]   -> Found value: MFD
[2026-01-27 18:33:15] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-01-27 18:33:15] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 18:33:15] [INFO]   -> Found value: 2026000036
[2026-01-27 18:33:15] [INFO]   -> Set field 'incidentInternalId' = "2026000036"
[2026-01-27 18:33:15] [INFO]   -> Set field 'dispatchRunNumber' = "2026000036"
[2026-01-27 18:33:15] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 18:33:15] [INFO]   -> Found value: FIRE ALARM
[2026-01-27 18:33:15] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE ALARM"
[2026-01-27 18:33:15] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 18:33:15] [INFO]   -> Found value: 522
[2026-01-27 18:33:15] [INFO]   -> Set field 'incidentLocationStreetNumber' = 522
[2026-01-27 18:33:15] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 18:33:15] [INFO]   -> Found value: TN
[2026-01-27 18:33:15] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 18:33:15] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 18:33:15] [INFO]   -> Found value: 38574
[2026-01-27 18:33:15] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-01-27 18:33:15] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 18:33:15] [INFO]   -> Found value: QUALITY INN & SUITES
[2026-01-27 18:33:15] [INFO]   -> Set field 'businessName' = "QUALITY INN & SUITES"
[2026-01-27 18:33:15] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 18:33:15] [INFO]   -> No value found (null or empty)
[2026-01-27 18:33:15] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 18:33:15] [INFO]   -> Found value: 36.14078
[2026-01-27 18:33:15] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.14077999999999946112438919954001903533935546875
[2026-01-27 18:33:15] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 18:33:15] [INFO]   -> Found value: -85.26656
[2026-01-27 18:33:15] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.266559999999998353814589790999889373779296875
[2026-01-27 18:33:15] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 18:33:15] [INFO]   -> Found value: 2026-01-27 12:30:41
[2026-01-27 18:33:15] [INFO]   -> Set field 'alarm' = "2026-01-27 12:30:41"
[2026-01-27 18:33:15] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 18:33:15] [INFO]   -> Found value: 2026-01-27 12:33:09
[2026-01-27 18:33:15] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:33:09"
[2026-01-27 18:33:15] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 18:33:15] [INFO]   -> No value found (null or empty)
[2026-01-27 18:33:15] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 18:33:15] [INFO]   -> No value found (null or empty)
[2026-01-27 18:33:15] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 18:33:15] [INFO]   -> No value found (null or empty)
[2026-01-27 18:33:15] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 18:33:15] [INFO]   -> Found value: AGEE ST/INDUSTRIAL DR
[2026-01-27 18:33:15] [INFO]   -> Set field 'incidentLocationCross' = "AGEE ST\/INDUSTRIAL DR"
[2026-01-27 18:33:15] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 18:33:15] [INFO]   -> Found value: MFEN2
[2026-01-27 18:33:15] [INFO]   -> Set field 'cADVehicleID' = "MFEN2"
[2026-01-27 18:33:15] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 18:33:15] [INFO]   -> Found value: 2026-01-27 12:33:09
[2026-01-27 18:33:15] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:33:09"
[2026-01-27 18:33:15] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 18:33:15] [INFO]   -> No value found (null or empty)
[2026-01-27 18:33:15] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 18:33:15] [INFO]   -> No value found (null or empty)
[2026-01-27 18:33:15] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 18:33:15] [INFO]   -> No value found (null or empty)
[2026-01-27 18:33:15] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 18:33:15] [INFO]   -> No value found (null or empty)
[2026-01-27 18:33:15] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 18:33:15] [INFO]   -> Found value: 20260009933
[2026-01-27 18:33:15] [INFO]   -> Set field 'policeReportNumber' = "20260009933"
[2026-01-27 18:33:15] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 18:33:15] [INFO]   -> Found value: #AAM33214E  [01/27/26 12:31:56 KMORGAN2] ZONE 100 SMOKE  [01/27/26 12:31:12 KMORGAN2]]
[2026-01-27 18:33:15] [INFO]   -> Set field 'dispatchNotes' = "#AAM33214E  [01\/27\/26 12:31:56 KMORGAN2] ZONE 100 SMOKE  [01\/27\/26 12:31:12 KMORGAN2]]"
[2026-01-27 18:33:15] [INFO]   -> Set field 'cADLog' = "#AAM33214E  [01\/27\/26 12:31:56 KMORGAN2] ZONE 100 SMOKE  [01\/27\/26 12:31:12 KMORGAN2]]"
[2026-01-27 18:33:15] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 18:33:15] [INFO]   -> Found value: MONTEREY
[2026-01-27 18:33:15] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-01-27 18:33:15] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 18:33:15] [INFO]   -> Found value: STRATTON
[2026-01-27 18:33:15] [INFO]   -> Set field 'streetName' = "STRATTON"
[2026-01-27 18:33:15] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 18:33:15] [INFO]   -> Found value: AVE
[2026-01-27 18:33:15] [INFO]   -> Set field 'streetType' = "AVE"
[2026-01-27 18:33:15] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 18:33:15] [INFO]   -> Found value: 522 E STRATTON AVE
[2026-01-27 18:33:15] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "522 E STRATTON AVE"
[2026-01-27 18:33:15] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-01-27 18:33:15] [INFO] Concatenating street name and type
[2026-01-27 18:33:15] [INFO]   -> Combined street name: STRATTON AVE
[2026-01-27 18:33:15] [INFO] Built locationCoordinates from lat/lng: 36.14078,-85.26656
[2026-01-27 18:33:15] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"MFD","incidentInternalId":"2026000036","dispatchRunNumber":"2026000036","incidentTypeValue1":"FIRE ALARM","incidentLocationStreetNumber":522,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"businessName":"QUALITY INN & SUITES","nERISIncidentLatitude":36.14077999999999946112438919954001903533935546875,"nERISIncidentLongitude":-85.266559999999998353814589790999889373779296875,"alarm":"2026-01-27 12:30:41","dispatched":"2026-01-27 12:33:09","incidentLocationCross":"AGEE ST\/INDUSTRIAL DR","cADVehicleID":"MFEN2","timedispatch":"2026-01-27 12:33:09","policeReportNumber":"20260009933","dispatchNotes":"#AAM33214E  [01\/27\/26 12:31:56 KMORGAN2] ZONE 100 SMOKE  [01\/27\/26 12:31:12 KMORGAN2]]","cADLog":"#AAM33214E  [01\/27\/26 12:31:56 KMORGAN2] ZONE 100 SMOKE  [01\/27\/26 12:31:12 KMORGAN2]]","incidentLocationCity":"MONTEREY","streetName":"STRATTON AVE","incidentAddressTextVersionStreet":"522 E STRATTON AVE","locationCoordinates":"36.14078,-85.26656"}
[2026-01-27 18:33:15] [INFO] Number of extracted fields: 22
[2026-01-27 18:33:15] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-01-27 18:33:15] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 4
[2026-01-27 18:33:15] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-01-27 18:33:15] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-01-27 18:33:16] [INFO] SUCCESS: Routed to agency 'Monterey Fire Department' (ID: 68e67aaba2bb4565e) at INDEX 0 based on AgencyCode 'MFD'
[2026-01-27 18:33:16] [INFO] Fetched 1 stations from Stations module for agency 'Monterey Fire Department': ["68ffe49c256b67300"]
[2026-01-27 18:33:16] [INFO] Final routing: saasclientId = 68e67aaba2bb4565e, dispatchStationsIds = ["68ffe49c256b67300"], matchedAgencyIndex = 0
[2026-01-27 18:33:16] [INFO] Updated FTPFiles record saasclientId to routed agency: 68e67aaba2bb4565e
[2026-01-27 18:33:16] [INFO] Found existing IncidentTypeMapping with ID: 69678f4b9453355aa
[2026-01-27 18:33:19] [INFO] Created new Dispatches record with ID: 697904ed286fcd5a0
[2026-01-27 18:33:19] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 18:33:19] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 18:33:23] [INFO] Successfully uploaded file to V2 FTP server: /MFD_20260009933_20260127_183315.XML
[2026-01-27 18:33:23] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009933_20260127_183315.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/MFD_20260009933_20260127_183315.XML
[2026-01-27 18:33:23] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260009933_20260127_183315.XML
[2026-01-27 18:49:43] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-02807.xml
[2026-01-27 18:49:43] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-02807.xml for user: 68d56363ec1209189
[2026-01-27 18:49:43] [INFO] File size: 1967 bytes
[2026-01-27 18:49:44] [INFO] Created FTPFiles record with ID: 697908c8482113e25
[2026-01-27 18:49:44] [INFO] About to extract fields from XML. File size: 1967 bytes
[2026-01-27 18:49:44] [INFO] Number of mappings: 21
[2026-01-27 18:49:44] [INFO] Starting XML parsing. Content length: 1967
[2026-01-27 18:49:44] [INFO] XML parsed successfully. Root element: Incident
[2026-01-27 18:49:44] [INFO] Processing 21 field mappings
[2026-01-27 18:49:44] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-01-27 18:49:44] [INFO]   -> Found value: 26-02807
[2026-01-27 18:49:44] [INFO]   -> Set field 'dispatchRunNumber' = "26-02807"
[2026-01-27 18:49:44] [INFO]   -> Set field 'cADNumber' = "26-02807"
[2026-01-27 18:49:44] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-01-27 18:49:44] [INFO]   -> Found value: 60
[2026-01-27 18:49:44] [INFO]   -> Set field 'incidentLocationStreetNumber' = 60
[2026-01-27 18:49:44] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-01-27 18:49:44] [INFO]   -> Found value: SLOANVILLE DR
[2026-01-27 18:49:44] [INFO]   -> Set field 'streetName' = "SLOANVILLE DR"
[2026-01-27 18:49:44] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-01-27 18:49:44] [INFO]   -> No value found (null or empty)
[2026-01-27 18:49:44] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-01-27 18:49:44] [INFO]   -> Found value: SIKESTON
[2026-01-27 18:49:44] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-01-27 18:49:44] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-01-27 18:49:44] [INFO]   -> No value found (null or empty)
[2026-01-27 18:49:44] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-01-27 18:49:44] [INFO]   -> No value found (null or empty)
[2026-01-27 18:49:44] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-01-27 18:49:44] [INFO]   -> No value found (null or empty)
[2026-01-27 18:49:44] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-01-27 18:49:44] [INFO]   -> Found value: 0
[2026-01-27 18:49:44] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-01-27 18:49:44] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-01-27 18:49:44] [INFO]   -> Found value: 0
[2026-01-27 18:49:44] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-01-27 18:49:44] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-01-27 18:49:44] [INFO]   -> Found value: MEDICAL
[2026-01-27 18:49:44] [INFO]   -> Set field 'incidentTypeValue1' = "MEDICAL"
[2026-01-27 18:49:44] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-01-27 18:49:44] [INFO]   -> Found value: 01-27-2026 12:10:56|Call Received on 01/27/2026 @ 12:10

Location: 1 COUNTY RD 472

57 YEAR OLD FEMA...
[2026-01-27 18:49:44] [INFO]   -> Set field 'dispatchNotes' = "01-27-2026 12:10:56|Call Received on 01\/27\/2026 @ 12:10\n\nLocation: 1 COUNTY RD 472\n\n57 YEAR OLD FEMALE POSS HEART ATTACK\nHEART RATE 132 01-27-2026 12:14:18|1701 EN ROUTE 01-27-2026 12:17:51|1501 EN ROUTE 01-27-2026 12:18:34|1707 EN ROUTE 01-27-2026 12:25:54|1701 ON SCNE 01-27-2026 12:28:57|1501 ADVISED 1512 TO STAGE AT SLOANVILLE AND COUNTY HIGHWAY 405 PT WILL BE TRANSPORTED FROM THE HOUSE TO EMS"
[2026-01-27 18:49:44] [INFO]   -> Set field 'cADLog' = "01-27-2026 12:10:56|Call Received on 01\/27\/2026 @ 12:10\n\nLocation: 1 COUNTY RD 472\n\n57 YEAR OLD FEMALE POSS HEART ATTACK\nHEART RATE 132 01-27-2026 12:14:18|1701 EN ROUTE 01-27-2026 12:17:51|1501 EN ROUTE 01-27-2026 12:18:34|1707 EN ROUTE 01-27-2026 12:25:54|1701 ON SCNE 01-27-2026 12:28:57|1501 ADVISED 1512 TO STAGE AT SLOANVILLE AND COUNTY HIGHWAY 405 PT WILL BE TRANSPORTED FROM THE HOUSE TO EMS"
[2026-01-27 18:49:44] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-01-27 18:49:44] [INFO]   -> Found value: 01-27-2026T12:13:46
[2026-01-27 18:49:44] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:13:46
[2026-01-27 18:49:44] [ERROR] Error formatting datetime '2026-27-01T12:13:46': Failed to parse time string (2026-27-01T12:13:46) at position 6 (7): Unexpected character
[2026-01-27 18:49:44] [INFO]   -> Set field 'alarm' = null
[2026-01-27 18:49:44] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:13:46
[2026-01-27 18:49:44] [ERROR] Error formatting datetime '2026-27-01T12:13:46': Failed to parse time string (2026-27-01T12:13:46) at position 6 (7): Unexpected character
[2026-01-27 18:49:44] [INFO]   -> Set field 'dispatched' = null
[2026-01-27 18:49:44] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-01-27 18:49:44] [INFO]   -> Found value: 01-27-2026T12:26:41
[2026-01-27 18:49:44] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:26:41
[2026-01-27 18:49:44] [ERROR] Error formatting datetime '2026-27-01T12:26:41': Failed to parse time string (2026-27-01T12:26:41) at position 6 (7): Unexpected character
[2026-01-27 18:49:44] [INFO]   -> Set field 'onScene' = null
[2026-01-27 18:49:44] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-01-27 18:49:44] [INFO]   -> No value found (null or empty)
[2026-01-27 18:49:44] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-01-27 18:49:44] [INFO]   -> Found value: 1701
[2026-01-27 18:49:44] [INFO]   -> Set field 'cADVehicleID' = 1701
[2026-01-27 18:49:44] [INFO]   -> Set field 'name' = "1701"
[2026-01-27 18:49:44] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-01-27 18:49:44] [INFO]   -> No value found (null or empty)
[2026-01-27 18:49:44] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-01-27 18:49:44] [INFO]   -> Found value: 01-27-2026T12:26:41
[2026-01-27 18:49:44] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:26:41
[2026-01-27 18:49:44] [ERROR] Error formatting datetime '2026-27-01T12:26:41': Failed to parse time string (2026-27-01T12:26:41) at position 6 (7): Unexpected character
[2026-01-27 18:49:44] [INFO]   -> Set field 'timeonscene' = null
[2026-01-27 18:49:44] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-01-27 18:49:44] [INFO]   -> Found value: 01-27-2026T12:46:15
[2026-01-27 18:49:44] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:46:15
[2026-01-27 18:49:44] [ERROR] Error formatting datetime '2026-27-01T12:46:15': Failed to parse time string (2026-27-01T12:46:15) at position 6 (7): Unexpected character
[2026-01-27 18:49:44] [INFO]   -> Set field 'timeunitclear' = null
[2026-01-27 18:49:44] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-01-27 18:49:44] [INFO]   -> Found value: 01-27-2026T12:26:36
[2026-01-27 18:49:44] [INFO] Reformatted DD-MM-YYYY date '01-27-2026' (day=01, month=27) to ISO: 2026-27-01T12:26:36
[2026-01-27 18:49:44] [ERROR] Error formatting datetime '2026-27-01T12:26:36': Failed to parse time string (2026-27-01T12:26:36) at position 6 (7): Unexpected character
[2026-01-27 18:49:44] [INFO]   -> Set field 'timedispatch' = null
[2026-01-27 18:49:44] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-01-27 18:49:44] [INFO]   -> Found value: SCRFD
[2026-01-27 18:49:44] [INFO]   -> Set field 'cADAgencyIdentifier' = "SCRFD"
[2026-01-27 18:49:44] [INFO] Finished extracting fields. Total fields extracted: 19
[2026-01-27 18:49:44] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-01-27 18:49:44] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-02807","cADNumber":"26-02807","incidentLocationStreetNumber":60,"streetName":"SLOANVILLE DR","incidentLocationCity":"SIKESTON","nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"MEDICAL","dispatchNotes":"01-27-2026 12:10:56|Call Received on 01\/27\/2026 @ 12:10\n\nLocation: 1 COUNTY RD 472\n\n57 YEAR OLD FEMALE POSS HEART ATTACK\nHEART RATE 132 01-27-2026 12:14:18|1701 EN ROUTE 01-27-2026 12:17:51|1501 EN ROUTE 01-27-2026 12:18:34|1707 EN ROUTE 01-27-2026 12:25:54|1701 ON SCNE 01-27-2026 12:28:57|1501 ADVISED 1512 TO STAGE AT SLOANVILLE AND COUNTY HIGHWAY 405 PT WILL BE TRANSPORTED FROM THE HOUSE TO EMS","cADLog":"01-27-2026 12:10:56|Call Received on 01\/27\/2026 @ 12:10\n\nLocation: 1 COUNTY RD 472\n\n57 YEAR OLD FEMALE POSS HEART ATTACK\nHEART RATE 132 01-27-2026 12:14:18|1701 EN ROUTE 01-27-2026 12:17:51|1501 EN ROUTE 01-27-2026 12:18:34|1707 EN ROUTE 01-27-2026 12:25:54|1701 ON SCNE 01-27-2026 12:28:57|1501 ADVISED 1512 TO STAGE AT SLOANVILLE AND COUNTY HIGHWAY 405 PT WILL BE TRANSPORTED FROM THE HOUSE TO EMS","alarm":null,"dispatched":null,"onScene":null,"cADVehicleID":1701,"name":"1701","timeonscene":null,"timeunitclear":null,"timedispatch":null,"cADAgencyIdentifier":"SCRFD","locationCoordinates":"0,0"}
[2026-01-27 18:49:44] [INFO] Number of extracted fields: 20
[2026-01-27 18:49:44] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SCRFD'
[2026-01-27 18:49:44] [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-01-27 18:49:44] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SCRFD"]
[2026-01-27 18:49:44] [INFO] Attempting SAASClient lookup for AgencyCode 'SCRFD' (index 0) within mailbox's assigned agencies
[2026-01-27 18:49:44] [INFO] SUCCESS: Routed to agency 'Scott County Rural Fire Protection District' (ID: 6643bdb30659f00d8) at INDEX 0 based on AgencyCode 'SCRFD'
[2026-01-27 18:49:44] [INFO] Fetched 6 stations from Stations module for agency 'Scott County Rural Fire Protection District': ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"]
[2026-01-27 18:49:44] [INFO] Final routing: saasclientId = 6643bdb30659f00d8, dispatchStationsIds = ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"], matchedAgencyIndex = 0
[2026-01-27 18:49:44] [INFO] Updated FTPFiles record saasclientId to routed agency: 6643bdb30659f00d8
[2026-01-27 18:49:44] [INFO] Found existing IncidentTypeMapping with ID: 6979040ce473322a8
[2026-01-27 18:49:45] [INFO] Found existing Dispatch with cADNumber '26-02807', ID: 6979006218552b371 - will update instead of create
[2026-01-27 18:49:45] [INFO] Updated existing Dispatches record with ID: 6979006218552b371
[2026-01-27 18:49:45] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-02807.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-01-27/SCRFD_26-02807.xml
[2026-01-27 18:49:45] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-02807.xml
[2026-01-27 18:52:35] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009944_20260127_185235.XML
[2026-01-27 18:52:35] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009944_20260127_185235.XML for user: 68f1466aed072ad4a
[2026-01-27 18:52:35] [INFO] File size: 5124 bytes
[2026-01-27 18:52:36] [INFO] Created FTPFiles record with ID: 6979097404fb0c801
[2026-01-27 18:52:36] [INFO] About to extract fields from XML. File size: 5124 bytes
[2026-01-27 18:52:36] [INFO] Number of mappings: 28
[2026-01-27 18:52:36] [INFO] Starting XML parsing. Content length: 5124
[2026-01-27 18:52:36] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 18:52:36] [INFO] Processing 28 field mappings
[2026-01-27 18:52:36] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 18:52:36] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 18:52:36] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 18:52:36] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-01-27 18:52:36] [INFO]   -> Found value: PCFD
EMS
[2026-01-27 18:52:36] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS"
[2026-01-27 18:52:36] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 18:52:36] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-01-27 18:52:36] [INFO]   -> Found value: 2026000247
[2026-01-27 18:52:36] [INFO]   -> Set field 'incidentInternalId' = "2026000247"
[2026-01-27 18:52:36] [INFO]   -> Set field 'dispatchRunNumber' = "2026000247"
[2026-01-27 18:52:36] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 18:52:36] [INFO]   -> Found value: MANPOWER - EMS ASSIST
[2026-01-27 18:52:36] [INFO]   -> Set field 'incidentTypeValue1' = "MANPOWER - EMS ASSIST"
[2026-01-27 18:52:36] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 18:52:36] [INFO]   -> Found value: 3375
[2026-01-27 18:52:36] [INFO]   -> Set field 'incidentLocationStreetNumber' = 3375
[2026-01-27 18:52:36] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 18:52:36] [INFO]   -> Found value: TN
[2026-01-27 18:52:36] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 18:52:36] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 18:52:36] [INFO]   -> Found value: 38501
[2026-01-27 18:52:36] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-01-27 18:52:36] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 18:52:36] [INFO]   -> Found value: NANCY AND CECIL LEMONS
[2026-01-27 18:52:36] [INFO]   -> Set field 'businessName' = "NANCY AND CECIL LEMONS"
[2026-01-27 18:52:36] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 18:52:36] [INFO]   -> No value found (null or empty)
[2026-01-27 18:52:36] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 18:52:36] [INFO]   -> Found value: 36.22228
[2026-01-27 18:52:36] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.2222799999999978126652422361075878143310546875
[2026-01-27 18:52:36] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 18:52:36] [INFO]   -> Found value: -85.55058
[2026-01-27 18:52:36] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.550579999999996516635292209684848785400390625
[2026-01-27 18:52:36] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 18:52:36] [INFO]   -> Found value: 2026-01-27 12:50:37
[2026-01-27 18:52:36] [INFO]   -> Set field 'alarm' = "2026-01-27 12:50:37"
[2026-01-27 18:52:36] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 18:52:36] [INFO]   -> Found value: 2026-01-27 12:52:30
[2026-01-27 18:52:36] [INFO]   -> Set field 'dispatched' = "2026-01-27 12:52:30"
[2026-01-27 18:52:36] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 18:52:36] [INFO]   -> No value found (null or empty)
[2026-01-27 18:52:36] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 18:52:36] [INFO]   -> No value found (null or empty)
[2026-01-27 18:52:36] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 18:52:36] [INFO]   -> No value found (null or empty)
[2026-01-27 18:52:36] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 18:52:36] [INFO]   -> Found value: GAINESBORO GRADE/SHIPLEY RD
[2026-01-27 18:52:36] [INFO]   -> Set field 'incidentLocationCross' = "GAINESBORO GRADE\/SHIPLEY RD"
[2026-01-27 18:52:36] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 18:52:36] [INFO]   -> Found value: EN16
[2026-01-27 18:52:36] [INFO]   -> Set field 'cADVehicleID' = "EN16"
[2026-01-27 18:52:36] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 18:52:36] [INFO]   -> Found value: 2026-01-27 12:52:30
[2026-01-27 18:52:36] [INFO]   -> Set field 'timedispatch' = "2026-01-27 12:52:30"
[2026-01-27 18:52:36] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 18:52:36] [INFO]   -> No value found (null or empty)
[2026-01-27 18:52:36] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 18:52:36] [INFO]   -> No value found (null or empty)
[2026-01-27 18:52:36] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 18:52:36] [INFO]   -> No value found (null or empty)
[2026-01-27 18:52:36] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 18:52:36] [INFO]   -> No value found (null or empty)
[2026-01-27 18:52:36] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 18:52:36] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 18:52:36] [INFO]   -> Found value: 20260009944
[2026-01-27 18:52:36] [INFO]   -> Set field 'policeReportNumber' = "20260009944"
[2026-01-27 18:52:36] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 18:52:36] [INFO]   -> Found value: Event spawned from EMS NON-EMERGENCY.  [01/27/2026 12:50:37 DSWINK] WEAKNESS  [01/27/26 12:50:16 DSW...
[2026-01-27 18:52:36] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 12:50:37 DSWINK] WEAKNESS  [01\/27\/26 12:50:16 DSWINK]]"
[2026-01-27 18:52:36] [INFO]   -> Set field 'cADLog' = "Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 12:50:37 DSWINK] WEAKNESS  [01\/27\/26 12:50:16 DSWINK]]"
[2026-01-27 18:52:36] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 18:52:36] [INFO]   -> Found value: COOKEVILLE
[2026-01-27 18:52:36] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-01-27 18:52:36] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 18:52:36] [INFO]   -> Found value: CHESTER KING
[2026-01-27 18:52:36] [INFO]   -> Set field 'streetName' = "CHESTER KING"
[2026-01-27 18:52:36] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 18:52:36] [INFO]   -> Found value: RD
[2026-01-27 18:52:36] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 18:52:36] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 18:52:36] [INFO]   -> Found value: 3375 CHESTER KING RD
[2026-01-27 18:52:36] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "3375 CHESTER KING RD"
[2026-01-27 18:52:36] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-01-27 18:52:36] [INFO] Concatenating street name and type
[2026-01-27 18:52:36] [INFO]   -> Combined street name: CHESTER KING RD
[2026-01-27 18:52:36] [INFO] Built locationCoordinates from lat/lng: 36.22228,-85.55058
[2026-01-27 18:52:36] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS","incidentInternalId":"2026000247","dispatchRunNumber":"2026000247","incidentTypeValue1":"MANPOWER - EMS ASSIST","incidentLocationStreetNumber":3375,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"businessName":"NANCY AND CECIL LEMONS","nERISIncidentLatitude":36.2222799999999978126652422361075878143310546875,"nERISIncidentLongitude":-85.550579999999996516635292209684848785400390625,"alarm":"2026-01-27 12:50:37","dispatched":"2026-01-27 12:52:30","incidentLocationCross":"GAINESBORO GRADE\/SHIPLEY RD","cADVehicleID":"EN16","timedispatch":"2026-01-27 12:52:30","policeReportNumber":"20260009944","dispatchNotes":"Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 12:50:37 DSWINK] WEAKNESS  [01\/27\/26 12:50:16 DSWINK]]","cADLog":"Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 12:50:37 DSWINK] WEAKNESS  [01\/27\/26 12:50:16 DSWINK]]","incidentLocationCity":"COOKEVILLE","streetName":"CHESTER KING RD","incidentAddressTextVersionStreet":"3375 CHESTER KING RD","locationCoordinates":"36.22228,-85.55058"}
[2026-01-27 18:52:36] [INFO] Number of extracted fields: 22
[2026-01-27 18:52:36] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS'
[2026-01-27 18:52:36] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS', Parsed IDs = ["PCFD","EMS"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-01-27 18:52:36] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS"]
[2026-01-27 18:52:36] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 18:52:36] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 18:52:36] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS"]
[2026-01-27 18:52:36] [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-01-27 18:52:36] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 18:52:36] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 18:52:36] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 18:52:36] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 18:52:36] [INFO] Found existing IncidentTypeMapping with ID: 6938bcc5e565c9852
[2026-01-27 18:52:46] [INFO] Created new Dispatches record with ID: 69790974d378f7096
[2026-01-27 18:52:46] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 18:52:46] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 18:52:49] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009944_20260127_185235.XML
[2026-01-27 18:52:49] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009944_20260127_185235.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009944_20260127_185235.XML
[2026-01-27 18:52:49] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009944_20260127_185235.XML
[2026-01-27 19:32:56] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260009964_20260127_193256.XML
[2026-01-27 19:32:56] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260009964_20260127_193256.XML for user: 68f1466aed072ad4a
[2026-01-27 19:32:56] [INFO] File size: 5480 bytes
[2026-01-27 19:32:56] [INFO] Created FTPFiles record with ID: 697912e86418c7ee5
[2026-01-27 19:32:56] [INFO] About to extract fields from XML. File size: 5480 bytes
[2026-01-27 19:32:56] [INFO] Number of mappings: 28
[2026-01-27 19:32:56] [INFO] Starting XML parsing. Content length: 5480
[2026-01-27 19:32:56] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 19:32:56] [INFO] Processing 28 field mappings
[2026-01-27 19:32:56] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 19:32:56] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 19:32:56] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 19:32:56] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-01-27 19:32:56] [INFO]   -> Found value: AFD
EMS
APD
[2026-01-27 19:32:56] [INFO]   -> Set field 'cADAgencyIdentifier' = "AFD\nEMS\nAPD"
[2026-01-27 19:32:56] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 19:32:56] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-01-27 19:32:56] [INFO]   -> Found value: 2026000037
[2026-01-27 19:32:56] [INFO]   -> Set field 'incidentInternalId' = "2026000037"
[2026-01-27 19:32:56] [INFO]   -> Set field 'dispatchRunNumber' = "2026000037"
[2026-01-27 19:32:56] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 19:32:56] [INFO]   -> Found value: CHEST PAIN
[2026-01-27 19:32:56] [INFO]   -> Set field 'incidentTypeValue1' = "CHEST PAIN"
[2026-01-27 19:32:56] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 19:32:56] [INFO]   -> Found value: 255
[2026-01-27 19:32:56] [INFO]   -> Set field 'incidentLocationStreetNumber' = 255
[2026-01-27 19:32:56] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 19:32:56] [INFO]   -> Found value: TN
[2026-01-27 19:32:56] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 19:32:56] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 19:32:56] [INFO]   -> Found value: 38506
[2026-01-27 19:32:56] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-01-27 19:32:56] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 19:32:56] [INFO]   -> No value found (null or empty)
[2026-01-27 19:32:56] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 19:32:56] [INFO]   -> Found value: C108
[2026-01-27 19:32:56] [INFO]   -> Set field 'incidentLocationApt' = "C108"
[2026-01-27 19:32:56] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 19:32:56] [INFO]   -> Found value: 36.20053
[2026-01-27 19:32:56] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.2005300000000005411493475548923015594482421875
[2026-01-27 19:32:56] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 19:32:56] [INFO]   -> Found value: -85.45924
[2026-01-27 19:32:56] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.459239999999994097379385493695735931396484375
[2026-01-27 19:32:56] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 19:32:56] [INFO]   -> Found value: 2026-01-27 13:31:54
[2026-01-27 19:32:56] [INFO]   -> Set field 'alarm' = "2026-01-27 13:31:54"
[2026-01-27 19:32:56] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 19:32:56] [INFO]   -> Found value: 2026-01-27 13:32:44
[2026-01-27 19:32:56] [INFO]   -> Set field 'dispatched' = "2026-01-27 13:32:44"
[2026-01-27 19:32:56] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 19:32:56] [INFO]   -> No value found (null or empty)
[2026-01-27 19:32:56] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 19:32:56] [INFO]   -> No value found (null or empty)
[2026-01-27 19:32:56] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 19:32:56] [INFO]   -> No value found (null or empty)
[2026-01-27 19:32:56] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 19:32:56] [INFO]   -> Found value: MCCAWLEY ST/RAMP
[2026-01-27 19:32:56] [INFO]   -> Set field 'incidentLocationCross' = "MCCAWLEY ST\/RAMP"
[2026-01-27 19:32:56] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 19:32:56] [INFO]   -> Found value: A1200
[2026-01-27 19:32:56] [INFO]   -> Set field 'cADVehicleID' = "A1200"
[2026-01-27 19:32:56] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 19:32:56] [INFO]   -> Found value: 2026-01-27 13:32:44
[2026-01-27 19:32:56] [INFO]   -> Set field 'timedispatch' = "2026-01-27 13:32:44"
[2026-01-27 19:32:56] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 19:32:56] [INFO]   -> No value found (null or empty)
[2026-01-27 19:32:56] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 19:32:56] [INFO]   -> No value found (null or empty)
[2026-01-27 19:32:56] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 19:32:56] [INFO]   -> No value found (null or empty)
[2026-01-27 19:32:56] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 19:32:56] [INFO]   -> No value found (null or empty)
[2026-01-27 19:32:56] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 19:32:56] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 19:32:56] [INFO]   -> Found value: 20260009964
[2026-01-27 19:32:56] [INFO]   -> Set field 'policeReportNumber' = "20260009964"
[2026-01-27 19:32:56] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 19:32:56] [INFO]   -> Found value: [LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01/27/26 13:32:34 BWILSON] [EMS] BILLY WILLIS//77 YOM  [01/2...
[2026-01-27 19:32:56] [INFO]   -> Set field 'dispatchNotes' = "[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01\/27\/26 13:32:34 BWILSON] [EMS] BILLY WILLIS\/\/77 YOM  [01\/27\/26 13:32:18 KMORGAN2] Event spawned from CHEST PAIN.  [01\/27\/2026 13:31:54 KMORGAN2] SEVERE PAINS IN CHEST AND BACK VOMITING  [01\/27\/26 13:31:49 KMORGAN2]]"
[2026-01-27 19:32:56] [INFO]   -> Set field 'cADLog' = "[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01\/27\/26 13:32:34 BWILSON] [EMS] BILLY WILLIS\/\/77 YOM  [01\/27\/26 13:32:18 KMORGAN2] Event spawned from CHEST PAIN.  [01\/27\/2026 13:31:54 KMORGAN2] SEVERE PAINS IN CHEST AND BACK VOMITING  [01\/27\/26 13:31:49 KMORGAN2]]"
[2026-01-27 19:32:56] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 19:32:56] [INFO]   -> Found value: ALGOOD
[2026-01-27 19:32:56] [INFO]   -> Set field 'incidentLocationCity' = "ALGOOD"
[2026-01-27 19:32:56] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 19:32:56] [INFO]   -> Found value: QUINLAND LAKE
[2026-01-27 19:32:56] [INFO]   -> Set field 'streetName' = "QUINLAND LAKE"
[2026-01-27 19:32:56] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 19:32:56] [INFO]   -> Found value: RD
[2026-01-27 19:32:56] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 19:32:56] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 19:32:56] [INFO]   -> Found value: 255-C108 QUINLAND LAKE RD
[2026-01-27 19:32:56] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "255-C108 QUINLAND LAKE RD"
[2026-01-27 19:32:56] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-01-27 19:32:56] [INFO] Concatenating street name and type
[2026-01-27 19:32:56] [INFO]   -> Combined street name: QUINLAND LAKE RD
[2026-01-27 19:32:56] [INFO] Built locationCoordinates from lat/lng: 36.20053,-85.45924
[2026-01-27 19:32:56] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"AFD\nEMS\nAPD","incidentInternalId":"2026000037","dispatchRunNumber":"2026000037","incidentTypeValue1":"CHEST PAIN","incidentLocationStreetNumber":255,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"incidentLocationApt":"C108","nERISIncidentLatitude":36.2005300000000005411493475548923015594482421875,"nERISIncidentLongitude":-85.459239999999994097379385493695735931396484375,"alarm":"2026-01-27 13:31:54","dispatched":"2026-01-27 13:32:44","incidentLocationCross":"MCCAWLEY ST\/RAMP","cADVehicleID":"A1200","timedispatch":"2026-01-27 13:32:44","policeReportNumber":"20260009964","dispatchNotes":"[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01\/27\/26 13:32:34 BWILSON] [EMS] BILLY WILLIS\/\/77 YOM  [01\/27\/26 13:32:18 KMORGAN2] Event spawned from CHEST PAIN.  [01\/27\/2026 13:31:54 KMORGAN2] SEVERE PAINS IN CHEST AND BACK VOMITING  [01\/27\/26 13:31:49 KMORGAN2]]","cADLog":"[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [01\/27\/26 13:32:34 BWILSON] [EMS] BILLY WILLIS\/\/77 YOM  [01\/27\/26 13:32:18 KMORGAN2] Event spawned from CHEST PAIN.  [01\/27\/2026 13:31:54 KMORGAN2] SEVERE PAINS IN CHEST AND BACK VOMITING  [01\/27\/26 13:31:49 KMORGAN2]]","incidentLocationCity":"ALGOOD","streetName":"QUINLAND LAKE RD","incidentAddressTextVersionStreet":"255-C108 QUINLAND LAKE RD","locationCoordinates":"36.20053,-85.45924"}
[2026-01-27 19:32:56] [INFO] Number of extracted fields: 22
[2026-01-27 19:32:56] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'AFD
EMS
APD'
[2026-01-27 19:32:56] [INFO] Multi-agency routing check: CAD Agency ID raw = 'AFD
EMS
APD', Parsed IDs = ["AFD","EMS","APD"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 4
[2026-01-27 19:32:56] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["AFD","EMS","APD"]
[2026-01-27 19:32:56] [INFO] Attempting SAASClient lookup for AgencyCode 'AFD' (index 0) within mailbox's assigned agencies
[2026-01-27 19:32:56] [INFO] SUCCESS: Routed to agency 'Algood Fire Department' (ID: 68910627445d6e167) at INDEX 0 based on AgencyCode 'AFD'
[2026-01-27 19:32:56] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","APD"]
[2026-01-27 19:32:56] [INFO] Fetched 1 stations from Stations module for agency 'Algood Fire Department': ["68922bda7fe89f7ff"]
[2026-01-27 19:32:56] [INFO] Final routing: saasclientId = 68910627445d6e167, dispatchStationsIds = ["68922bda7fe89f7ff"], matchedAgencyIndex = 0
[2026-01-27 19:32:56] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-01-27 19:32:56] [INFO] Filtered cADAgencyIdentifier to: AFD
[2026-01-27 19:32:56] [INFO] Updated FTPFiles record saasclientId to routed agency: 68910627445d6e167
[2026-01-27 19:32:57] [INFO] Found existing IncidentTypeMapping with ID: 69448a5c00a999345
[2026-01-27 19:33:02] [INFO] Created new Dispatches record with ID: 697912e97d3145f7e
[2026-01-27 19:33:02] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 19:33:02] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 19:33:06] [INFO] Successfully uploaded file to V2 FTP server: /AFD_20260009964_20260127_193256.XML
[2026-01-27 19:33:06] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260009964_20260127_193256.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/AFD_20260009964_20260127_193256.XML
[2026-01-27 19:33:06] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260009964_20260127_193256.XML
[2026-01-27 20:30:06] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009986_20260127_203006.XML
[2026-01-27 20:30:06] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009986_20260127_203006.XML for user: 68f1466aed072ad4a
[2026-01-27 20:30:06] [INFO] File size: 5533 bytes
[2026-01-27 20:30:06] [INFO] Created FTPFiles record with ID: 6979204e83cb944aa
[2026-01-27 20:30:06] [INFO] About to extract fields from XML. File size: 5533 bytes
[2026-01-27 20:30:06] [INFO] Number of mappings: 28
[2026-01-27 20:30:06] [INFO] Starting XML parsing. Content length: 5533
[2026-01-27 20:30:06] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 20:30:06] [INFO] Processing 28 field mappings
[2026-01-27 20:30:06] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 20:30:06] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 20:30:06] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 20:30:06] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-01-27 20:30:06] [INFO]   -> Found value: PCFD
EMS
[2026-01-27 20:30:06] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS"
[2026-01-27 20:30:06] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 20:30:06] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-01-27 20:30:06] [INFO]   -> Found value: 2026000248
[2026-01-27 20:30:06] [INFO]   -> Set field 'incidentInternalId' = "2026000248"
[2026-01-27 20:30:06] [INFO]   -> Set field 'dispatchRunNumber' = "2026000248"
[2026-01-27 20:30:06] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 20:30:06] [INFO]   -> Found value: MANPOWER - EMS ASSIST
[2026-01-27 20:30:06] [INFO]   -> Set field 'incidentTypeValue1' = "MANPOWER - EMS ASSIST"
[2026-01-27 20:30:06] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 20:30:06] [INFO]   -> Found value: 230
[2026-01-27 20:30:06] [INFO]   -> Set field 'incidentLocationStreetNumber' = 230
[2026-01-27 20:30:06] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 20:30:06] [INFO]   -> Found value: TN
[2026-01-27 20:30:06] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 20:30:06] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 20:30:06] [INFO]   -> Found value: 38574
[2026-01-27 20:30:06] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-01-27 20:30:06] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 20:30:06] [INFO]   -> Found value: 36.11761
[2026-01-27 20:30:06] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1176099999999991041477187536656856536865234375
[2026-01-27 20:30:06] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 20:30:06] [INFO]   -> Found value: -85.16898
[2026-01-27 20:30:06] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.168980000000004793037078343331813812255859375
[2026-01-27 20:30:06] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 20:30:06] [INFO]   -> Found value: 2026-01-27 14:18:26
[2026-01-27 20:30:06] [INFO]   -> Set field 'alarm' = "2026-01-27 14:18:26"
[2026-01-27 20:30:06] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 20:30:06] [INFO]   -> Found value: 2026-01-27 14:29:54
[2026-01-27 20:30:06] [INFO]   -> Set field 'dispatched' = "2026-01-27 14:29:54"
[2026-01-27 20:30:06] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 20:30:06] [INFO]   -> Found value: TABLE TOP RD/BAYLEE BLVD
[2026-01-27 20:30:06] [INFO]   -> Set field 'incidentLocationCross' = "TABLE TOP RD\/BAYLEE BLVD"
[2026-01-27 20:30:06] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 20:30:06] [INFO]   -> Found value: EN21
[2026-01-27 20:30:06] [INFO]   -> Set field 'cADVehicleID' = "EN21"
[2026-01-27 20:30:06] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 20:30:06] [INFO]   -> Found value: 2026-01-27 14:29:54
[2026-01-27 20:30:06] [INFO]   -> Set field 'timedispatch' = "2026-01-27 14:29:54"
[2026-01-27 20:30:06] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 20:30:06] [INFO]   -> No value found (null or empty)
[2026-01-27 20:30:06] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 20:30:06] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 20:30:06] [INFO]   -> Found value: 20260009986
[2026-01-27 20:30:06] [INFO]   -> Set field 'policeReportNumber' = "20260009986"
[2026-01-27 20:30:06] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 20:30:06] [INFO]   -> Found value: Event spawned from CONVALESCENT.  [01/27/2026 14:18:26 KHILL] [763B-TRANSPORT] {763B} Beg Mileage: 2...
[2026-01-27 20:30:06] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from CONVALESCENT.  [01\/27\/2026 14:18:26 KHILL] [763B-TRANSPORT] {763B} Beg Mileage: 25346.3  [01\/27\/26 14:15:45 ALOOPER] [763B-TRANSPORT] {763B}  [01\/27\/26 14:15:45 ALOOPER] This event (K MCCABE DISCHARGE TO RESIDENCE ) was created by Event Scheduler. Comments: KAREN MCCABE \/ 11-27-47 STANDING STONE ROOM# 408B DISCHARGE TO RESIDENCE 280 CADE RD MONTEREY  TN 38574  GENTIVA HOSPICE RESPONSIBLE FOR PAYMENT  Added by AFIELDS on 01\/27\/2026 at 08:39   [01\/27\/26 13:30:04 SQLAUTO]."
[2026-01-27 20:30:06] [INFO]   -> Set field 'cADLog' = "Event spawned from CONVALESCENT.  [01\/27\/2026 14:18:26 KHILL] [763B-TRANSPORT] {763B} Beg Mileage: 25346.3  [01\/27\/26 14:15:45 ALOOPER] [763B-TRANSPORT] {763B}  [01\/27\/26 14:15:45 ALOOPER] This event (K MCCABE DISCHARGE TO RESIDENCE ) was created by Event Scheduler. Comments: KAREN MCCABE \/ 11-27-47 STANDING STONE ROOM# 408B DISCHARGE TO RESIDENCE 280 CADE RD MONTEREY  TN 38574  GENTIVA HOSPICE RESPONSIBLE FOR PAYMENT  Added by AFIELDS on 01\/27\/2026 at 08:39   [01\/27\/26 13:30:04 SQLAUTO]."
[2026-01-27 20:30:06] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 20:30:06] [INFO]   -> Found value: MONTEREY
[2026-01-27 20:30:06] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-01-27 20:30:06] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 20:30:06] [INFO]   -> Found value: CADE
[2026-01-27 20:30:06] [INFO]   -> Set field 'streetName' = "CADE"
[2026-01-27 20:30:06] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 20:30:06] [INFO]   -> Found value: RD
[2026-01-27 20:30:06] [INFO]   -> Set field 'streetType' = "RD"
[2026-01-27 20:30:06] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 20:30:06] [INFO]   -> Found value: 230 CADE RD
[2026-01-27 20:30:06] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "230 CADE RD"
[2026-01-27 20:30:06] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-01-27 20:30:06] [INFO] Concatenating street name and type
[2026-01-27 20:30:06] [INFO]   -> Combined street name: CADE RD
[2026-01-27 20:30:06] [INFO] Built locationCoordinates from lat/lng: 36.11761,-85.16898
[2026-01-27 20:30:06] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS","incidentInternalId":"2026000248","dispatchRunNumber":"2026000248","incidentTypeValue1":"MANPOWER - EMS ASSIST","incidentLocationStreetNumber":230,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"nERISIncidentLatitude":36.1176099999999991041477187536656856536865234375,"nERISIncidentLongitude":-85.168980000000004793037078343331813812255859375,"alarm":"2026-01-27 14:18:26","dispatched":"2026-01-27 14:29:54","incidentLocationCross":"TABLE TOP RD\/BAYLEE BLVD","cADVehicleID":"EN21","timedispatch":"2026-01-27 14:29:54","policeReportNumber":"20260009986","dispatchNotes":"Event spawned from CONVALESCENT.  [01\/27\/2026 14:18:26 KHILL] [763B-TRANSPORT] {763B} Beg Mileage: 25346.3  [01\/27\/26 14:15:45 ALOOPER] [763B-TRANSPORT] {763B}  [01\/27\/26 14:15:45 ALOOPER] This event (K MCCABE DISCHARGE TO RESIDENCE ) was created by Event Scheduler. Comments: KAREN MCCABE \/ 11-27-47 STANDING STONE ROOM# 408B DISCHARGE TO RESIDENCE 280 CADE RD MONTEREY  TN 38574  GENTIVA HOSPICE RESPONSIBLE FOR PAYMENT  Added by AFIELDS on 01\/27\/2026 at 08:39   [01\/27\/26 13:30:04 SQLAUTO].","cADLog":"Event spawned from CONVALESCENT.  [01\/27\/2026 14:18:26 KHILL] [763B-TRANSPORT] {763B} Beg Mileage: 25346.3  [01\/27\/26 14:15:45 ALOOPER] [763B-TRANSPORT] {763B}  [01\/27\/26 14:15:45 ALOOPER] This event (K MCCABE DISCHARGE TO RESIDENCE ) was created by Event Scheduler. Comments: KAREN MCCABE \/ 11-27-47 STANDING STONE ROOM# 408B DISCHARGE TO RESIDENCE 280 CADE RD MONTEREY  TN 38574  GENTIVA HOSPICE RESPONSIBLE FOR PAYMENT  Added by AFIELDS on 01\/27\/2026 at 08:39   [01\/27\/26 13:30:04 SQLAUTO].","incidentLocationCity":"MONTEREY","streetName":"CADE RD","incidentAddressTextVersionStreet":"230 CADE RD","locationCoordinates":"36.11761,-85.16898"}
[2026-01-27 20:30:06] [INFO] Number of extracted fields: 21
[2026-01-27 20:30:06] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS'
[2026-01-27 20:30:06] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS', Parsed IDs = ["PCFD","EMS"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-01-27 20:30:06] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS"]
[2026-01-27 20:30:06] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-01-27 20:30:06] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-01-27 20:30:06] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS"]
[2026-01-27 20:30:06] [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-01-27 20:30:06] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-01-27 20:30:06] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 20:30:06] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-01-27 20:30:06] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-01-27 20:30:07] [INFO] Found existing IncidentTypeMapping with ID: 6938bcc5e565c9852
[2026-01-27 20:30:17] [INFO] Created new Dispatches record with ID: 6979204f6d5502e4f
[2026-01-27 20:30:17] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 20:30:17] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 20:30:20] [INFO] Successfully uploaded file to V2 FTP server: /PCFD_20260009986_20260127_203006.XML
[2026-01-27 20:30:20] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009986_20260127_203006.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/PCFD_20260009986_20260127_203006.XML
[2026-01-27 20:30:20] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260009986_20260127_203006.XML
[2026-01-27 22:26:46] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260010039_20260127_222646.XML
[2026-01-27 22:26:46] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260010039_20260127_222646.XML for user: 68f1466aed072ad4a
[2026-01-27 22:26:46] [INFO] File size: 5570 bytes
[2026-01-27 22:26:46] [INFO] Created FTPFiles record with ID: 69793ba67abfba6c0
[2026-01-27 22:26:46] [INFO] About to extract fields from XML. File size: 5570 bytes
[2026-01-27 22:26:46] [INFO] Number of mappings: 28
[2026-01-27 22:26:46] [INFO] Starting XML parsing. Content length: 5570
[2026-01-27 22:26:46] [INFO] XML parsed successfully. Root element: CADExport
[2026-01-27 22:26:46] [INFO] Processing 28 field mappings
[2026-01-27 22:26:46] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-01-27 22:26:46] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-01-27 22:26:46] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-01-27 22:26:46] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-01-27 22:26:46] [INFO]   -> Found value: MFD
EMS
[2026-01-27 22:26:46] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD\nEMS"
[2026-01-27 22:26:46] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-01-27 22:26:46] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-01-27 22:26:46] [INFO]   -> Found value: 2026000037
[2026-01-27 22:26:46] [INFO]   -> Set field 'incidentInternalId' = "2026000037"
[2026-01-27 22:26:46] [INFO]   -> Set field 'dispatchRunNumber' = "2026000037"
[2026-01-27 22:26:46] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-01-27 22:26:46] [INFO]   -> Found value: MANPOWER - EMS ASSIST
[2026-01-27 22:26:46] [INFO]   -> Set field 'incidentTypeValue1' = "MANPOWER - EMS ASSIST"
[2026-01-27 22:26:46] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-01-27 22:26:46] [INFO]   -> Found value: 306
[2026-01-27 22:26:46] [INFO]   -> Set field 'incidentLocationStreetNumber' = 306
[2026-01-27 22:26:46] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-01-27 22:26:46] [INFO]   -> Found value: TN
[2026-01-27 22:26:46] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-01-27 22:26:46] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-01-27 22:26:46] [INFO]   -> Found value: 38574
[2026-01-27 22:26:46] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38574
[2026-01-27 22:26:46] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-01-27 22:26:46] [INFO]   -> Found value: BROKER DIANA
[2026-01-27 22:26:46] [INFO]   -> Set field 'businessName' = "BROKER DIANA"
[2026-01-27 22:26:46] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-01-27 22:26:46] [INFO]   -> Found value: B
[2026-01-27 22:26:46] [INFO]   -> Set field 'incidentLocationApt' = "B"
[2026-01-27 22:26:46] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-01-27 22:26:46] [INFO]   -> Found value: 36.14435
[2026-01-27 22:26:46] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.144350000000002864908310584723949432373046875
[2026-01-27 22:26:46] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-01-27 22:26:46] [INFO]   -> Found value: -85.26662
[2026-01-27 22:26:46] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2666200000000031877789297141134738922119140625
[2026-01-27 22:26:46] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-01-27 22:26:46] [INFO]   -> Found value: 2026-01-27 16:24:55
[2026-01-27 22:26:46] [INFO]   -> Set field 'alarm' = "2026-01-27 16:24:55"
[2026-01-27 22:26:46] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-01-27 22:26:46] [INFO]   -> Found value: 2026-01-27 16:26:36
[2026-01-27 22:26:46] [INFO]   -> Set field 'dispatched' = "2026-01-27 16:26:36"
[2026-01-27 22:26:46] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-01-27 22:26:46] [INFO]   -> Found value: 2026-01-27 16:26:36
[2026-01-27 22:26:46] [INFO]   -> Set field 'enroute' = "2026-01-27 16:26:36"
[2026-01-27 22:26:46] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-01-27 22:26:46] [INFO]   -> No value found (null or empty)
[2026-01-27 22:26:46] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-01-27 22:26:46] [INFO]   -> No value found (null or empty)
[2026-01-27 22:26:46] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-01-27 22:26:46] [INFO]   -> Found value: S ELM ST/WHITTAKER ST
[2026-01-27 22:26:46] [INFO]   -> Set field 'incidentLocationCross' = "S ELM ST\/WHITTAKER ST"
[2026-01-27 22:26:46] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-01-27 22:26:46] [INFO]   -> Found value: MF110
[2026-01-27 22:26:46] [INFO]   -> Set field 'cADVehicleID' = "MF110"
[2026-01-27 22:26:46] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-01-27 22:26:46] [INFO]   -> Found value: 2026-01-27 16:26:36
[2026-01-27 22:26:46] [INFO]   -> Set field 'timedispatch' = "2026-01-27 16:26:36"
[2026-01-27 22:26:46] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-01-27 22:26:46] [INFO]   -> Found value: 2026-01-27 16:26:36
[2026-01-27 22:26:46] [INFO]   -> Set field 'timeenroutetoscene' = "2026-01-27 16:26:36"
[2026-01-27 22:26:46] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-01-27 22:26:46] [INFO]   -> No value found (null or empty)
[2026-01-27 22:26:46] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-01-27 22:26:46] [INFO]   -> No value found (null or empty)
[2026-01-27 22:26:46] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-01-27 22:26:46] [INFO]   -> No value found (null or empty)
[2026-01-27 22:26:46] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-01-27 22:26:46] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-01-27 22:26:46] [INFO]   -> Found value: 20260010039
[2026-01-27 22:26:46] [INFO]   -> Set field 'policeReportNumber' = "20260010039"
[2026-01-27 22:26:46] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-01-27 22:26:46] [INFO]   -> Found value: [EMS] REQUESTING FIRE FOR ASSISTANCE DUE TO EMS DELAY  [01/27/26 16:25:21 KHILL] Event spawned from ...
[2026-01-27 22:26:46] [INFO]   -> Set field 'dispatchNotes' = "[EMS] REQUESTING FIRE FOR ASSISTANCE DUE TO EMS DELAY  [01\/27\/26 16:25:21 KHILL] Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 16:24:55 KHILL] BROKER DIANA  D.O.B: 03\/13\/1958  [01\/27\/26 16:13:53 DSTEPHENS] LIFT ASSIST FELL IN BATH TUB  [01\/27\/26 16:12:33 DSTEPHENS]"
[2026-01-27 22:26:46] [INFO]   -> Set field 'cADLog' = "[EMS] REQUESTING FIRE FOR ASSISTANCE DUE TO EMS DELAY  [01\/27\/26 16:25:21 KHILL] Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 16:24:55 KHILL] BROKER DIANA  D.O.B: 03\/13\/1958  [01\/27\/26 16:13:53 DSTEPHENS] LIFT ASSIST FELL IN BATH TUB  [01\/27\/26 16:12:33 DSTEPHENS]"
[2026-01-27 22:26:46] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-01-27 22:26:46] [INFO]   -> Found value: MONTEREY
[2026-01-27 22:26:46] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-01-27 22:26:46] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-01-27 22:26:46] [INFO]   -> Found value: RAILROAD
[2026-01-27 22:26:46] [INFO]   -> Set field 'streetName' = "RAILROAD"
[2026-01-27 22:26:46] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-01-27 22:26:46] [INFO]   -> Found value: AVE
[2026-01-27 22:26:46] [INFO]   -> Set field 'streetType' = "AVE"
[2026-01-27 22:26:46] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-01-27 22:26:46] [INFO]   -> Found value: 306-B E RAILROAD AVE
[2026-01-27 22:26:46] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "306-B E RAILROAD AVE"
[2026-01-27 22:26:46] [INFO] Finished extracting fields. Total fields extracted: 25
[2026-01-27 22:26:46] [INFO] Concatenating street name and type
[2026-01-27 22:26:46] [INFO]   -> Combined street name: RAILROAD AVE
[2026-01-27 22:26:46] [INFO] Built locationCoordinates from lat/lng: 36.14435,-85.26662
[2026-01-27 22:26:46] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"MFD\nEMS","incidentInternalId":"2026000037","dispatchRunNumber":"2026000037","incidentTypeValue1":"MANPOWER - EMS ASSIST","incidentLocationStreetNumber":306,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38574,"businessName":"BROKER DIANA","incidentLocationApt":"B","nERISIncidentLatitude":36.144350000000002864908310584723949432373046875,"nERISIncidentLongitude":-85.2666200000000031877789297141134738922119140625,"alarm":"2026-01-27 16:24:55","dispatched":"2026-01-27 16:26:36","enroute":"2026-01-27 16:26:36","incidentLocationCross":"S ELM ST\/WHITTAKER ST","cADVehicleID":"MF110","timedispatch":"2026-01-27 16:26:36","timeenroutetoscene":"2026-01-27 16:26:36","policeReportNumber":"20260010039","dispatchNotes":"[EMS] REQUESTING FIRE FOR ASSISTANCE DUE TO EMS DELAY  [01\/27\/26 16:25:21 KHILL] Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 16:24:55 KHILL] BROKER DIANA  D.O.B: 03\/13\/1958  [01\/27\/26 16:13:53 DSTEPHENS] LIFT ASSIST FELL IN BATH TUB  [01\/27\/26 16:12:33 DSTEPHENS]","cADLog":"[EMS] REQUESTING FIRE FOR ASSISTANCE DUE TO EMS DELAY  [01\/27\/26 16:25:21 KHILL] Event spawned from EMS NON-EMERGENCY.  [01\/27\/2026 16:24:55 KHILL] BROKER DIANA  D.O.B: 03\/13\/1958  [01\/27\/26 16:13:53 DSTEPHENS] LIFT ASSIST FELL IN BATH TUB  [01\/27\/26 16:12:33 DSTEPHENS]","incidentLocationCity":"MONTEREY","streetName":"RAILROAD AVE","incidentAddressTextVersionStreet":"306-B E RAILROAD AVE","locationCoordinates":"36.14435,-85.26662"}
[2026-01-27 22:26:46] [INFO] Number of extracted fields: 25
[2026-01-27 22:26:46] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD
EMS'
[2026-01-27 22:26:46] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD
EMS', Parsed IDs = ["MFD","EMS"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-01-27 22:26:46] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD","EMS"]
[2026-01-27 22:26:46] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-01-27 22:26:46] [INFO] SUCCESS: Routed to agency 'Monterey Fire Department' (ID: 68e67aaba2bb4565e) at INDEX 0 based on AgencyCode 'MFD'
[2026-01-27 22:26:46] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS"]
[2026-01-27 22:26:46] [INFO] Fetched 1 stations from Stations module for agency 'Monterey Fire Department': ["68ffe49c256b67300"]
[2026-01-27 22:26:46] [INFO] Final routing: saasclientId = 68e67aaba2bb4565e, dispatchStationsIds = ["68ffe49c256b67300"], matchedAgencyIndex = 0
[2026-01-27 22:26:46] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-01-27 22:26:46] [INFO] Filtered cADAgencyIdentifier to: MFD
[2026-01-27 22:26:46] [INFO] Updated FTPFiles record saasclientId to routed agency: 68e67aaba2bb4565e
[2026-01-27 22:26:47] [INFO] Found existing IncidentTypeMapping with ID: 6946a65ce82f04f50
[2026-01-27 22:26:49] [INFO] Created new Dispatches record with ID: 69793ba76da7a4d8b
[2026-01-27 22:26:49] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-01-27 22:26:49] [INFO] Using FTPS (SSL/TLS) connection
[2026-01-27 22:26:53] [INFO] Successfully uploaded file to V2 FTP server: /MFD_20260010039_20260127_222646.XML
[2026-01-27 22:26:53] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260010039_20260127_222646.XML -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/archive/2026-01-27/MFD_20260010039_20260127_222646.XML
[2026-01-27 22:26:53] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/MFD_20260010039_20260127_222646.XML
