[2026-02-09 01:30:33] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014551_20260209_013033.XML
[2026-02-09 01:30:33] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014551_20260209_013033.XML for user: 68f1466aed072ad4a
[2026-02-09 01:30:33] [INFO] File size: 5438 bytes
[2026-02-09 01:30:34] [INFO] Created FTPFiles record with ID: 698938ba2c9ed816b
[2026-02-09 01:30:34] [INFO] About to extract fields from XML. File size: 5438 bytes
[2026-02-09 01:30:34] [INFO] Number of mappings: 28
[2026-02-09 01:30:34] [INFO] Starting XML parsing. Content length: 5438
[2026-02-09 01:30:34] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 01:30:34] [INFO] Processing 28 field mappings
[2026-02-09 01:30:34] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 01:30:34] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 01:30:34] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 01:30:34] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-02-09 01:30:34] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-02-09 01:30:34] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-02-09 01:30:34] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 01:30:34] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-02-09 01:30:34] [INFO]   -> Found value: 2026000383
[2026-02-09 01:30:34] [INFO]   -> Set field 'incidentInternalId' = "2026000383"
[2026-02-09 01:30:34] [INFO]   -> Set field 'dispatchRunNumber' = "2026000383"
[2026-02-09 01:30:34] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 01:30:34] [INFO]   -> Found value: CHEST PAIN
[2026-02-09 01:30:34] [INFO]   -> Set field 'incidentTypeValue1' = "CHEST PAIN"
[2026-02-09 01:30:34] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 01:30:34] [INFO]   -> Found value: 9885
[2026-02-09 01:30:34] [INFO]   -> Set field 'incidentLocationStreetNumber' = 9885
[2026-02-09 01:30:34] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 01:30:34] [INFO]   -> Found value: TN
[2026-02-09 01:30:34] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 01:30:34] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 01:30:34] [INFO]   -> Found value: 38544
[2026-02-09 01:30:34] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38544
[2026-02-09 01:30:34] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 01:30:34] [INFO]   -> Found value: 36.05002
[2026-02-09 01:30:34] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.0500200000000035061020753346383571624755859375
[2026-02-09 01:30:34] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 01:30:34] [INFO]   -> Found value: -85.65438
[2026-02-09 01:30:34] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.65438000000000329237082041800022125244140625
[2026-02-09 01:30:34] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 01:30:34] [INFO]   -> Found value: 2026-02-08 19:29:52
[2026-02-09 01:30:34] [INFO]   -> Set field 'alarm' = "2026-02-08 19:29:52"
[2026-02-09 01:30:34] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 01:30:34] [INFO]   -> Found value: 2026-02-08 19:30:24
[2026-02-09 01:30:34] [INFO]   -> Set field 'dispatched' = "2026-02-08 19:30:24"
[2026-02-09 01:30:34] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 01:30:34] [INFO]   -> Found value: AUSTIN BOTTOM RD/HENRY GAMBRELL RD
[2026-02-09 01:30:34] [INFO]   -> Set field 'incidentLocationCross' = "AUSTIN BOTTOM RD\/HENRY GAMBRELL RD"
[2026-02-09 01:30:34] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 01:30:34] [INFO]   -> Found value: PCFR
[2026-02-09 01:30:34] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 01:30:34] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 01:30:34] [INFO]   -> Found value: 2026-02-08 19:30:24
[2026-02-09 01:30:34] [INFO]   -> Set field 'timedispatch' = "2026-02-08 19:30:24"
[2026-02-09 01:30:34] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 01:30:34] [INFO]   -> No value found (null or empty)
[2026-02-09 01:30:34] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 01:30:34] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 01:30:34] [INFO]   -> Found value: 20260014551
[2026-02-09 01:30:34] [INFO]   -> Set field 'policeReportNumber' = "20260014551"
[2026-02-09 01:30:34] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 01:30:34] [INFO]   -> Found value: [EMS] JAMES HARVEY 62YOM HEART RACING FEELS LIKE HE IS GOING TO PASS OUT  [02/08/26 19:30:20 SVOKOUN...
[2026-02-09 01:30:34] [INFO]   -> Set field 'dispatchNotes' = "[EMS] JAMES HARVEY 62YOM HEART RACING FEELS LIKE HE IS GOING TO PASS OUT  [02\/08\/26 19:30:20 SVOKOUN2] Event spawned from CHEST PAIN.  [02\/08\/2026 19:29:52 SVOKOUN2]"
[2026-02-09 01:30:34] [INFO]   -> Set field 'cADLog' = "[EMS] JAMES HARVEY 62YOM HEART RACING FEELS LIKE HE IS GOING TO PASS OUT  [02\/08\/26 19:30:20 SVOKOUN2] Event spawned from CHEST PAIN.  [02\/08\/2026 19:29:52 SVOKOUN2]"
[2026-02-09 01:30:34] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 01:30:34] [INFO]   -> Found value: BAXTER
[2026-02-09 01:30:34] [INFO]   -> Set field 'incidentLocationCity' = "BAXTER"
[2026-02-09 01:30:34] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 01:30:34] [INFO]   -> Found value: COOKEVILLE BOAT DOCK
[2026-02-09 01:30:34] [INFO]   -> Set field 'streetName' = "COOKEVILLE BOAT DOCK"
[2026-02-09 01:30:34] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 01:30:34] [INFO]   -> Found value: RD
[2026-02-09 01:30:34] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 01:30:34] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 01:30:34] [INFO]   -> Found value: 9885 COOKEVILLE BOAT DOCK RD
[2026-02-09 01:30:34] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "9885 COOKEVILLE BOAT DOCK RD"
[2026-02-09 01:30:34] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 01:30:34] [INFO] Concatenating street name and type
[2026-02-09 01:30:34] [INFO]   -> Combined street name: COOKEVILLE BOAT DOCK RD
[2026-02-09 01:30:34] [INFO] Built locationCoordinates from lat/lng: 36.05002,-85.65438
[2026-02-09 01:30:34] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000383","dispatchRunNumber":"2026000383","incidentTypeValue1":"CHEST PAIN","incidentLocationStreetNumber":9885,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38544,"nERISIncidentLatitude":36.0500200000000035061020753346383571624755859375,"nERISIncidentLongitude":-85.65438000000000329237082041800022125244140625,"alarm":"2026-02-08 19:29:52","dispatched":"2026-02-08 19:30:24","incidentLocationCross":"AUSTIN BOTTOM RD\/HENRY GAMBRELL RD","cADVehicleID":"PCFR","timedispatch":"2026-02-08 19:30:24","policeReportNumber":"20260014551","dispatchNotes":"[EMS] JAMES HARVEY 62YOM HEART RACING FEELS LIKE HE IS GOING TO PASS OUT  [02\/08\/26 19:30:20 SVOKOUN2] Event spawned from CHEST PAIN.  [02\/08\/2026 19:29:52 SVOKOUN2]","cADLog":"[EMS] JAMES HARVEY 62YOM HEART RACING FEELS LIKE HE IS GOING TO PASS OUT  [02\/08\/26 19:30:20 SVOKOUN2] Event spawned from CHEST PAIN.  [02\/08\/2026 19:29:52 SVOKOUN2]","incidentLocationCity":"BAXTER","streetName":"COOKEVILLE BOAT DOCK RD","incidentAddressTextVersionStreet":"9885 COOKEVILLE BOAT DOCK RD","locationCoordinates":"36.05002,-85.65438"}
[2026-02-09 01:30:34] [INFO] Number of extracted fields: 21
[2026-02-09 01:30:34] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-02-09 01:30:34] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
PCSO
RESC', Parsed IDs = ["PCFD","EMS","PCSO","RESC"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 4
[2026-02-09 01:30:34] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-02-09 01:30:34] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 01:30:34] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 01:30:34] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-02-09 01:30:34] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-09 01:30:34] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 01:30:34] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-09 01:30:34] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 01:30:34] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 01:30:34] [INFO] Found existing IncidentTypeMapping with ID: 6939c33d3eae65119
[2026-02-09 01:30:44] [INFO] Created new Dispatches record with ID: 698938bb2d3156aaf
[2026-02-09 01:30:44] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 01:30:45] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 01:30:48] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 01:30:48] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014551_20260209_013033.XML: Failed to upload file to V2 FTP server: /PCFD_20260014551_20260209_013033.XML
[2026-02-09 01:30:48] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 01:32:13] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260014554_20260209_013213.XML
[2026-02-09 01:32:13] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260014554_20260209_013213.XML for user: 68f1466aed072ad4a
[2026-02-09 01:32:13] [INFO] File size: 5001 bytes
[2026-02-09 01:32:14] [INFO] Created FTPFiles record with ID: 6989391e08c26b7ec
[2026-02-09 01:32:14] [INFO] About to extract fields from XML. File size: 5001 bytes
[2026-02-09 01:32:14] [INFO] Number of mappings: 28
[2026-02-09 01:32:14] [INFO] Starting XML parsing. Content length: 5001
[2026-02-09 01:32:14] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 01:32:14] [INFO] Processing 28 field mappings
[2026-02-09 01:32:14] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 01:32:14] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 01:32:14] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 01:32:14] [INFO] Found 2 elements for 'AgencyCode', concatenating 2 non-empty values
[2026-02-09 01:32:14] [INFO]   -> Found value: AFD
EMS
[2026-02-09 01:32:14] [INFO]   -> Set field 'cADAgencyIdentifier' = "AFD\nEMS"
[2026-02-09 01:32:14] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 01:32:14] [INFO] Found 2 elements for 'ReportNumber', using FIRST value only
[2026-02-09 01:32:14] [INFO]   -> Found value: 2026000053
[2026-02-09 01:32:14] [INFO]   -> Set field 'incidentInternalId' = "2026000053"
[2026-02-09 01:32:14] [INFO]   -> Set field 'dispatchRunNumber' = "2026000053"
[2026-02-09 01:32:14] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 01:32:14] [INFO]   -> Found value: FALL VICTIM
[2026-02-09 01:32:14] [INFO]   -> Set field 'incidentTypeValue1' = "FALL VICTIM"
[2026-02-09 01:32:14] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 01:32:14] [INFO]   -> Found value: 589
[2026-02-09 01:32:14] [INFO]   -> Set field 'incidentLocationStreetNumber' = 589
[2026-02-09 01:32:14] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 01:32:14] [INFO]   -> Found value: TN
[2026-02-09 01:32:14] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 01:32:14] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 01:32:14] [INFO]   -> Found value: 38506
[2026-02-09 01:32:14] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-09 01:32:14] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 01:32:14] [INFO]   -> Found value: WALMART
[2026-02-09 01:32:14] [INFO]   -> Set field 'businessName' = "WALMART"
[2026-02-09 01:32:14] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 01:32:14] [INFO]   -> No value found (null or empty)
[2026-02-09 01:32:14] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 01:32:14] [INFO]   -> Found value: 36.18563
[2026-02-09 01:32:14] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.18563000000000329237082041800022125244140625
[2026-02-09 01:32:14] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 01:32:14] [INFO]   -> Found value: -85.45925
[2026-02-09 01:32:14] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.4592499999999972715158946812152862548828125
[2026-02-09 01:32:14] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 01:32:14] [INFO]   -> Found value: 2026-02-08 19:31:51
[2026-02-09 01:32:14] [INFO]   -> Set field 'alarm' = "2026-02-08 19:31:51"
[2026-02-09 01:32:14] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 01:32:14] [INFO]   -> Found value: 2026-02-08 19:31:59
[2026-02-09 01:32:14] [INFO]   -> Set field 'dispatched' = "2026-02-08 19:31:59"
[2026-02-09 01:32:14] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 01:32:14] [INFO]   -> No value found (null or empty)
[2026-02-09 01:32:14] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 01:32:14] [INFO]   -> No value found (null or empty)
[2026-02-09 01:32:14] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 01:32:14] [INFO]   -> No value found (null or empty)
[2026-02-09 01:32:14] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 01:32:14] [INFO]   -> Found value: COOPER RD/BIG MAC DR
[2026-02-09 01:32:14] [INFO]   -> Set field 'incidentLocationCross' = "COOPER RD\/BIG MAC DR"
[2026-02-09 01:32:14] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 01:32:14] [INFO]   -> Found value: AFR
[2026-02-09 01:32:14] [INFO]   -> Set field 'cADVehicleID' = "AFR"
[2026-02-09 01:32:14] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 01:32:14] [INFO]   -> Found value: 2026-02-08 19:31:59
[2026-02-09 01:32:14] [INFO]   -> Set field 'timedispatch' = "2026-02-08 19:31:59"
[2026-02-09 01:32:14] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 01:32:14] [INFO]   -> No value found (null or empty)
[2026-02-09 01:32:14] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 01:32:14] [INFO]   -> No value found (null or empty)
[2026-02-09 01:32:14] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 01:32:14] [INFO]   -> No value found (null or empty)
[2026-02-09 01:32:14] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 01:32:14] [INFO]   -> No value found (null or empty)
[2026-02-09 01:32:14] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 01:32:14] [INFO] Found 2 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 01:32:14] [INFO]   -> Found value: 20260014554
[2026-02-09 01:32:14] [INFO]   -> Set field 'policeReportNumber' = "20260014554"
[2026-02-09 01:32:14] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 01:32:14] [INFO]   -> Found value: Event spawned from FALL VICTIM.  [02/08/2026 19:31:51 SVOKOUN2]
[2026-02-09 01:32:14] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from FALL VICTIM.  [02\/08\/2026 19:31:51 SVOKOUN2]"
[2026-02-09 01:32:14] [INFO]   -> Set field 'cADLog' = "Event spawned from FALL VICTIM.  [02\/08\/2026 19:31:51 SVOKOUN2]"
[2026-02-09 01:32:14] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 01:32:14] [INFO]   -> Found value: ALGOOD
[2026-02-09 01:32:14] [INFO]   -> Set field 'incidentLocationCity' = "ALGOOD"
[2026-02-09 01:32:14] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 01:32:14] [INFO]   -> Found value: MAIN
[2026-02-09 01:32:14] [INFO]   -> Set field 'streetName' = "MAIN"
[2026-02-09 01:32:14] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 01:32:14] [INFO]   -> Found value: ST
[2026-02-09 01:32:14] [INFO]   -> Set field 'streetType' = "ST"
[2026-02-09 01:32:14] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 01:32:14] [INFO]   -> Found value: 589 W MAIN ST
[2026-02-09 01:32:14] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "589 W MAIN ST"
[2026-02-09 01:32:14] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-09 01:32:14] [INFO] Concatenating street name and type
[2026-02-09 01:32:14] [INFO]   -> Combined street name: MAIN ST
[2026-02-09 01:32:14] [INFO] Built locationCoordinates from lat/lng: 36.18563,-85.45925
[2026-02-09 01:32:14] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"AFD\nEMS","incidentInternalId":"2026000053","dispatchRunNumber":"2026000053","incidentTypeValue1":"FALL VICTIM","incidentLocationStreetNumber":589,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"businessName":"WALMART","nERISIncidentLatitude":36.18563000000000329237082041800022125244140625,"nERISIncidentLongitude":-85.4592499999999972715158946812152862548828125,"alarm":"2026-02-08 19:31:51","dispatched":"2026-02-08 19:31:59","incidentLocationCross":"COOPER RD\/BIG MAC DR","cADVehicleID":"AFR","timedispatch":"2026-02-08 19:31:59","policeReportNumber":"20260014554","dispatchNotes":"Event spawned from FALL VICTIM.  [02\/08\/2026 19:31:51 SVOKOUN2]","cADLog":"Event spawned from FALL VICTIM.  [02\/08\/2026 19:31:51 SVOKOUN2]","incidentLocationCity":"ALGOOD","streetName":"MAIN ST","incidentAddressTextVersionStreet":"589 W MAIN ST","locationCoordinates":"36.18563,-85.45925"}
[2026-02-09 01:32:14] [INFO] Number of extracted fields: 22
[2026-02-09 01:32:14] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'AFD
EMS'
[2026-02-09 01:32:14] [INFO] Multi-agency routing check: CAD Agency ID raw = 'AFD
EMS', Parsed IDs = ["AFD","EMS"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 4
[2026-02-09 01:32:14] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["AFD","EMS"]
[2026-02-09 01:32:14] [INFO] Attempting SAASClient lookup for AgencyCode 'AFD' (index 0) within mailbox's assigned agencies
[2026-02-09 01:32:14] [INFO] SUCCESS: Routed to agency 'Algood Fire Department' (ID: 68910627445d6e167) at INDEX 0 based on AgencyCode 'AFD'
[2026-02-09 01:32:14] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS"]
[2026-02-09 01:32:14] [INFO] Fetched 1 stations from Stations module for agency 'Algood Fire Department': ["68922bda7fe89f7ff"]
[2026-02-09 01:32:14] [INFO] Final routing: saasclientId = 68910627445d6e167, dispatchStationsIds = ["68922bda7fe89f7ff"], matchedAgencyIndex = 0
[2026-02-09 01:32:14] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-09 01:32:14] [INFO] Filtered cADAgencyIdentifier to: AFD
[2026-02-09 01:32:14] [INFO] Updated FTPFiles record saasclientId to routed agency: 68910627445d6e167
[2026-02-09 01:32:14] [INFO] Found existing IncidentTypeMapping with ID: 6952a99bba1f92574
[2026-02-09 01:32:19] [INFO] Created new Dispatches record with ID: 6989391f36174494d
[2026-02-09 01:32:19] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 01:32:19] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 01:32:22] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 01:32:22] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/AFD_20260014554_20260209_013213.XML: Failed to upload file to V2 FTP server: /AFD_20260014554_20260209_013213.XML
[2026-02-09 01:32:22] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 02:47:53] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014566_20260209_024753.XML
[2026-02-09 02:47:53] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014566_20260209_024753.XML for user: 68f1466aed072ad4a
[2026-02-09 02:47:53] [INFO] File size: 5356 bytes
[2026-02-09 02:47:54] [INFO] Created FTPFiles record with ID: 69894ada5963dedb8
[2026-02-09 02:47:54] [INFO] About to extract fields from XML. File size: 5356 bytes
[2026-02-09 02:47:54] [INFO] Number of mappings: 28
[2026-02-09 02:47:54] [INFO] Starting XML parsing. Content length: 5356
[2026-02-09 02:47:54] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 02:47:54] [INFO] Processing 28 field mappings
[2026-02-09 02:47:54] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 02:47:54] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 02:47:54] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 02:47:54] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-02-09 02:47:54] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-02-09 02:47:54] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-02-09 02:47:54] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 02:47:54] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-02-09 02:47:54] [INFO]   -> Found value: 2026000384
[2026-02-09 02:47:54] [INFO]   -> Set field 'incidentInternalId' = "2026000384"
[2026-02-09 02:47:54] [INFO]   -> Set field 'dispatchRunNumber' = "2026000384"
[2026-02-09 02:47:54] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 02:47:54] [INFO]   -> Found value: UNCONSCIOUS
[2026-02-09 02:47:54] [INFO]   -> Set field 'incidentTypeValue1' = "UNCONSCIOUS"
[2026-02-09 02:47:54] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 02:47:54] [INFO]   -> Found value: 2621
[2026-02-09 02:47:54] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2621
[2026-02-09 02:47:54] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 02:47:54] [INFO]   -> Found value: TN
[2026-02-09 02:47:54] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 02:47:54] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 02:47:54] [INFO]   -> Found value: 38506
[2026-02-09 02:47:54] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-09 02:47:54] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 02:47:54] [INFO]   -> Found value: 36.19864
[2026-02-09 02:47:54] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1986399999999974852471495978534221649169921875
[2026-02-09 02:47:54] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 02:47:54] [INFO]   -> Found value: -85.46183
[2026-02-09 02:47:54] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.4618300000000061800164985470473766326904296875
[2026-02-09 02:47:54] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 02:47:54] [INFO]   -> Found value: 2026-02-08 20:47:22
[2026-02-09 02:47:54] [INFO]   -> Set field 'alarm' = "2026-02-08 20:47:22"
[2026-02-09 02:47:54] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 02:47:54] [INFO]   -> Found value: 2026-02-08 20:47:42
[2026-02-09 02:47:54] [INFO]   -> Set field 'dispatched' = "2026-02-08 20:47:42"
[2026-02-09 02:47:54] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 02:47:54] [INFO]   -> Found value: DONNA PL/TIFFANY PL
[2026-02-09 02:47:54] [INFO]   -> Set field 'incidentLocationCross' = "DONNA PL\/TIFFANY PL"
[2026-02-09 02:47:54] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 02:47:54] [INFO]   -> Found value: PCFR
[2026-02-09 02:47:54] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 02:47:54] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 02:47:54] [INFO]   -> Found value: 2026-02-08 20:47:42
[2026-02-09 02:47:54] [INFO]   -> Set field 'timedispatch' = "2026-02-08 20:47:42"
[2026-02-09 02:47:54] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 02:47:54] [INFO]   -> No value found (null or empty)
[2026-02-09 02:47:54] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 02:47:54] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 02:47:54] [INFO]   -> Found value: 20260014566
[2026-02-09 02:47:54] [INFO]   -> Set field 'policeReportNumber' = "20260014566"
[2026-02-09 02:47:54] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 02:47:54] [INFO]   -> Found value: [LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02/08/26 20:47:35 BAHARRIS] Event spawned from UNCONSCIOUS. ...
[2026-02-09 02:47:54] [INFO]   -> Set field 'dispatchNotes' = "[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02\/08\/26 20:47:35 BAHARRIS] Event spawned from UNCONSCIOUS.  [02\/08\/2026 20:47:22 SVOKOUN2]"
[2026-02-09 02:47:54] [INFO]   -> Set field 'cADLog' = "[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02\/08\/26 20:47:35 BAHARRIS] Event spawned from UNCONSCIOUS.  [02\/08\/2026 20:47:22 SVOKOUN2]"
[2026-02-09 02:47:54] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 02:47:54] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 02:47:54] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 02:47:54] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 02:47:54] [INFO]   -> Found value: SUFFOLK
[2026-02-09 02:47:54] [INFO]   -> Set field 'streetName' = "SUFFOLK"
[2026-02-09 02:47:54] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 02:47:54] [INFO]   -> Found value: DR
[2026-02-09 02:47:54] [INFO]   -> Set field 'streetType' = "DR"
[2026-02-09 02:47:54] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 02:47:54] [INFO]   -> Found value: 2621 SUFFOLK DR
[2026-02-09 02:47:54] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "2621 SUFFOLK DR"
[2026-02-09 02:47:54] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 02:47:54] [INFO] Concatenating street name and type
[2026-02-09 02:47:54] [INFO]   -> Combined street name: SUFFOLK DR
[2026-02-09 02:47:54] [INFO] Built locationCoordinates from lat/lng: 36.19864,-85.46183
[2026-02-09 02:47:54] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000384","dispatchRunNumber":"2026000384","incidentTypeValue1":"UNCONSCIOUS","incidentLocationStreetNumber":2621,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.1986399999999974852471495978534221649169921875,"nERISIncidentLongitude":-85.4618300000000061800164985470473766326904296875,"alarm":"2026-02-08 20:47:22","dispatched":"2026-02-08 20:47:42","incidentLocationCross":"DONNA PL\/TIFFANY PL","cADVehicleID":"PCFR","timedispatch":"2026-02-08 20:47:42","policeReportNumber":"20260014566","dispatchNotes":"[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02\/08\/26 20:47:35 BAHARRIS] Event spawned from UNCONSCIOUS.  [02\/08\/2026 20:47:22 SVOKOUN2]","cADLog":"[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02\/08\/26 20:47:35 BAHARRIS] Event spawned from UNCONSCIOUS.  [02\/08\/2026 20:47:22 SVOKOUN2]","incidentLocationCity":"COOKEVILLE","streetName":"SUFFOLK DR","incidentAddressTextVersionStreet":"2621 SUFFOLK DR","locationCoordinates":"36.19864,-85.46183"}
[2026-02-09 02:47:54] [INFO] Number of extracted fields: 21
[2026-02-09 02:47:54] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-02-09 02:47:54] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
PCSO
RESC', Parsed IDs = ["PCFD","EMS","PCSO","RESC"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 4
[2026-02-09 02:47:54] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-02-09 02:47:54] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 02:47:54] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 02:47:54] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-02-09 02:47:54] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-09 02:47:54] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 02:47:54] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-09 02:47:54] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 02:47:54] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 02:47:54] [INFO] Found existing IncidentTypeMapping with ID: 693976706d4f7fb2e
[2026-02-09 02:48:05] [INFO] Created new Dispatches record with ID: 69894adb5344ad49c
[2026-02-09 02:48:05] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 02:48:06] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 02:48:09] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 02:48:09] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014566_20260209_024753.XML: Failed to upload file to V2 FTP server: /PCFD_20260014566_20260209_024753.XML
[2026-02-09 02:48:09] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 03:18:19] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:16Z.xml
[2026-02-09 03:18:19] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:16Z.xml
[2026-02-09 03:18:20] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:19Z.xml
[2026-02-09 03:18:20] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:19Z.xml
[2026-02-09 03:18:21] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:19Z.xml
[2026-02-09 03:18:21] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:19Z.xml
[2026-02-09 03:18:21] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:20Z.xml
[2026-02-09 03:18:21] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:20Z.xml
[2026-02-09 03:18:23] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:22Z.xml
[2026-02-09 03:18:23] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:22Z.xml
[2026-02-09 03:18:26] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:25Z.xml
[2026-02-09 03:18:26] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:18:25Z.xml
[2026-02-09 03:20:01] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:00Z.xml
[2026-02-09 03:20:01] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:00Z.xml
[2026-02-09 03:20:02] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:01Z.xml
[2026-02-09 03:20:02] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:01Z.xml
[2026-02-09 03:20:03] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:02Z.xml
[2026-02-09 03:20:03] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:02Z.xml
[2026-02-09 03:20:04] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:03Z.xml
[2026-02-09 03:20:04] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:03Z.xml
[2026-02-09 03:20:04] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:03Z.xml
[2026-02-09 03:20:04] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:03Z.xml
[2026-02-09 03:20:05] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:04Z.xml
[2026-02-09 03:20:05] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:04Z.xml
[2026-02-09 03:20:05] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:04Z.xml
[2026-02-09 03:20:05] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:04Z.xml
[2026-02-09 03:20:06] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:05Z.xml
[2026-02-09 03:20:06] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:05Z.xml
[2026-02-09 03:20:17] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:16Z.xml
[2026-02-09 03:20:17] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:16Z.xml
[2026-02-09 03:20:18] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:17Z.xml
[2026-02-09 03:20:18] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:17Z.xml
[2026-02-09 03:20:49] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:48Z.xml
[2026-02-09 03:20:49] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:48Z.xml
[2026-02-09 03:20:49] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:48Z.xml
[2026-02-09 03:20:49] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:48Z.xml
[2026-02-09 03:20:50] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:49Z.xml
[2026-02-09 03:20:50] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:49Z.xml
[2026-02-09 03:20:50] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:49Z.xml
[2026-02-09 03:20:50] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:49Z.xml
[2026-02-09 03:20:51] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:50Z.xml
[2026-02-09 03:20:51] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:20:50Z.xml
[2026-02-09 03:21:49] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:21:48Z.xml
[2026-02-09 03:21:49] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:21:48Z.xml
[2026-02-09 03:22:24] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:22:23Z.xml
[2026-02-09 03:22:24] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:22:23Z.xml
[2026-02-09 03:22:25] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:22:24Z.xml
[2026-02-09 03:22:25] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:22:24Z.xml
[2026-02-09 03:22:26] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:22:25Z.xml
[2026-02-09 03:22:26] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:22:25Z.xml
[2026-02-09 03:24:47] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:45Z.xml
[2026-02-09 03:24:47] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:45Z.xml
[2026-02-09 03:24:47] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:46Z.xml
[2026-02-09 03:24:47] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:46Z.xml
[2026-02-09 03:24:48] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:47Z.xml
[2026-02-09 03:24:48] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:47Z.xml
[2026-02-09 03:24:48] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:47Z.xml
[2026-02-09 03:24:48] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:47Z.xml
[2026-02-09 03:24:49] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:48Z.xml
[2026-02-09 03:24:49] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:48Z.xml
[2026-02-09 03:24:55] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:54Z.xml
[2026-02-09 03:24:55] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:24:54Z.xml
[2026-02-09 03:27:25] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:27:24Z.xml
[2026-02-09 03:27:25] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:27:24Z.xml
[2026-02-09 03:49:42] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:39Z.xml
[2026-02-09 03:49:42] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:39Z.xml
[2026-02-09 03:49:43] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:42Z.xml
[2026-02-09 03:49:43] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:42Z.xml
[2026-02-09 03:49:43] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:42Z.xml
[2026-02-09 03:49:43] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:42Z.xml
[2026-02-09 03:49:44] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:43Z.xml
[2026-02-09 03:49:44] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:43Z.xml
[2026-02-09 03:49:45] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:44Z.xml
[2026-02-09 03:49:45] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:49:44Z.xml
[2026-02-09 03:51:06] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:04Z.xml
[2026-02-09 03:51:06] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:04Z.xml
[2026-02-09 03:51:09] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:08Z.xml
[2026-02-09 03:51:09] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:08Z.xml
[2026-02-09 03:51:09] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:08Z.xml
[2026-02-09 03:51:09] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:08Z.xml
[2026-02-09 03:51:10] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:09Z.xml
[2026-02-09 03:51:10] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:09Z.xml
[2026-02-09 03:51:10] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:09Z.xml
[2026-02-09 03:51:10] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:09Z.xml
[2026-02-09 03:51:11] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:10Z.xml
[2026-02-09 03:51:11] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:10Z.xml
[2026-02-09 03:51:11] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:10Z.xml
[2026-02-09 03:51:11] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:10Z.xml
[2026-02-09 03:51:22] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:20Z.xml
[2026-02-09 03:51:22] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:20Z.xml
[2026-02-09 03:51:22] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:21Z.xml
[2026-02-09 03:51:22] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:21Z.xml
[2026-02-09 03:51:43] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:41Z.xml
[2026-02-09 03:51:43] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006028_2026-02-08 21:51:41Z.xml
[2026-02-09 06:23:04] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014609_20260209_062304.XML
[2026-02-09 06:23:04] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014609_20260209_062304.XML for user: 68f1466aed072ad4a
[2026-02-09 06:23:04] [INFO] File size: 4857 bytes
[2026-02-09 06:23:05] [INFO] Created FTPFiles record with ID: 69897d492cabdc9ab
[2026-02-09 06:23:05] [INFO] About to extract fields from XML. File size: 4857 bytes
[2026-02-09 06:23:05] [INFO] Number of mappings: 28
[2026-02-09 06:23:05] [INFO] Starting XML parsing. Content length: 4857
[2026-02-09 06:23:05] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 06:23:05] [INFO] Processing 28 field mappings
[2026-02-09 06:23:05] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 06:23:05] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 06:23:05] [INFO]   -> Found value: PCFD
[2026-02-09 06:23:05] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD"
[2026-02-09 06:23:05] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 06:23:05] [INFO]   -> Found value: 2026000385
[2026-02-09 06:23:05] [INFO]   -> Set field 'incidentInternalId' = "2026000385"
[2026-02-09 06:23:05] [INFO]   -> Set field 'dispatchRunNumber' = "2026000385"
[2026-02-09 06:23:05] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 06:23:05] [INFO]   -> Found value: FIRE INVESTIGATION
[2026-02-09 06:23:05] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE INVESTIGATION"
[2026-02-09 06:23:05] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 06:23:05] [INFO]   -> Found value: 2403
[2026-02-09 06:23:05] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2403
[2026-02-09 06:23:05] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 06:23:05] [INFO]   -> Found value: TN
[2026-02-09 06:23:05] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 06:23:05] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 06:23:05] [INFO]   -> Found value: 38506
[2026-02-09 06:23:05] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-09 06:23:05] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 06:23:05] [INFO]   -> Found value: 36.13461
[2026-02-09 06:23:05] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.13461000000000211684891837649047374725341796875
[2026-02-09 06:23:05] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 06:23:05] [INFO]   -> Found value: -85.43642
[2026-02-09 06:23:05] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.436419999999998253770172595977783203125
[2026-02-09 06:23:05] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 06:23:05] [INFO]   -> Found value: 2026-02-09 00:20:27
[2026-02-09 06:23:05] [INFO]   -> Set field 'alarm' = "2026-02-09 00:20:27"
[2026-02-09 06:23:05] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 06:23:05] [INFO]   -> Found value: 2026-02-09 00:23:02
[2026-02-09 06:23:05] [INFO]   -> Set field 'dispatched' = "2026-02-09 00:23:02"
[2026-02-09 06:23:05] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 06:23:05] [INFO]   -> Found value: POPLAR GROVE RD
[2026-02-09 06:23:05] [INFO]   -> Set field 'incidentLocationCross' = "POPLAR GROVE RD"
[2026-02-09 06:23:05] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 06:23:05] [INFO]   -> Found value: TK15
[2026-02-09 06:23:05] [INFO]   -> Set field 'cADVehicleID' = "TK15"
[2026-02-09 06:23:05] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 06:23:05] [INFO]   -> Found value: 2026-02-09 00:23:02
[2026-02-09 06:23:05] [INFO]   -> Set field 'timedispatch' = "2026-02-09 00:23:02"
[2026-02-09 06:23:05] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 06:23:05] [INFO]   -> No value found (null or empty)
[2026-02-09 06:23:05] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 06:23:05] [INFO]   -> Found value: 20260014609
[2026-02-09 06:23:05] [INFO]   -> Set field 'policeReportNumber' = "20260014609"
[2026-02-09 06:23:05] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 06:23:05] [INFO]   -> Found value: WORKING TO GET EVERYONE OUT OF THE HOME  [02/09/26 00:22:45 BPICHE] POSSIBLE GAS LEAK  PROPANE APPLI...
[2026-02-09 06:23:05] [INFO]   -> Set field 'dispatchNotes' = "WORKING TO GET EVERYONE OUT OF THE HOME  [02\/09\/26 00:22:45 BPICHE] POSSIBLE GAS LEAK  PROPANE APPLIANCES IN THE HOME  [02\/09\/26 00:21:43 BPICHE]]"
[2026-02-09 06:23:05] [INFO]   -> Set field 'cADLog' = "WORKING TO GET EVERYONE OUT OF THE HOME  [02\/09\/26 00:22:45 BPICHE] POSSIBLE GAS LEAK  PROPANE APPLIANCES IN THE HOME  [02\/09\/26 00:21:43 BPICHE]]"
[2026-02-09 06:23:05] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 06:23:05] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 06:23:05] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 06:23:05] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 06:23:05] [INFO]   -> Found value: POINTE COVE
[2026-02-09 06:23:05] [INFO]   -> Set field 'streetName' = "POINTE COVE"
[2026-02-09 06:23:05] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 06:23:05] [INFO]   -> Found value: CIR
[2026-02-09 06:23:05] [INFO]   -> Set field 'streetType' = "CIR"
[2026-02-09 06:23:05] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 06:23:05] [INFO]   -> Found value: 2403 N POINTE COVE CIR
[2026-02-09 06:23:05] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "2403 N POINTE COVE CIR"
[2026-02-09 06:23:05] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 06:23:05] [INFO] Concatenating street name and type
[2026-02-09 06:23:05] [INFO]   -> Combined street name: POINTE COVE CIR
[2026-02-09 06:23:05] [INFO] Built locationCoordinates from lat/lng: 36.13461,-85.43642
[2026-02-09 06:23:05] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD","incidentInternalId":"2026000385","dispatchRunNumber":"2026000385","incidentTypeValue1":"FIRE INVESTIGATION","incidentLocationStreetNumber":2403,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.13461000000000211684891837649047374725341796875,"nERISIncidentLongitude":-85.436419999999998253770172595977783203125,"alarm":"2026-02-09 00:20:27","dispatched":"2026-02-09 00:23:02","incidentLocationCross":"POPLAR GROVE RD","cADVehicleID":"TK15","timedispatch":"2026-02-09 00:23:02","policeReportNumber":"20260014609","dispatchNotes":"WORKING TO GET EVERYONE OUT OF THE HOME  [02\/09\/26 00:22:45 BPICHE] POSSIBLE GAS LEAK  PROPANE APPLIANCES IN THE HOME  [02\/09\/26 00:21:43 BPICHE]]","cADLog":"WORKING TO GET EVERYONE OUT OF THE HOME  [02\/09\/26 00:22:45 BPICHE] POSSIBLE GAS LEAK  PROPANE APPLIANCES IN THE HOME  [02\/09\/26 00:21:43 BPICHE]]","incidentLocationCity":"COOKEVILLE","streetName":"POINTE COVE CIR","incidentAddressTextVersionStreet":"2403 N POINTE COVE CIR","locationCoordinates":"36.13461,-85.43642"}
[2026-02-09 06:23:05] [INFO] Number of extracted fields: 21
[2026-02-09 06:23:05] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD'
[2026-02-09 06:23: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-02-09 06:23:05] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD"]
[2026-02-09 06:23:05] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 06:23:05] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 06:23: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-02-09 06:23:05] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 06:23:05] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 06:23:05] [INFO] Found existing IncidentTypeMapping with ID: 693fd3603dbcab356
[2026-02-09 06:23:14] [INFO] Created new Dispatches record with ID: 69897d4a1ae85c742
[2026-02-09 06:23:14] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 06:23:14] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 06:23:17] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 06:23:17] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014609_20260209_062304.XML: Failed to upload file to V2 FTP server: /PCFD_20260014609_20260209_062304.XML
[2026-02-09 06:23:17] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 06:43:29] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04087.xml
[2026-02-09 06:43:29] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04087.xml for user: 68d56363ec1209189
[2026-02-09 06:43:29] [INFO] File size: 1645 bytes
[2026-02-09 06:43:30] [INFO] Created FTPFiles record with ID: 698982126a3ddf5aa
[2026-02-09 06:43:30] [INFO] About to extract fields from XML. File size: 1645 bytes
[2026-02-09 06:43:30] [INFO] Number of mappings: 21
[2026-02-09 06:43:30] [INFO] Starting XML parsing. Content length: 1645
[2026-02-09 06:43:30] [INFO] XML parsed successfully. Root element: Incident
[2026-02-09 06:43:30] [INFO] Processing 21 field mappings
[2026-02-09 06:43:30] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-09 06:43:30] [INFO]   -> Found value: 26-04087
[2026-02-09 06:43:30] [INFO]   -> Set field 'dispatchRunNumber' = "26-04087"
[2026-02-09 06:43:30] [INFO]   -> Set field 'cADNumber' = "26-04087"
[2026-02-09 06:43:30] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-09 06:43:30] [INFO]   -> Found value: 876
[2026-02-09 06:43:30] [INFO]   -> Set field 'incidentLocationStreetNumber' = 876
[2026-02-09 06:43:30] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-09 06:43:30] [INFO]   -> Found value: STATE HIGHWAY O
[2026-02-09 06:43:30] [INFO]   -> Set field 'streetName' = "STATE HIGHWAY O"
[2026-02-09 06:43:30] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-09 06:43:30] [INFO]   -> No value found (null or empty)
[2026-02-09 06:43:30] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-09 06:43:30] [INFO]   -> Found value: BERTRAND
[2026-02-09 06:43:30] [INFO]   -> Set field 'incidentLocationCity' = "BERTRAND"
[2026-02-09 06:43:30] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-09 06:43:30] [INFO]   -> No value found (null or empty)
[2026-02-09 06:43:30] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-09 06:43:30] [INFO]   -> No value found (null or empty)
[2026-02-09 06:43:30] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-09 06:43:30] [INFO]   -> No value found (null or empty)
[2026-02-09 06:43:30] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-09 06:43:30] [INFO]   -> Found value: 0
[2026-02-09 06:43:30] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-09 06:43:30] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-09 06:43:30] [INFO]   -> Found value: 0
[2026-02-09 06:43:30] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-09 06:43:30] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-09 06:43:30] [INFO]   -> Found value: MEDICAL
[2026-02-09 06:43:30] [INFO]   -> Set field 'incidentTypeValue1' = "MEDICAL"
[2026-02-09 06:43:30] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-09 06:43:30] [INFO]   -> Found value: 02-09-2026 00:15:28|Call Received on 02/09/2026 @ 00:15

43 YO FEMALE POSSIBLY TOOK MANY ANTI-ANXIET...
[2026-02-09 06:43:30] [INFO]   -> Set field 'dispatchNotes' = "02-09-2026 00:15:28|Call Received on 02\/09\/2026 @ 00:15\n\n43 YO FEMALE POSSIBLY TOOK MANY ANTI-ANXIETY PILLS \nUNK HOW MANY LORAZEPAM  02-09-2026 00:27:13|1741 EN ROUTE 02-09-2026 00:28:24|1718 ON SCENE 02-09-2026 00:28:52|PATIENT BARELY CONSCIOUS 02-09-2026 00:29:19|BREATHING AT THIS TIME 02-09-2026 00:31:51|1741 ON SCENE 02-09-2026 00:35:52|Disposition - SSCA UNIT:  RPT"
[2026-02-09 06:43:30] [INFO]   -> Set field 'cADLog' = "02-09-2026 00:15:28|Call Received on 02\/09\/2026 @ 00:15\n\n43 YO FEMALE POSSIBLY TOOK MANY ANTI-ANXIETY PILLS \nUNK HOW MANY LORAZEPAM  02-09-2026 00:27:13|1741 EN ROUTE 02-09-2026 00:28:24|1718 ON SCENE 02-09-2026 00:28:52|PATIENT BARELY CONSCIOUS 02-09-2026 00:29:19|BREATHING AT THIS TIME 02-09-2026 00:31:51|1741 ON SCENE 02-09-2026 00:35:52|Disposition - SSCA UNIT:  RPT"
[2026-02-09 06:43:30] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-09 06:43:30] [INFO]   -> Found value: 02-09-2026T00:18:01
[2026-02-09 06:43:30] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T00:18:01
[2026-02-09 06:43:30] [INFO]   -> Set field 'alarm' = "2026-09-02 00:18:01"
[2026-02-09 06:43:30] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T00:18:01
[2026-02-09 06:43:30] [INFO]   -> Set field 'dispatched' = "2026-09-02 00:18:01"
[2026-02-09 06:43:30] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-09 06:43:30] [INFO]   -> No value found (null or empty)
[2026-02-09 06:43:30] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-09 06:43:30] [INFO]   -> No value found (null or empty)
[2026-02-09 06:43:30] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-09 06:43:30] [INFO]   -> Found value: RURAL PAGE
[2026-02-09 06:43:30] [INFO]   -> Set field 'cADVehicleID' = "RURAL PAGE"
[2026-02-09 06:43:30] [INFO]   -> Set field 'name' = "RURAL PAGE"
[2026-02-09 06:43:30] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-09 06:43:30] [INFO]   -> No value found (null or empty)
[2026-02-09 06:43:30] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-09 06:43:30] [INFO]   -> No value found (null or empty)
[2026-02-09 06:43:30] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-09 06:43:30] [INFO]   -> Found value: 02-09-2026T00:42:57
[2026-02-09 06:43:30] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T00:42:57
[2026-02-09 06:43:30] [INFO]   -> Set field 'timeunitclear' = "2026-09-02 00:42:57"
[2026-02-09 06:43:30] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-09 06:43:30] [INFO]   -> Found value: 02-09-2026T00:18:04
[2026-02-09 06:43:30] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T00:18:04
[2026-02-09 06:43:30] [INFO]   -> Set field 'timedispatch' = "2026-09-02 00:18:04"
[2026-02-09 06:43:30] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-09 06:43:30] [INFO]   -> Found value: SCRFD
[2026-02-09 06:43:30] [INFO]   -> Set field 'cADAgencyIdentifier' = "SCRFD"
[2026-02-09 06:43:30] [INFO] Finished extracting fields. Total fields extracted: 17
[2026-02-09 06:43:30] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-09 06:43:30] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-04087","cADNumber":"26-04087","incidentLocationStreetNumber":876,"streetName":"STATE HIGHWAY O","incidentLocationCity":"BERTRAND","nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"MEDICAL","dispatchNotes":"02-09-2026 00:15:28|Call Received on 02\/09\/2026 @ 00:15\n\n43 YO FEMALE POSSIBLY TOOK MANY ANTI-ANXIETY PILLS \nUNK HOW MANY LORAZEPAM  02-09-2026 00:27:13|1741 EN ROUTE 02-09-2026 00:28:24|1718 ON SCENE 02-09-2026 00:28:52|PATIENT BARELY CONSCIOUS 02-09-2026 00:29:19|BREATHING AT THIS TIME 02-09-2026 00:31:51|1741 ON SCENE 02-09-2026 00:35:52|Disposition - SSCA UNIT:  RPT","cADLog":"02-09-2026 00:15:28|Call Received on 02\/09\/2026 @ 00:15\n\n43 YO FEMALE POSSIBLY TOOK MANY ANTI-ANXIETY PILLS \nUNK HOW MANY LORAZEPAM  02-09-2026 00:27:13|1741 EN ROUTE 02-09-2026 00:28:24|1718 ON SCENE 02-09-2026 00:28:52|PATIENT BARELY CONSCIOUS 02-09-2026 00:29:19|BREATHING AT THIS TIME 02-09-2026 00:31:51|1741 ON SCENE 02-09-2026 00:35:52|Disposition - SSCA UNIT:  RPT","alarm":"2026-09-02 00:18:01","dispatched":"2026-09-02 00:18:01","cADVehicleID":"RURAL PAGE","name":"RURAL PAGE","timeunitclear":"2026-09-02 00:42:57","timedispatch":"2026-09-02 00:18:04","cADAgencyIdentifier":"SCRFD","locationCoordinates":"0,0"}
[2026-02-09 06:43:30] [INFO] Number of extracted fields: 18
[2026-02-09 06:43:30] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SCRFD'
[2026-02-09 06:43:30] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SCRFD', Parsed IDs = ["SCRFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 06:43:30] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SCRFD"]
[2026-02-09 06:43:30] [INFO] Attempting SAASClient lookup for AgencyCode 'SCRFD' (index 0) within mailbox's assigned agencies
[2026-02-09 06:43:30] [INFO] SUCCESS: Routed to agency 'Scott County Rural Fire Protection District' (ID: 6643bdb30659f00d8) at INDEX 0 based on AgencyCode 'SCRFD'
[2026-02-09 06:43:30] [INFO] Fetched 6 stations from Stations module for agency 'Scott County Rural Fire Protection District': ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"]
[2026-02-09 06:43:30] [INFO] Final routing: saasclientId = 6643bdb30659f00d8, dispatchStationsIds = ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"], matchedAgencyIndex = 0
[2026-02-09 06:43:31] [INFO] Updated FTPFiles record saasclientId to routed agency: 6643bdb30659f00d8
[2026-02-09 06:43:31] [INFO] Found existing IncidentTypeMapping with ID: 6979040ce473322a8
[2026-02-09 06:43:31] [INFO] Found existing Dispatch with cADNumber '26-04087', ID: 69897c20be2869c72 - will update instead of create
[2026-02-09 06:43:31] [INFO] Updated existing Dispatches record with ID: 69897c20be2869c72
[2026-02-09 06:43:31] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-09
[2026-02-09 06:43:31] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04087.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-09/SCRFD_26-04087.xml
[2026-02-09 06:43:31] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04087.xml
[2026-02-09 07:52:24] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014620_20260209_075224.XML
[2026-02-09 07:52:24] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014620_20260209_075224.XML for user: 68f1466aed072ad4a
[2026-02-09 07:52:24] [INFO] File size: 5155 bytes
[2026-02-09 07:52:25] [INFO] Created FTPFiles record with ID: 6989923949807a04b
[2026-02-09 07:52:25] [INFO] About to extract fields from XML. File size: 5155 bytes
[2026-02-09 07:52:25] [INFO] Number of mappings: 28
[2026-02-09 07:52:25] [INFO] Starting XML parsing. Content length: 5155
[2026-02-09 07:52:25] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 07:52:25] [INFO] Processing 28 field mappings
[2026-02-09 07:52:25] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 07:52:25] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 07:52:25] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 07:52:25] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-02-09 07:52:25] [INFO]   -> Found value: PCFD
EMS
RESC
[2026-02-09 07:52:25] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nRESC"
[2026-02-09 07:52:25] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 07:52:25] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-02-09 07:52:25] [INFO]   -> Found value: 2026000386
[2026-02-09 07:52:25] [INFO]   -> Set field 'incidentInternalId' = "2026000386"
[2026-02-09 07:52:25] [INFO]   -> Set field 'dispatchRunNumber' = "2026000386"
[2026-02-09 07:52:25] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 07:52:25] [INFO]   -> Found value: BREATHING PROBLEMS
[2026-02-09 07:52:25] [INFO]   -> Set field 'incidentTypeValue1' = "BREATHING PROBLEMS"
[2026-02-09 07:52:25] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 07:52:25] [INFO]   -> Found value: 2590
[2026-02-09 07:52:25] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2590
[2026-02-09 07:52:25] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 07:52:25] [INFO]   -> Found value: TN
[2026-02-09 07:52:25] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 07:52:25] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 07:52:25] [INFO]   -> Found value: 38501
[2026-02-09 07:52:25] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-02-09 07:52:25] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 07:52:25] [INFO]   -> Found value: 36.17379
[2026-02-09 07:52:25] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.17378999999999678038875572383403778076171875
[2026-02-09 07:52:25] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 07:52:25] [INFO]   -> Found value: -85.57947
[2026-02-09 07:52:25] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.5794700000000005957190296612679958343505859375
[2026-02-09 07:52:25] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 07:52:25] [INFO]   -> Found value: 2026-02-09 01:52:05
[2026-02-09 07:52:25] [INFO]   -> Set field 'alarm' = "2026-02-09 01:52:05"
[2026-02-09 07:52:25] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 07:52:25] [INFO]   -> Found value: 2026-02-09 01:52:14
[2026-02-09 07:52:25] [INFO]   -> Set field 'dispatched' = "2026-02-09 01:52:14"
[2026-02-09 07:52:25] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 07:52:25] [INFO]   -> Found value: SOUTH DR/N MCBROOM CHAPEL RD
[2026-02-09 07:52:25] [INFO]   -> Set field 'incidentLocationCross' = "SOUTH DR\/N MCBROOM CHAPEL RD"
[2026-02-09 07:52:25] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 07:52:25] [INFO]   -> Found value: PCFR
[2026-02-09 07:52:25] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 07:52:25] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 07:52:25] [INFO]   -> Found value: 2026-02-09 01:52:14
[2026-02-09 07:52:25] [INFO]   -> Set field 'timedispatch' = "2026-02-09 01:52:14"
[2026-02-09 07:52:25] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 07:52:25] [INFO]   -> No value found (null or empty)
[2026-02-09 07:52:25] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 07:52:25] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 07:52:25] [INFO]   -> Found value: 20260014620
[2026-02-09 07:52:25] [INFO]   -> Set field 'policeReportNumber' = "20260014620"
[2026-02-09 07:52:25] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 07:52:25] [INFO]   -> Found value: Event spawned from BREATHING PROBLEMS.  [02/09/2026 01:52:05 SVOKOUN2]
[2026-02-09 07:52:25] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from BREATHING PROBLEMS.  [02\/09\/2026 01:52:05 SVOKOUN2]"
[2026-02-09 07:52:25] [INFO]   -> Set field 'cADLog' = "Event spawned from BREATHING PROBLEMS.  [02\/09\/2026 01:52:05 SVOKOUN2]"
[2026-02-09 07:52:25] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 07:52:25] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 07:52:25] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 07:52:25] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 07:52:25] [INFO]   -> Found value: BROAD
[2026-02-09 07:52:25] [INFO]   -> Set field 'streetName' = "BROAD"
[2026-02-09 07:52:25] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 07:52:25] [INFO]   -> Found value: ST
[2026-02-09 07:52:25] [INFO]   -> Set field 'streetType' = "ST"
[2026-02-09 07:52:25] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 07:52:25] [INFO]   -> Found value: 2590 W BROAD ST
[2026-02-09 07:52:25] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "2590 W BROAD ST"
[2026-02-09 07:52:25] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 07:52:25] [INFO] Concatenating street name and type
[2026-02-09 07:52:25] [INFO]   -> Combined street name: BROAD ST
[2026-02-09 07:52:25] [INFO] Built locationCoordinates from lat/lng: 36.17379,-85.57947
[2026-02-09 07:52:25] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nRESC","incidentInternalId":"2026000386","dispatchRunNumber":"2026000386","incidentTypeValue1":"BREATHING PROBLEMS","incidentLocationStreetNumber":2590,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"nERISIncidentLatitude":36.17378999999999678038875572383403778076171875,"nERISIncidentLongitude":-85.5794700000000005957190296612679958343505859375,"alarm":"2026-02-09 01:52:05","dispatched":"2026-02-09 01:52:14","incidentLocationCross":"SOUTH DR\/N MCBROOM CHAPEL RD","cADVehicleID":"PCFR","timedispatch":"2026-02-09 01:52:14","policeReportNumber":"20260014620","dispatchNotes":"Event spawned from BREATHING PROBLEMS.  [02\/09\/2026 01:52:05 SVOKOUN2]","cADLog":"Event spawned from BREATHING PROBLEMS.  [02\/09\/2026 01:52:05 SVOKOUN2]","incidentLocationCity":"COOKEVILLE","streetName":"BROAD ST","incidentAddressTextVersionStreet":"2590 W BROAD ST","locationCoordinates":"36.17379,-85.57947"}
[2026-02-09 07:52:25] [INFO] Number of extracted fields: 21
[2026-02-09 07:52:25] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
RESC'
[2026-02-09 07:52: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-02-09 07:52:25] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","RESC"]
[2026-02-09 07:52:25] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 07:52:25] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 07:52:25] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","RESC"]
[2026-02-09 07:52: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-02-09 07:52:25] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 07:52:25] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-02-09 07:52:25] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 07:52:25] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 07:52:25] [INFO] Found existing IncidentTypeMapping with ID: 693e326c3c0e41cb3
[2026-02-09 07:52:35] [INFO] Created new Dispatches record with ID: 6989923a3b7d81c43
[2026-02-09 07:52:35] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 07:52:35] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 07:52:39] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 07:52:39] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014620_20260209_075224.XML: Failed to upload file to V2 FTP server: /PCFD_20260014620_20260209_075224.XML
[2026-02-09 07:52:39] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 08:47:53] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04094.xml
[2026-02-09 08:47:53] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04094.xml for user: 68d56363ec1209189
[2026-02-09 08:47:53] [INFO] File size: 1456 bytes
[2026-02-09 08:47:53] [INFO] Created FTPFiles record with ID: 69899f39a7df70076
[2026-02-09 08:47:53] [INFO] About to extract fields from XML. File size: 1456 bytes
[2026-02-09 08:47:53] [INFO] Number of mappings: 21
[2026-02-09 08:47:53] [INFO] Starting XML parsing. Content length: 1456
[2026-02-09 08:47:53] [INFO] XML parsed successfully. Root element: Incident
[2026-02-09 08:47:53] [INFO] Processing 21 field mappings
[2026-02-09 08:47:53] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-09 08:47:53] [INFO]   -> Found value: 26-04094
[2026-02-09 08:47:53] [INFO]   -> Set field 'dispatchRunNumber' = "26-04094"
[2026-02-09 08:47:53] [INFO]   -> Set field 'cADNumber' = "26-04094"
[2026-02-09 08:47:53] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-09 08:47:53] [INFO]   -> Found value: 601
[2026-02-09 08:47:53] [INFO]   -> Set field 'incidentLocationStreetNumber' = 601
[2026-02-09 08:47:53] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-09 08:47:53] [INFO]   -> Found value: VANDUSER ST
[2026-02-09 08:47:53] [INFO]   -> Set field 'streetName' = "VANDUSER ST"
[2026-02-09 08:47:53] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-09 08:47:53] [INFO]   -> No value found (null or empty)
[2026-02-09 08:47:53] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-09 08:47:53] [INFO]   -> Found value: VANDUSER
[2026-02-09 08:47:53] [INFO]   -> Set field 'incidentLocationCity' = "VANDUSER"
[2026-02-09 08:47:53] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-09 08:47:53] [INFO]   -> No value found (null or empty)
[2026-02-09 08:47:53] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-09 08:47:53] [INFO]   -> No value found (null or empty)
[2026-02-09 08:47:53] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-09 08:47:53] [INFO]   -> No value found (null or empty)
[2026-02-09 08:47:53] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-09 08:47:53] [INFO]   -> Found value: 0
[2026-02-09 08:47:53] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-09 08:47:53] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-09 08:47:53] [INFO]   -> Found value: 0
[2026-02-09 08:47:53] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-09 08:47:53] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-09 08:47:53] [INFO]   -> Found value: MEDICAL
[2026-02-09 08:47:53] [INFO]   -> Set field 'incidentTypeValue1' = "MEDICAL"
[2026-02-09 08:47:53] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-09 08:47:53] [INFO]   -> Found value: 02-09-2026 01:42:14|Call Received on 02/09/2026 @ 01:42

67 YEAR OLD FEMALE HAVING TROUBLE BREATHING...
[2026-02-09 08:47:53] [INFO]   -> Set field 'dispatchNotes' = "02-09-2026 01:42:14|Call Received on 02\/09\/2026 @ 01:42\n\n67 YEAR OLD FEMALE HAVING TROUBLE BREATHING 02-09-2026 02:02:24|Disposition - SSCA UNIT:  RPT"
[2026-02-09 08:47:53] [INFO]   -> Set field 'cADLog' = "02-09-2026 01:42:14|Call Received on 02\/09\/2026 @ 01:42\n\n67 YEAR OLD FEMALE HAVING TROUBLE BREATHING 02-09-2026 02:02:24|Disposition - SSCA UNIT:  RPT"
[2026-02-09 08:47:53] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-09 08:47:53] [INFO]   -> Found value: 02-09-2026T01:44:45
[2026-02-09 08:47:53] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T01:44:45
[2026-02-09 08:47:53] [INFO]   -> Set field 'alarm' = "2026-09-02 01:44:45"
[2026-02-09 08:47:53] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T01:44:45
[2026-02-09 08:47:53] [INFO]   -> Set field 'dispatched' = "2026-09-02 01:44:45"
[2026-02-09 08:47:53] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-09 08:47:53] [INFO]   -> Found value: 02-09-2026T02:28:18
[2026-02-09 08:47:53] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T02:28:18
[2026-02-09 08:47:53] [INFO]   -> Set field 'onScene' = "2026-09-02 02:28:18"
[2026-02-09 08:47:53] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-09 08:47:53] [INFO]   -> Found value: 02-09-2026T02:47:12
[2026-02-09 08:47:53] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T02:47:12
[2026-02-09 08:47:53] [INFO]   -> Set field 'cleared' = "2026-09-02 02:47:12"
[2026-02-09 08:47:53] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T02:47:12
[2026-02-09 08:47:53] [INFO]   -> Set field 'inService' = "2026-09-02 02:47:12"
[2026-02-09 08:47:53] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-09 08:47:53] [INFO]   -> Found value: RURAL PAGE
[2026-02-09 08:47:53] [INFO]   -> Set field 'cADVehicleID' = "RURAL PAGE"
[2026-02-09 08:47:53] [INFO]   -> Set field 'name' = "RURAL PAGE"
[2026-02-09 08:47:53] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-09 08:47:53] [INFO]   -> No value found (null or empty)
[2026-02-09 08:47:53] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-09 08:47:53] [INFO]   -> No value found (null or empty)
[2026-02-09 08:47:53] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-09 08:47:53] [INFO]   -> Found value: 02-09-2026T02:47:12
[2026-02-09 08:47:53] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T02:47:12
[2026-02-09 08:47:53] [INFO]   -> Set field 'timeunitclear' = "2026-09-02 02:47:12"
[2026-02-09 08:47:53] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-09 08:47:53] [INFO]   -> Found value: 02-09-2026T01:44:47
[2026-02-09 08:47:53] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T01:44:47
[2026-02-09 08:47:53] [INFO]   -> Set field 'timedispatch' = "2026-09-02 01:44:47"
[2026-02-09 08:47:53] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-09 08:47:53] [INFO]   -> Found value: SCRFD
[2026-02-09 08:47:53] [INFO]   -> Set field 'cADAgencyIdentifier' = "SCRFD"
[2026-02-09 08:47:53] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 08:47:53] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-09 08:47:53] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-04094","cADNumber":"26-04094","incidentLocationStreetNumber":601,"streetName":"VANDUSER ST","incidentLocationCity":"VANDUSER","nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"MEDICAL","dispatchNotes":"02-09-2026 01:42:14|Call Received on 02\/09\/2026 @ 01:42\n\n67 YEAR OLD FEMALE HAVING TROUBLE BREATHING 02-09-2026 02:02:24|Disposition - SSCA UNIT:  RPT","cADLog":"02-09-2026 01:42:14|Call Received on 02\/09\/2026 @ 01:42\n\n67 YEAR OLD FEMALE HAVING TROUBLE BREATHING 02-09-2026 02:02:24|Disposition - SSCA UNIT:  RPT","alarm":"2026-09-02 01:44:45","dispatched":"2026-09-02 01:44:45","onScene":"2026-09-02 02:28:18","cleared":"2026-09-02 02:47:12","inService":"2026-09-02 02:47:12","cADVehicleID":"RURAL PAGE","name":"RURAL PAGE","timeunitclear":"2026-09-02 02:47:12","timedispatch":"2026-09-02 01:44:47","cADAgencyIdentifier":"SCRFD","locationCoordinates":"0,0"}
[2026-02-09 08:47:53] [INFO] Number of extracted fields: 21
[2026-02-09 08:47:53] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SCRFD'
[2026-02-09 08:47:53] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SCRFD', Parsed IDs = ["SCRFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 08:47:53] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SCRFD"]
[2026-02-09 08:47:53] [INFO] Attempting SAASClient lookup for AgencyCode 'SCRFD' (index 0) within mailbox's assigned agencies
[2026-02-09 08:47:53] [INFO] SUCCESS: Routed to agency 'Scott County Rural Fire Protection District' (ID: 6643bdb30659f00d8) at INDEX 0 based on AgencyCode 'SCRFD'
[2026-02-09 08:47:54] [INFO] Fetched 6 stations from Stations module for agency 'Scott County Rural Fire Protection District': ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"]
[2026-02-09 08:47:54] [INFO] Final routing: saasclientId = 6643bdb30659f00d8, dispatchStationsIds = ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"], matchedAgencyIndex = 0
[2026-02-09 08:47:54] [INFO] Updated FTPFiles record saasclientId to routed agency: 6643bdb30659f00d8
[2026-02-09 08:47:54] [INFO] Found existing IncidentTypeMapping with ID: 6979040ce473322a8
[2026-02-09 08:47:54] [INFO] Found existing Dispatch with cADNumber '26-04094', ID: 69899073b2415054d - will update instead of create
[2026-02-09 08:47:54] [INFO] Updated existing Dispatches record with ID: 69899073b2415054d
[2026-02-09 08:47:54] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04094.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-09/SCRFD_26-04094.xml
[2026-02-09 08:47:54] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04094.xml
[2026-02-09 10:11:25] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014631_20260209_101125.XML
[2026-02-09 10:11:25] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014631_20260209_101125.XML for user: 68f1466aed072ad4a
[2026-02-09 10:11:25] [INFO] File size: 5458 bytes
[2026-02-09 10:11:25] [INFO] Created FTPFiles record with ID: 6989b2cd90bbcc518
[2026-02-09 10:11:25] [INFO] About to extract fields from XML. File size: 5458 bytes
[2026-02-09 10:11:25] [INFO] Number of mappings: 28
[2026-02-09 10:11:25] [INFO] Starting XML parsing. Content length: 5458
[2026-02-09 10:11:25] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 10:11:25] [INFO] Processing 28 field mappings
[2026-02-09 10:11:25] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 10:11:25] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 10:11:25] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 10:11:25] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-02-09 10:11:25] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-02-09 10:11:25] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-02-09 10:11:25] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 10:11:25] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-02-09 10:11:25] [INFO]   -> Found value: 2026000387
[2026-02-09 10:11:25] [INFO]   -> Set field 'incidentInternalId' = "2026000387"
[2026-02-09 10:11:25] [INFO]   -> Set field 'dispatchRunNumber' = "2026000387"
[2026-02-09 10:11:25] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 10:11:25] [INFO]   -> Found value: UNCONSCIOUS
[2026-02-09 10:11:25] [INFO]   -> Set field 'incidentTypeValue1' = "UNCONSCIOUS"
[2026-02-09 10:11:25] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 10:11:25] [INFO]   -> Found value: 6179
[2026-02-09 10:11:25] [INFO]   -> Set field 'incidentLocationStreetNumber' = 6179
[2026-02-09 10:11:25] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 10:11:25] [INFO]   -> Found value: TN
[2026-02-09 10:11:25] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 10:11:25] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 10:11:25] [INFO]   -> Found value: 38501
[2026-02-09 10:11:25] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-02-09 10:11:25] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 10:11:25] [INFO]   -> Found value: 36.24420
[2026-02-09 10:11:25] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.24419999999999930651028989814221858978271484375
[2026-02-09 10:11:25] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 10:11:25] [INFO]   -> Found value: -85.51614
[2026-02-09 10:11:25] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.5161399999999929377736407332122325897216796875
[2026-02-09 10:11:25] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 10:11:25] [INFO]   -> Found value: 2026-02-09 04:10:41
[2026-02-09 10:11:25] [INFO]   -> Set field 'alarm' = "2026-02-09 04:10:41"
[2026-02-09 10:11:25] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 10:11:25] [INFO]   -> Found value: 2026-02-09 04:11:17
[2026-02-09 10:11:25] [INFO]   -> Set field 'dispatched' = "2026-02-09 04:11:17"
[2026-02-09 10:11:25] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 10:11:25] [INFO]   -> Found value: HILL RD/GARRISON RD
[2026-02-09 10:11:25] [INFO]   -> Set field 'incidentLocationCross' = "HILL RD\/GARRISON RD"
[2026-02-09 10:11:25] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 10:11:25] [INFO]   -> Found value: PCFR
[2026-02-09 10:11:25] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 10:11:25] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 10:11:25] [INFO]   -> Found value: 2026-02-09 04:11:17
[2026-02-09 10:11:25] [INFO]   -> Set field 'timedispatch' = "2026-02-09 04:11:17"
[2026-02-09 10:11:25] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 10:11:25] [INFO]   -> No value found (null or empty)
[2026-02-09 10:11:25] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 10:11:25] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 10:11:25] [INFO]   -> Found value: 20260014631
[2026-02-09 10:11:25] [INFO]   -> Set field 'policeReportNumber' = "20260014631"
[2026-02-09 10:11:25] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 10:11:25] [INFO]   -> Found value: [LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02/09/26 04:10:59 BAHARRIS] [EMS] BREATHING BUT WILL NOT WAK...
[2026-02-09 10:11:25] [INFO]   -> Set field 'dispatchNotes' = "[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02\/09\/26 04:10:59 BAHARRIS] [EMS] BREATHING BUT WILL NOT WAKE UP  [02\/09\/26 04:10:51 SVOKOUN2] Event spawned from UNCONSCIOUS.  [02\/09\/2026 04:10:41 SVOKOUN2]"
[2026-02-09 10:11:25] [INFO]   -> Set field 'cADLog' = "[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02\/09\/26 04:10:59 BAHARRIS] [EMS] BREATHING BUT WILL NOT WAKE UP  [02\/09\/26 04:10:51 SVOKOUN2] Event spawned from UNCONSCIOUS.  [02\/09\/2026 04:10:41 SVOKOUN2]"
[2026-02-09 10:11:25] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 10:11:25] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 10:11:25] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 10:11:25] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 10:11:25] [INFO]   -> Found value: DODSON BRANCH
[2026-02-09 10:11:25] [INFO]   -> Set field 'streetName' = "DODSON BRANCH"
[2026-02-09 10:11:25] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 10:11:25] [INFO]   -> Found value: RD
[2026-02-09 10:11:25] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 10:11:25] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 10:11:25] [INFO]   -> Found value: 6179 DODSON BRANCH RD
[2026-02-09 10:11:25] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "6179 DODSON BRANCH RD"
[2026-02-09 10:11:25] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 10:11:25] [INFO] Concatenating street name and type
[2026-02-09 10:11:25] [INFO]   -> Combined street name: DODSON BRANCH RD
[2026-02-09 10:11:25] [INFO] Built locationCoordinates from lat/lng: 36.2442,-85.51614
[2026-02-09 10:11:25] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000387","dispatchRunNumber":"2026000387","incidentTypeValue1":"UNCONSCIOUS","incidentLocationStreetNumber":6179,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"nERISIncidentLatitude":36.24419999999999930651028989814221858978271484375,"nERISIncidentLongitude":-85.5161399999999929377736407332122325897216796875,"alarm":"2026-02-09 04:10:41","dispatched":"2026-02-09 04:11:17","incidentLocationCross":"HILL RD\/GARRISON RD","cADVehicleID":"PCFR","timedispatch":"2026-02-09 04:11:17","policeReportNumber":"20260014631","dispatchNotes":"[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02\/09\/26 04:10:59 BAHARRIS] [EMS] BREATHING BUT WILL NOT WAKE UP  [02\/09\/26 04:10:51 SVOKOUN2] Event spawned from UNCONSCIOUS.  [02\/09\/2026 04:10:41 SVOKOUN2]","cADLog":"[LAW] UDTS: LAW CARD SEEN BY CPD-PCSO  [02\/09\/26 04:10:59 BAHARRIS] [EMS] BREATHING BUT WILL NOT WAKE UP  [02\/09\/26 04:10:51 SVOKOUN2] Event spawned from UNCONSCIOUS.  [02\/09\/2026 04:10:41 SVOKOUN2]","incidentLocationCity":"COOKEVILLE","streetName":"DODSON BRANCH RD","incidentAddressTextVersionStreet":"6179 DODSON BRANCH RD","locationCoordinates":"36.2442,-85.51614"}
[2026-02-09 10:11:25] [INFO] Number of extracted fields: 21
[2026-02-09 10:11:25] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-02-09 10:11:25] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
PCSO
RESC', Parsed IDs = ["PCFD","EMS","PCSO","RESC"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 4
[2026-02-09 10:11:25] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-02-09 10:11:25] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 10:11:25] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 10:11:25] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-02-09 10:11: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-02-09 10:11:25] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 10:11:25] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-09 10:11:25] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 10:11:25] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 10:11:26] [INFO] Found existing IncidentTypeMapping with ID: 693976706d4f7fb2e
[2026-02-09 10:11:37] [INFO] Created new Dispatches record with ID: 6989b2ce89111b503
[2026-02-09 10:11:37] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 10:11:37] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 10:11:40] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 10:11:40] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014631_20260209_101125.XML: Failed to upload file to V2 FTP server: /PCFD_20260014631_20260209_101125.XML
[2026-02-09 10:11:40] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 10:22:55] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04102.xml
[2026-02-09 10:22:55] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04102.xml for user: 68d56363ec1209189
[2026-02-09 10:22:55] [INFO] File size: 2332 bytes
[2026-02-09 10:22:55] [INFO] Created FTPFiles record with ID: 6989b57f9007c4e16
[2026-02-09 10:22:55] [INFO] About to extract fields from XML. File size: 2332 bytes
[2026-02-09 10:22:55] [INFO] Number of mappings: 21
[2026-02-09 10:22:55] [INFO] Starting XML parsing. Content length: 2332
[2026-02-09 10:22:55] [INFO] XML parsed successfully. Root element: Incident
[2026-02-09 10:22:55] [INFO] Processing 21 field mappings
[2026-02-09 10:22:55] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-09 10:22:55] [INFO]   -> Found value: 26-04102
[2026-02-09 10:22:55] [INFO]   -> Set field 'dispatchRunNumber' = "26-04102"
[2026-02-09 10:22:55] [INFO]   -> Set field 'cADNumber' = "26-04102"
[2026-02-09 10:22:55] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-09 10:22:55] [INFO]   -> Found value: 101
[2026-02-09 10:22:55] [INFO]   -> Set field 'incidentLocationStreetNumber' = 101
[2026-02-09 10:22:55] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-09 10:22:55] [INFO]   -> Found value: ARMOR DR
[2026-02-09 10:22:55] [INFO]   -> Set field 'streetName' = "ARMOR DR"
[2026-02-09 10:22:55] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-09 10:22:55] [INFO]   -> No value found (null or empty)
[2026-02-09 10:22:55] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-09 10:22:55] [INFO]   -> Found value: SIKESTON
[2026-02-09 10:22:55] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-02-09 10:22:55] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-09 10:22:55] [INFO]   -> Found value: CARLISLE CONSTRUCTION MATERIALS
[2026-02-09 10:22:55] [INFO]   -> Set field 'businessName' = "CARLISLE CONSTRUCTION MATERIALS"
[2026-02-09 10:22:55] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-09 10:22:55] [INFO]   -> Found value: MO
[2026-02-09 10:22:55] [INFO]   -> Set field 'incidentLocationStateName' = "MO"
[2026-02-09 10:22:55] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-09 10:22:55] [INFO]   -> Found value: 63801
[2026-02-09 10:22:55] [INFO]   -> Set field 'nERISIncidentPostalCode' = 63801
[2026-02-09 10:22:55] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-09 10:22:55] [INFO]   -> Found value: 0
[2026-02-09 10:22:55] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-09 10:22:55] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-09 10:22:55] [INFO]   -> Found value: 0
[2026-02-09 10:22:55] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-09 10:22:55] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-09 10:22:55] [INFO]   -> Found value: FIRE-ALARM MECH
[2026-02-09 10:22:55] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-ALARM MECH"
[2026-02-09 10:22:55] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-09 10:22:55] [INFO]   -> Found value: 02-09-2026 04:00:40|FIRE ALARM
NO CONTACT WITH KEYHOLDER
GENEREL ZONE 2 02-09-2026 04:07:46|ALARM CO...
[2026-02-09 10:22:55] [INFO]   -> Set field 'dispatchNotes' = "02-09-2026 04:00:40|FIRE ALARM\nNO CONTACT WITH KEYHOLDER\nGENEREL ZONE 2 02-09-2026 04:07:46|ALARM COMPANY RECONTACTED TO ADVISE TO CANCEL 02-09-2026 04:07:59|KEYHOLDER GAVE PROPER CODE"
[2026-02-09 10:22:55] [INFO]   -> Set field 'cADLog' = "02-09-2026 04:00:40|FIRE ALARM\nNO CONTACT WITH KEYHOLDER\nGENEREL ZONE 2 02-09-2026 04:07:46|ALARM COMPANY RECONTACTED TO ADVISE TO CANCEL 02-09-2026 04:07:59|KEYHOLDER GAVE PROPER CODE"
[2026-02-09 10:22:55] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-09 10:22:55] [INFO]   -> Found value: 02-09-2026T04:04:34
[2026-02-09 10:22:55] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T04:04:34
[2026-02-09 10:22:55] [INFO]   -> Set field 'alarm' = "2026-09-02 04:04:34"
[2026-02-09 10:22:55] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T04:04:34
[2026-02-09 10:22:55] [INFO]   -> Set field 'dispatched' = "2026-09-02 04:04:34"
[2026-02-09 10:22:55] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-09 10:22:55] [INFO]   -> No value found (null or empty)
[2026-02-09 10:22:55] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-09 10:22:55] [INFO]   -> No value found (null or empty)
[2026-02-09 10:22:55] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-09 10:22:55] [INFO]   -> Found value: ENG2
[2026-02-09 10:22:55] [INFO]   -> Set field 'cADVehicleID' = "ENG2"
[2026-02-09 10:22:55] [INFO]   -> Set field 'name' = "ENG2"
[2026-02-09 10:22:55] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-09 10:22:55] [INFO]   -> Found value: 02-09-2026T04:06:50
[2026-02-09 10:22:55] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T04:06:50
[2026-02-09 10:22:55] [INFO]   -> Set field 'timeenroutetoscene' = "2026-09-02 04:06:50"
[2026-02-09 10:22:55] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-09 10:22:55] [INFO]   -> No value found (null or empty)
[2026-02-09 10:22:55] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-09 10:22:55] [INFO]   -> Found value: 02-09-2026T04:22:36
[2026-02-09 10:22:55] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T04:22:36
[2026-02-09 10:22:55] [INFO]   -> Set field 'timeunitclear' = "2026-09-02 04:22:36"
[2026-02-09 10:22:55] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-09 10:22:55] [INFO]   -> Found value: 02-09-2026T04:06:47
[2026-02-09 10:22:55] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T04:06:47
[2026-02-09 10:22:55] [INFO]   -> Set field 'timedispatch' = "2026-09-02 04:06:47"
[2026-02-09 10:22:55] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-09 10:22:55] [INFO]   -> Found value: SDPSFD
[2026-02-09 10:22:55] [INFO]   -> Set field 'cADAgencyIdentifier' = "SDPSFD"
[2026-02-09 10:22:55] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 10:22:55] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-09 10:22:55] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-04102","cADNumber":"26-04102","incidentLocationStreetNumber":101,"streetName":"ARMOR DR","incidentLocationCity":"SIKESTON","businessName":"CARLISLE CONSTRUCTION MATERIALS","incidentLocationStateName":"MO","nERISIncidentPostalCode":63801,"nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"FIRE-ALARM MECH","dispatchNotes":"02-09-2026 04:00:40|FIRE ALARM\nNO CONTACT WITH KEYHOLDER\nGENEREL ZONE 2 02-09-2026 04:07:46|ALARM COMPANY RECONTACTED TO ADVISE TO CANCEL 02-09-2026 04:07:59|KEYHOLDER GAVE PROPER CODE","cADLog":"02-09-2026 04:00:40|FIRE ALARM\nNO CONTACT WITH KEYHOLDER\nGENEREL ZONE 2 02-09-2026 04:07:46|ALARM COMPANY RECONTACTED TO ADVISE TO CANCEL 02-09-2026 04:07:59|KEYHOLDER GAVE PROPER CODE","alarm":"2026-09-02 04:04:34","dispatched":"2026-09-02 04:04:34","cADVehicleID":"ENG2","name":"ENG2","timeenroutetoscene":"2026-09-02 04:06:50","timeunitclear":"2026-09-02 04:22:36","timedispatch":"2026-09-02 04:06:47","cADAgencyIdentifier":"SDPSFD","locationCoordinates":"0,0"}
[2026-02-09 10:22:55] [INFO] Number of extracted fields: 22
[2026-02-09 10:22:55] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SDPSFD'
[2026-02-09 10:22:55] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SDPSFD', Parsed IDs = ["SDPSFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 10:22:55] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SDPSFD"]
[2026-02-09 10:22:55] [INFO] Attempting SAASClient lookup for AgencyCode 'SDPSFD' (index 0) within mailbox's assigned agencies
[2026-02-09 10:22:55] [INFO] SUCCESS: Routed to agency 'Sikeston DPS' (ID: 6772cab7157b2ebde) at INDEX 0 based on AgencyCode 'SDPSFD'
[2026-02-09 10:22:56] [INFO] Fetched 4 stations from Stations module for agency 'Sikeston DPS': ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"]
[2026-02-09 10:22:56] [INFO] Final routing: saasclientId = 6772cab7157b2ebde, dispatchStationsIds = ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"], matchedAgencyIndex = 0
[2026-02-09 10:22:56] [INFO] Multi-agency routing matched mailbox default agency: 6772cab7157b2ebde (no update needed)
[2026-02-09 10:22:56] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e872e5ae13
[2026-02-09 10:22:57] [INFO] Created new Dispatches record with ID: 6989b5808f828d600
[2026-02-09 10:22:57] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04102.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-09/SDPSFD_26-04102.xml
[2026-02-09 10:22:57] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04102.xml
[2026-02-09 13:22:15] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014658_20260209_132215.XML
[2026-02-09 13:22:15] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014658_20260209_132215.XML for user: 68f1466aed072ad4a
[2026-02-09 13:22:15] [INFO] File size: 5367 bytes
[2026-02-09 13:22:15] [INFO] Created FTPFiles record with ID: 6989df87e59e81299
[2026-02-09 13:22:15] [INFO] About to extract fields from XML. File size: 5367 bytes
[2026-02-09 13:22:15] [INFO] Number of mappings: 28
[2026-02-09 13:22:15] [INFO] Starting XML parsing. Content length: 5367
[2026-02-09 13:22:15] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 13:22:15] [INFO] Processing 28 field mappings
[2026-02-09 13:22:15] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 13:22:15] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 13:22:15] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 13:22:15] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-02-09 13:22:15] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-02-09 13:22:15] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-02-09 13:22:15] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 13:22:15] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-02-09 13:22:15] [INFO]   -> Found value: 2026000388
[2026-02-09 13:22:15] [INFO]   -> Set field 'incidentInternalId' = "2026000388"
[2026-02-09 13:22:15] [INFO]   -> Set field 'dispatchRunNumber' = "2026000388"
[2026-02-09 13:22:15] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 13:22:15] [INFO]   -> Found value: UNCONSCIOUS
[2026-02-09 13:22:15] [INFO]   -> Set field 'incidentTypeValue1' = "UNCONSCIOUS"
[2026-02-09 13:22:15] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 13:22:15] [INFO]   -> Found value: 2102
[2026-02-09 13:22:15] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2102
[2026-02-09 13:22:15] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 13:22:15] [INFO]   -> Found value: TN
[2026-02-09 13:22:15] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 13:22:15] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 13:22:15] [INFO]   -> Found value: 38506
[2026-02-09 13:22:15] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-09 13:22:15] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 13:22:15] [INFO]   -> Found value: 36.08376
[2026-02-09 13:22:15] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.0837599999999980582288117147982120513916015625
[2026-02-09 13:22:15] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 13:22:15] [INFO]   -> Found value: -85.55506
[2026-02-09 13:22:15] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.555059999999997444319888018071651458740234375
[2026-02-09 13:22:15] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 13:22:15] [INFO]   -> Found value: 2026-02-09 07:21:39
[2026-02-09 13:22:15] [INFO]   -> Set field 'alarm' = "2026-02-09 07:21:39"
[2026-02-09 13:22:15] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 13:22:15] [INFO]   -> Found value: 2026-02-09 07:22:10
[2026-02-09 13:22:15] [INFO]   -> Set field 'dispatched' = "2026-02-09 07:22:10"
[2026-02-09 13:22:15] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 13:22:15] [INFO]   -> Found value: HOOPER BURGESS RD
[2026-02-09 13:22:15] [INFO]   -> Set field 'incidentLocationCross' = "HOOPER BURGESS RD"
[2026-02-09 13:22:15] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 13:22:15] [INFO]   -> Found value: PCFR
[2026-02-09 13:22:15] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 13:22:15] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 13:22:15] [INFO]   -> Found value: 2026-02-09 07:22:10
[2026-02-09 13:22:15] [INFO]   -> Set field 'timedispatch' = "2026-02-09 07:22:10"
[2026-02-09 13:22:15] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 13:22:15] [INFO]   -> No value found (null or empty)
[2026-02-09 13:22:15] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 13:22:15] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 13:22:15] [INFO]   -> Found value: 20260014658
[2026-02-09 13:22:15] [INFO]   -> Set field 'policeReportNumber' = "20260014658"
[2026-02-09 13:22:15] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 13:22:15] [INFO]   -> Found value: [EMS] LIVER FAILURE  50 YOM  [02/09/26 07:22:09 KHILL] Event spawned from UNCONSCIOUS.  [02/09/2026 ...
[2026-02-09 13:22:15] [INFO]   -> Set field 'dispatchNotes' = "[EMS] LIVER FAILURE  50 YOM  [02\/09\/26 07:22:09 KHILL] Event spawned from UNCONSCIOUS.  [02\/09\/2026 07:21:39 KHILL]"
[2026-02-09 13:22:15] [INFO]   -> Set field 'cADLog' = "[EMS] LIVER FAILURE  50 YOM  [02\/09\/26 07:22:09 KHILL] Event spawned from UNCONSCIOUS.  [02\/09\/2026 07:21:39 KHILL]"
[2026-02-09 13:22:15] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 13:22:15] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 13:22:15] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 13:22:15] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 13:22:15] [INFO]   -> Found value: AMBER MEADOWS
[2026-02-09 13:22:15] [INFO]   -> Set field 'streetName' = "AMBER MEADOWS"
[2026-02-09 13:22:15] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 13:22:15] [INFO]   -> Found value: RD
[2026-02-09 13:22:15] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 13:22:15] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 13:22:15] [INFO]   -> Found value: 2102 AMBER MEADOWS RD
[2026-02-09 13:22:15] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "2102 AMBER MEADOWS RD"
[2026-02-09 13:22:15] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 13:22:15] [INFO] Concatenating street name and type
[2026-02-09 13:22:15] [INFO]   -> Combined street name: AMBER MEADOWS RD
[2026-02-09 13:22:15] [INFO] Built locationCoordinates from lat/lng: 36.08376,-85.55506
[2026-02-09 13:22:15] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000388","dispatchRunNumber":"2026000388","incidentTypeValue1":"UNCONSCIOUS","incidentLocationStreetNumber":2102,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.0837599999999980582288117147982120513916015625,"nERISIncidentLongitude":-85.555059999999997444319888018071651458740234375,"alarm":"2026-02-09 07:21:39","dispatched":"2026-02-09 07:22:10","incidentLocationCross":"HOOPER BURGESS RD","cADVehicleID":"PCFR","timedispatch":"2026-02-09 07:22:10","policeReportNumber":"20260014658","dispatchNotes":"[EMS] LIVER FAILURE  50 YOM  [02\/09\/26 07:22:09 KHILL] Event spawned from UNCONSCIOUS.  [02\/09\/2026 07:21:39 KHILL]","cADLog":"[EMS] LIVER FAILURE  50 YOM  [02\/09\/26 07:22:09 KHILL] Event spawned from UNCONSCIOUS.  [02\/09\/2026 07:21:39 KHILL]","incidentLocationCity":"COOKEVILLE","streetName":"AMBER MEADOWS RD","incidentAddressTextVersionStreet":"2102 AMBER MEADOWS RD","locationCoordinates":"36.08376,-85.55506"}
[2026-02-09 13:22:15] [INFO] Number of extracted fields: 21
[2026-02-09 13:22:15] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-02-09 13:22: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-02-09 13:22:15] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-02-09 13:22:15] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 13:22:16] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 13:22:16] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-02-09 13:22: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-02-09 13:22:16] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 13:22:16] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-09 13:22:16] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 13:22:16] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 13:22:16] [INFO] Found existing IncidentTypeMapping with ID: 693976706d4f7fb2e
[2026-02-09 13:22:27] [INFO] Created new Dispatches record with ID: 6989df88de1d2fcd8
[2026-02-09 13:22:27] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 13:22:27] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 13:22:30] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 13:22:30] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014658_20260209_132215.XML: Failed to upload file to V2 FTP server: /PCFD_20260014658_20260209_132215.XML
[2026-02-09 13:22:30] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 13:56:25] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014671_20260209_135625.XML
[2026-02-09 13:56:25] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014671_20260209_135625.XML for user: 68f1466aed072ad4a
[2026-02-09 13:56:25] [INFO] File size: 5305 bytes
[2026-02-09 13:56:26] [INFO] Created FTPFiles record with ID: 6989e789f356c4d92
[2026-02-09 13:56:26] [INFO] About to extract fields from XML. File size: 5305 bytes
[2026-02-09 13:56:26] [INFO] Number of mappings: 28
[2026-02-09 13:56:26] [INFO] Starting XML parsing. Content length: 5305
[2026-02-09 13:56:26] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 13:56:26] [INFO] Processing 28 field mappings
[2026-02-09 13:56:26] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 13:56:26] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 13:56:26] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 13:56:26] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-02-09 13:56:26] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-02-09 13:56:26] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-02-09 13:56:26] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 13:56:26] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-02-09 13:56:26] [INFO]   -> Found value: 2026000389
[2026-02-09 13:56:26] [INFO]   -> Set field 'incidentInternalId' = "2026000389"
[2026-02-09 13:56:26] [INFO]   -> Set field 'dispatchRunNumber' = "2026000389"
[2026-02-09 13:56:26] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 13:56:26] [INFO]   -> Found value: CHEST PAIN
[2026-02-09 13:56:26] [INFO]   -> Set field 'incidentTypeValue1' = "CHEST PAIN"
[2026-02-09 13:56:26] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 13:56:26] [INFO]   -> Found value: 6266
[2026-02-09 13:56:26] [INFO]   -> Set field 'incidentLocationStreetNumber' = 6266
[2026-02-09 13:56:26] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 13:56:26] [INFO]   -> Found value: TN
[2026-02-09 13:56:26] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 13:56:26] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 13:56:26] [INFO]   -> Found value: 38582
[2026-02-09 13:56:26] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38582
[2026-02-09 13:56:26] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 13:56:26] [INFO]   -> Found value: 36.09311
[2026-02-09 13:56:26] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.09311000000000291265678242780268192291259765625
[2026-02-09 13:56:26] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 13:56:26] [INFO]   -> Found value: -85.75811
[2026-02-09 13:56:26] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.7581100000000020600054995156824588775634765625
[2026-02-09 13:56:26] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 13:56:26] [INFO]   -> Found value: 2026-02-09 07:55:32
[2026-02-09 13:56:26] [INFO]   -> Set field 'alarm' = "2026-02-09 07:55:32"
[2026-02-09 13:56:26] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 13:56:26] [INFO]   -> Found value: 2026-02-09 07:56:18
[2026-02-09 13:56:26] [INFO]   -> Set field 'dispatched' = "2026-02-09 07:56:18"
[2026-02-09 13:56:26] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 13:56:26] [INFO]   -> Found value: /CENTER HILL DAM RD
[2026-02-09 13:56:26] [INFO]   -> Set field 'incidentLocationCross' = "\/CENTER HILL DAM RD"
[2026-02-09 13:56:26] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 13:56:26] [INFO]   -> Found value: PCFR
[2026-02-09 13:56:26] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 13:56:26] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 13:56:26] [INFO]   -> Found value: 2026-02-09 07:56:18
[2026-02-09 13:56:26] [INFO]   -> Set field 'timedispatch' = "2026-02-09 07:56:18"
[2026-02-09 13:56:26] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 13:56:26] [INFO]   -> No value found (null or empty)
[2026-02-09 13:56:26] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 13:56:26] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 13:56:26] [INFO]   -> Found value: 20260014671
[2026-02-09 13:56:26] [INFO]   -> Set field 'policeReportNumber' = "20260014671"
[2026-02-09 13:56:26] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 13:56:26] [INFO]   -> Found value: Event spawned from CHEST PAIN.  [02/09/2026 07:55:32 KHILL]
[2026-02-09 13:56:26] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from CHEST PAIN.  [02\/09\/2026 07:55:32 KHILL]"
[2026-02-09 13:56:26] [INFO]   -> Set field 'cADLog' = "Event spawned from CHEST PAIN.  [02\/09\/2026 07:55:32 KHILL]"
[2026-02-09 13:56:26] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 13:56:26] [INFO]   -> Found value: SILVER POINT
[2026-02-09 13:56:26] [INFO]   -> Set field 'incidentLocationCity' = "SILVER POINT"
[2026-02-09 13:56:26] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 13:56:26] [INFO]   -> Found value: JOE JONES
[2026-02-09 13:56:26] [INFO]   -> Set field 'streetName' = "JOE JONES"
[2026-02-09 13:56:26] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 13:56:26] [INFO]   -> Found value: RD
[2026-02-09 13:56:26] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 13:56:26] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 13:56:26] [INFO]   -> Found value: 6266 JOE JONES RD
[2026-02-09 13:56:26] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "6266 JOE JONES RD"
[2026-02-09 13:56:26] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 13:56:26] [INFO] Concatenating street name and type
[2026-02-09 13:56:26] [INFO]   -> Combined street name: JOE JONES RD
[2026-02-09 13:56:26] [INFO] Built locationCoordinates from lat/lng: 36.09311,-85.75811
[2026-02-09 13:56:26] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000389","dispatchRunNumber":"2026000389","incidentTypeValue1":"CHEST PAIN","incidentLocationStreetNumber":6266,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38582,"nERISIncidentLatitude":36.09311000000000291265678242780268192291259765625,"nERISIncidentLongitude":-85.7581100000000020600054995156824588775634765625,"alarm":"2026-02-09 07:55:32","dispatched":"2026-02-09 07:56:18","incidentLocationCross":"\/CENTER HILL DAM RD","cADVehicleID":"PCFR","timedispatch":"2026-02-09 07:56:18","policeReportNumber":"20260014671","dispatchNotes":"Event spawned from CHEST PAIN.  [02\/09\/2026 07:55:32 KHILL]","cADLog":"Event spawned from CHEST PAIN.  [02\/09\/2026 07:55:32 KHILL]","incidentLocationCity":"SILVER POINT","streetName":"JOE JONES RD","incidentAddressTextVersionStreet":"6266 JOE JONES RD","locationCoordinates":"36.09311,-85.75811"}
[2026-02-09 13:56:26] [INFO] Number of extracted fields: 21
[2026-02-09 13:56:26] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-02-09 13:56:26] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
PCSO
RESC', Parsed IDs = ["PCFD","EMS","PCSO","RESC"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 4
[2026-02-09 13:56:26] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-02-09 13:56:26] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 13:56:26] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 13:56:26] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-02-09 13:56:26] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-09 13:56:26] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 13:56:26] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-09 13:56:26] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 13:56:26] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 13:56:26] [INFO] Found existing IncidentTypeMapping with ID: 6939c33d3eae65119
[2026-02-09 13:56:36] [INFO] Created new Dispatches record with ID: 6989e78b01357bb52
[2026-02-09 13:56:36] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 13:56:36] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 13:56:40] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 13:56:40] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014671_20260209_135625.XML: Failed to upload file to V2 FTP server: /PCFD_20260014671_20260209_135625.XML
[2026-02-09 13:56:40] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 14:15:45] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:15:45] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml for user: 69320e6a9e3e5ef71
[2026-02-09 14:15:45] [INFO] File size: 6856 bytes
[2026-02-09 14:15:46] [INFO] Created FTPFiles record with ID: 6989ec120251b81e8
[2026-02-09 14:15:46] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 14:15:46] [INFO] Created archive directory: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09
[2026-02-09 14:15:46] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008695.xml
[2026-02-09 14:15:46] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:16:26] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:16:26] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml for user: 69320e6a9e3e5ef71
[2026-02-09 14:16:26] [INFO] File size: 7940 bytes
[2026-02-09 14:16:27] [INFO] Created FTPFiles record with ID: 6989ec3b3a859dd4a
[2026-02-09 14:16:27] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 14:16:27] [INFO] File already exists in archive, using unique name: cfs_2026-008695_1770646587.xml
[2026-02-09 14:16:27] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008695_1770646587.xml
[2026-02-09 14:16:27] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:20:10] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:20:10] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml for user: 69320e6a9e3e5ef71
[2026-02-09 14:20:10] [INFO] File size: 7940 bytes
[2026-02-09 14:20:11] [INFO] Created FTPFiles record with ID: 6989ed1b2cdd94d35
[2026-02-09 14:20:11] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 14:20:11] [INFO] File already exists in archive, using unique name: cfs_2026-008695_1770646811.xml
[2026-02-09 14:20:11] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008695_1770646811.xml
[2026-02-09 14:20:11] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:20:12] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:20:12] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml for user: 69320e6a9e3e5ef71
[2026-02-09 14:20:12] [INFO] File size: 8462 bytes
[2026-02-09 14:20:12] [INFO] Created FTPFiles record with ID: 6989ed1c4af461182
[2026-02-09 14:20:12] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 14:20:12] [INFO] File already exists in archive, using unique name: cfs_2026-008695_1770646812.xml
[2026-02-09 14:20:12] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008695_1770646812.xml
[2026-02-09 14:20:12] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:20:35] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:20:35] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml for user: 69320e6a9e3e5ef71
[2026-02-09 14:20:35] [INFO] File size: 8462 bytes
[2026-02-09 14:20:35] [INFO] Created FTPFiles record with ID: 6989ed337bdaa3b9d
[2026-02-09 14:20:35] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 14:20:35] [INFO] File already exists in archive, using unique name: cfs_2026-008695_1770646835.xml
[2026-02-09 14:20:35] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008695_1770646835.xml
[2026-02-09 14:20:35] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:20:36] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 14:20:36] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml for user: 69320e6a9e3e5ef71
[2026-02-09 14:20:36] [INFO] File size: 8477 bytes
[2026-02-09 14:20:36] [INFO] Created FTPFiles record with ID: 6989ed34ab2be67a1
[2026-02-09 14:20:36] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 14:20:36] [INFO] File already exists in archive, using unique name: cfs_2026-008695_1770646836.xml
[2026-02-09 14:20:36] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008695_1770646836.xml
[2026-02-09 14:20:36] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 15:13:46] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 15:13:46] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:13:46] [INFO] File size: 10075 bytes
[2026-02-09 15:13:47] [INFO] Created FTPFiles record with ID: 6989f9ab3ee9d6f11
[2026-02-09 15:13:47] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:13:47] [INFO] File already exists in archive, using unique name: cfs_2026-008695_1770650027.xml
[2026-02-09 15:13:47] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008695_1770650027.xml
[2026-02-09 15:13:47] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008695.xml
[2026-02-09 15:26:43] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:26:43] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:26:43] [INFO] File size: 11154 bytes
[2026-02-09 15:26:43] [INFO] Created FTPFiles record with ID: 6989fcb3d39decf29
[2026-02-09 15:26:43] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:26:43] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008715.xml
[2026-02-09 15:26:43] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:27:08] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:27:08] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:27:08] [INFO] File size: 12118 bytes
[2026-02-09 15:27:08] [INFO] Created FTPFiles record with ID: 6989fcccc637f87d2
[2026-02-09 15:27:08] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:27:08] [INFO] File already exists in archive, using unique name: cfs_2026-008715_1770650828.xml
[2026-02-09 15:27:08] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008715_1770650828.xml
[2026-02-09 15:27:08] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:27:46] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:27:46] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:27:46] [INFO] File size: 13084 bytes
[2026-02-09 15:27:47] [INFO] Created FTPFiles record with ID: 6989fcf30250bc21e
[2026-02-09 15:27:47] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:27:47] [INFO] File already exists in archive, using unique name: cfs_2026-008715_1770650867.xml
[2026-02-09 15:27:47] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008715_1770650867.xml
[2026-02-09 15:27:47] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:28:58] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:28:58] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:28:58] [INFO] File size: 15322 bytes
[2026-02-09 15:28:59] [INFO] Created FTPFiles record with ID: 6989fd3b40b8dee7b
[2026-02-09 15:28:59] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:28:59] [INFO] File already exists in archive, using unique name: cfs_2026-008715_1770650939.xml
[2026-02-09 15:28:59] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008715_1770650939.xml
[2026-02-09 15:28:59] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:34:00] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:34:00] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:34:00] [INFO] File size: 18180 bytes
[2026-02-09 15:34:00] [INFO] Created FTPFiles record with ID: 6989fe685f99a3a06
[2026-02-09 15:34:00] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:34:00] [INFO] File already exists in archive, using unique name: cfs_2026-008715_1770651240.xml
[2026-02-09 15:34:00] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008715_1770651240.xml
[2026-02-09 15:34:00] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:35:39] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:35:39] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:35:39] [INFO] File size: 19151 bytes
[2026-02-09 15:35:39] [INFO] Created FTPFiles record with ID: 6989fecbb505492d4
[2026-02-09 15:35:39] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:35:39] [INFO] File already exists in archive, using unique name: cfs_2026-008715_1770651339.xml
[2026-02-09 15:35:39] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008715_1770651339.xml
[2026-02-09 15:35:39] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:35:52] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:35:52] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:35:52] [INFO] File size: 20745 bytes
[2026-02-09 15:35:52] [INFO] Created FTPFiles record with ID: 6989fed88f6bdf03e
[2026-02-09 15:35:52] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:35:52] [INFO] File already exists in archive, using unique name: cfs_2026-008715_1770651352.xml
[2026-02-09 15:35:52] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008715_1770651352.xml
[2026-02-09 15:35:52] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:35:58] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:35:58] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml for user: 69320e6a9e3e5ef71
[2026-02-09 15:35:58] [INFO] File size: 22325 bytes
[2026-02-09 15:35:58] [INFO] Created FTPFiles record with ID: 6989fedeec5fa15d6
[2026-02-09 15:35:58] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 15:35:58] [INFO] File already exists in archive, using unique name: cfs_2026-008715_1770651358.xml
[2026-02-09 15:35:58] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008715_1770651358.xml
[2026-02-09 15:35:58] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008715.xml
[2026-02-09 15:54:40] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105437832.xml
[2026-02-09 15:54:40] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105437832.xml for user: 68920395733981a47
[2026-02-09 15:54:40] [INFO] File size: 4853 bytes
[2026-02-09 15:54:40] [INFO] Created FTPFiles record with ID: 698a034082d678bc0
[2026-02-09 15:54:40] [INFO] About to extract fields from XML. File size: 4853 bytes
[2026-02-09 15:54:40] [INFO] Number of mappings: 24
[2026-02-09 15:54:40] [INFO] Starting XML parsing. Content length: 4853
[2026-02-09 15:54:40] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:54:40] [INFO] Processing 24 field mappings
[2026-02-09 15:54:40] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:54:40] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:54:40] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:54:40] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:54:40] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:54:40] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:54:40] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:54:40] [INFO]   -> Found value: 37379
[2026-02-09 15:54:40] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:54:40] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:54:40] [INFO]   -> Found value: 2028
[2026-02-09 15:54:40] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:54:40] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:54:40] [INFO]   -> Found value: POE
[2026-02-09 15:54:40] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:54:40] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:54:40] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:54:40] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:54:40] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:54:40] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:54:40] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:54:40] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:54:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:54:40] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:54:40] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:54:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:54:40] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:54:40] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:54:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:54:40] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:54:40] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:54:40] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:54:40] [INFO]   -> Found value: 35.269273
[2026-02-09 15:54:40] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:54:40] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:54:40] [INFO]   -> Found value: -85.239301
[2026-02-09 15:54:40] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:54:40] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:54:40] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:54:40] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 15:54:40] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:54:40] [INFO]   -> No value found (null or empty)
[2026-02-09 15:54:40] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:54:40] [INFO]   -> No value found (null or empty)
[2026-02-09 15:54:40] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:54:40] [INFO]   -> No value found (null or empty)
[2026-02-09 15:54:40] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:54:40] [INFO]   -> No value found (null or empty)
[2026-02-09 15:54:40] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:54:40] [INFO]   -> No value found (null or empty)
[2026-02-09 15:54:40] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:54:40] [INFO]   -> No value found (null or empty)
[2026-02-09 15:54:40] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:54:40] [INFO]   -> Found value: RD
[2026-02-09 15:54:40] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:54:40] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:54:40] [INFO]   -> No value found (null or empty)
[2026-02-09 15:54:40] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:54:40] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:54:40] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:54:40] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:54:40] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:54:40] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:54:40] [INFO] Found 2 elements for 'Comment', concatenating 2 non-empty values
[2026-02-09 15:54:40] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:54:40] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630"
[2026-02-09 15:54:40] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630"
[2026-02-09 15:54:40] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:54:40] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:54:40] [INFO]   -> Found value: MFD
[2026-02-09 15:54:40] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-02-09 15:54:40] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 15:54:40] [INFO] Concatenating street name and type
[2026-02-09 15:54:40] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:54:40] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:54:40] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":null,"policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630","cADAgencyIdentifier":"MFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:54:40] [INFO] Number of extracted fields: 20
[2026-02-09 15:54:40] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-02-09 15:54:40] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 15:54:40] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-02-09 15:54:40] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:54:40] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:54:40] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:54:40] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:54:40] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:54:41] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:55:00] [INFO] Created new Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:55:00] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:55:00] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:55:03] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:55:03] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105437832.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105437832.xml
[2026-02-09 15:55:03] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 15:55:03] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105503129.xml
[2026-02-09 15:55:03] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105503129.xml for user: 68920395733981a47
[2026-02-09 15:55:03] [INFO] File size: 4981 bytes
[2026-02-09 15:55:04] [INFO] Created FTPFiles record with ID: 698a03583da60a15a
[2026-02-09 15:55:04] [INFO] About to extract fields from XML. File size: 4981 bytes
[2026-02-09 15:55:04] [INFO] Number of mappings: 24
[2026-02-09 15:55:04] [INFO] Starting XML parsing. Content length: 4981
[2026-02-09 15:55:04] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:55:04] [INFO] Processing 24 field mappings
[2026-02-09 15:55:04] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:55:04] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:55:04] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:55:04] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:55:04] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:55:04] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:55:04] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:55:04] [INFO]   -> Found value: 37379
[2026-02-09 15:55:04] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:55:04] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:55:04] [INFO]   -> Found value: 2028
[2026-02-09 15:55:04] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:55:04] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:55:04] [INFO]   -> Found value: POE
[2026-02-09 15:55:04] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:55:04] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:55:04] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:55:04] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:55:04] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:55:04] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:55:04] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:55:04] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:55:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:55:04] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:55:04] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:55:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:55:04] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:55:04] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:55:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:55:04] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:55:04] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:55:04] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:55:04] [INFO]   -> Found value: 35.269273
[2026-02-09 15:55:04] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:55:04] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:55:04] [INFO]   -> Found value: -85.239301
[2026-02-09 15:55:04] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:55:04] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:55:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:55:04] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 15:55:04] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:55:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:04] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:55:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:04] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:55:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:04] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:55:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:04] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:55:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:04] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:55:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:04] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:55:04] [INFO]   -> Found value: RD
[2026-02-09 15:55:04] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:55:04] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:55:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:04] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:55:04] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:55:04] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:55:04] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:55:04] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:55:04] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:55:04] [INFO] Found 3 elements for 'Comment', concatenating 3 non-empty values
[2026-02-09 15:55:04] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:55:04] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:55:04] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:55:04] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:55:04] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:55:04] [INFO]   -> Found value: MFD
[2026-02-09 15:55:04] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-02-09 15:55:04] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 15:55:04] [INFO] Concatenating street name and type
[2026-02-09 15:55:04] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:55:04] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:55:04] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":null,"policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADAgencyIdentifier":"MFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:55:04] [INFO] Number of extracted fields: 20
[2026-02-09 15:55:04] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-02-09 15:55:04] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 15:55:04] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-02-09 15:55:04] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:55:04] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:55:04] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:55:04] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:55:04] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:55:04] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:55:05] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 15:55:05] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:55:05] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:55:05] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:55:08] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:55:08] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105503129.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105503129.xml
[2026-02-09 15:55:08] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 15:55:38] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105538508.xml
[2026-02-09 15:55:38] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105538508.xml for user: 68920395733981a47
[2026-02-09 15:55:38] [INFO] File size: 5235 bytes
[2026-02-09 15:55:38] [INFO] Created FTPFiles record with ID: 698a037ae9413ba5a
[2026-02-09 15:55:38] [INFO] About to extract fields from XML. File size: 5235 bytes
[2026-02-09 15:55:38] [INFO] Number of mappings: 24
[2026-02-09 15:55:38] [INFO] Starting XML parsing. Content length: 5235
[2026-02-09 15:55:38] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:55:38] [INFO] Processing 24 field mappings
[2026-02-09 15:55:38] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:55:38] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:55:38] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:55:38] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:55:38] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:55:38] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:55:38] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:55:38] [INFO]   -> Found value: 37379
[2026-02-09 15:55:38] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:55:38] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:55:38] [INFO]   -> Found value: 2028
[2026-02-09 15:55:38] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:55:38] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:55:38] [INFO]   -> Found value: POE
[2026-02-09 15:55:38] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:55:38] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:55:38] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:55:38] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:55:38] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:55:38] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:55:38] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:55:38] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:55:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:55:38] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:55:38] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:55:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:55:38] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:55:38] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:55:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:55:38] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:55:38] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:55:38] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:55:38] [INFO]   -> Found value: 35.269273
[2026-02-09 15:55:38] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:55:38] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:55:38] [INFO]   -> Found value: -85.239301
[2026-02-09 15:55:38] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:55:38] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:55:38] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:55:38] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 15:55:38] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:55:38] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:38] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:55:38] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:38] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:55:38] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:38] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:55:38] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:38] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:55:38] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:38] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:55:38] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:38] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:55:38] [INFO]   -> Found value: RD
[2026-02-09 15:55:38] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:55:38] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:55:38] [INFO]   -> No value found (null or empty)
[2026-02-09 15:55:38] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:55:38] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:55:38] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:55:38] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:55:38] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:55:38] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:55:38] [INFO] Found 4 elements for 'Comment', concatenating 4 non-empty values
[2026-02-09 15:55:38] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:55:38] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:55:38] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:55:38] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:55:38] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:55:38] [INFO]   -> Found value: MFD
[2026-02-09 15:55:38] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-02-09 15:55:38] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 15:55:38] [INFO] Concatenating street name and type
[2026-02-09 15:55:38] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:55:38] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:55:38] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":null,"policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADAgencyIdentifier":"MFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:55:38] [INFO] Number of extracted fields: 20
[2026-02-09 15:55:38] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-02-09 15:55:38] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 15:55:38] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-02-09 15:55:38] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:55:39] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:55:39] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:55:39] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:55:39] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:55:39] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:55:39] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 15:55:39] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:55:39] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:55:39] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:55:42] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:55:42] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105538508.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105538508.xml
[2026-02-09 15:55:42] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 15:56:03] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105603805.xml
[2026-02-09 15:56:03] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105603805.xml for user: 68920395733981a47
[2026-02-09 15:56:03] [INFO] File size: 5379 bytes
[2026-02-09 15:56:04] [INFO] Created FTPFiles record with ID: 698a039443b91ed68
[2026-02-09 15:56:04] [INFO] About to extract fields from XML. File size: 5379 bytes
[2026-02-09 15:56:04] [INFO] Number of mappings: 24
[2026-02-09 15:56:04] [INFO] Starting XML parsing. Content length: 5379
[2026-02-09 15:56:04] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:56:04] [INFO] Processing 24 field mappings
[2026-02-09 15:56:04] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:56:04] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:56:04] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:56:04] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:56:04] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:56:04] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:56:04] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:56:04] [INFO]   -> Found value: 37379
[2026-02-09 15:56:04] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:56:04] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:56:04] [INFO]   -> Found value: 2028
[2026-02-09 15:56:04] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:56:04] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:56:04] [INFO]   -> Found value: POE
[2026-02-09 15:56:04] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:56:04] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:56:04] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:56:04] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:56:04] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:56:04] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:56:04] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:56:04] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:56:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:04] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:56:04] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:56:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:04] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:56:04] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:56:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:04] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:56:04] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:56:04] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:56:04] [INFO]   -> Found value: 35.269273
[2026-02-09 15:56:04] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:56:04] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:56:04] [INFO]   -> Found value: -85.239301
[2026-02-09 15:56:04] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:56:04] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:56:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:04] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 15:56:04] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:56:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:04] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:56:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:04] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:56:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:04] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:56:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:04] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:56:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:04] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:56:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:04] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:56:04] [INFO]   -> Found value: RD
[2026-02-09 15:56:04] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:56:04] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:56:04] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:04] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:56:04] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:56:04] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:56:04] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:56:04] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:56:04] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:56:04] [INFO] Found 5 elements for 'Comment', concatenating 5 non-empty values
[2026-02-09 15:56:04] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:56:04] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:56:04] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:56:04] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:56:04] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:56:04] [INFO]   -> Found value: MFD
[2026-02-09 15:56:04] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-02-09 15:56:04] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 15:56:04] [INFO] Concatenating street name and type
[2026-02-09 15:56:04] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:56:04] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:56:04] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":null,"policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADAgencyIdentifier":"MFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:56:04] [INFO] Number of extracted fields: 20
[2026-02-09 15:56:04] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-02-09 15:56:04] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 15:56:04] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-02-09 15:56:04] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:56:04] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:56:04] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:56:04] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:56:04] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:56:04] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:56:05] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 15:56:05] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:56:05] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:56:05] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:56:08] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:56:08] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105603805.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105603805.xml
[2026-02-09 15:56:08] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 15:56:24] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105624087.xml
[2026-02-09 15:56:24] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105624087.xml for user: 68920395733981a47
[2026-02-09 15:56:24] [INFO] File size: 5515 bytes
[2026-02-09 15:56:24] [INFO] Created FTPFiles record with ID: 698a03a8d1e890b90
[2026-02-09 15:56:24] [INFO] About to extract fields from XML. File size: 5515 bytes
[2026-02-09 15:56:24] [INFO] Number of mappings: 24
[2026-02-09 15:56:24] [INFO] Starting XML parsing. Content length: 5515
[2026-02-09 15:56:24] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:56:24] [INFO] Processing 24 field mappings
[2026-02-09 15:56:24] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:56:24] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:56:24] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:56:24] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:56:24] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:56:24] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:56:24] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:56:24] [INFO]   -> Found value: 37379
[2026-02-09 15:56:24] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:56:24] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:56:24] [INFO]   -> Found value: 2028
[2026-02-09 15:56:24] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:56:24] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:56:24] [INFO]   -> Found value: POE
[2026-02-09 15:56:24] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:56:24] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:56:24] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:56:24] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:56:24] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:56:24] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:56:24] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:56:24] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:56:24] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:24] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:56:24] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:56:24] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:24] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:56:24] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:56:24] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:24] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:56:24] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:56:24] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:56:24] [INFO]   -> Found value: 35.269273
[2026-02-09 15:56:24] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:56:24] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:56:24] [INFO]   -> Found value: -85.239301
[2026-02-09 15:56:24] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:56:24] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:56:24] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:24] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 15:56:24] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:56:24] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:24] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:56:24] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:24] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:56:24] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:24] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:56:24] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:24] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:56:24] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:24] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:56:24] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:24] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:56:24] [INFO]   -> Found value: RD
[2026-02-09 15:56:24] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:56:24] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:56:24] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:24] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:56:24] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:56:24] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:56:24] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:56:24] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:56:24] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:56:24] [INFO] Found 6 elements for 'Comment', concatenating 6 non-empty values
[2026-02-09 15:56:24] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:56:24] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:56:24] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:56:24] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:56:24] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:56:24] [INFO]   -> Found value: MFD
[2026-02-09 15:56:24] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-02-09 15:56:24] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 15:56:24] [INFO] Concatenating street name and type
[2026-02-09 15:56:24] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:56:24] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:56:24] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":null,"policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADAgencyIdentifier":"MFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:56:24] [INFO] Number of extracted fields: 20
[2026-02-09 15:56:24] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-02-09 15:56:24] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 15:56:24] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-02-09 15:56:24] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:56:25] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:56:25] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:56:25] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:56:25] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:56:25] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:56:25] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 15:56:25] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:56:25] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:56:25] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:56:28] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:56:28] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105624087.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105624087.xml
[2026-02-09 15:56:28] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 15:56:34] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105634212.xml
[2026-02-09 15:56:34] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105634212.xml for user: 68920395733981a47
[2026-02-09 15:56:34] [INFO] File size: 5659 bytes
[2026-02-09 15:56:34] [INFO] Created FTPFiles record with ID: 698a03b2a9996dd2f
[2026-02-09 15:56:34] [INFO] About to extract fields from XML. File size: 5659 bytes
[2026-02-09 15:56:34] [INFO] Number of mappings: 24
[2026-02-09 15:56:34] [INFO] Starting XML parsing. Content length: 5659
[2026-02-09 15:56:34] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:56:34] [INFO] Processing 24 field mappings
[2026-02-09 15:56:34] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:56:34] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:56:34] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:56:34] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:56:34] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:56:34] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:56:34] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:56:34] [INFO]   -> Found value: 37379
[2026-02-09 15:56:34] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:56:34] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:56:34] [INFO]   -> Found value: 2028
[2026-02-09 15:56:34] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:56:34] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:56:34] [INFO]   -> Found value: POE
[2026-02-09 15:56:34] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:56:34] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:56:34] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:56:34] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:56:34] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:56:34] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:56:34] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:56:34] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:56:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:34] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:56:34] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:56:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:34] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:56:34] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:56:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:34] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:56:34] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:56:34] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:56:34] [INFO]   -> Found value: 35.269273
[2026-02-09 15:56:34] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:56:34] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:56:34] [INFO]   -> Found value: -85.239301
[2026-02-09 15:56:34] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:56:34] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:56:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:34] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 15:56:34] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:56:34] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:34] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:56:34] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:34] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:56:34] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:34] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:56:34] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:34] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:56:34] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:34] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:56:34] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:34] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:56:34] [INFO]   -> Found value: RD
[2026-02-09 15:56:34] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:56:34] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:56:34] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:34] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:56:34] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:56:34] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:56:34] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:56:34] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:56:34] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:56:34] [INFO] Found 7 elements for 'Comment', concatenating 7 non-empty values
[2026-02-09 15:56:34] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:56:34] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:56:34] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:56:34] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:56:34] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:56:34] [INFO]   -> Found value: MFD
[2026-02-09 15:56:34] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-02-09 15:56:34] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 15:56:34] [INFO] Concatenating street name and type
[2026-02-09 15:56:34] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:56:34] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:56:34] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":null,"policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADAgencyIdentifier":"MFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:56:34] [INFO] Number of extracted fields: 20
[2026-02-09 15:56:34] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-02-09 15:56:34] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 15:56:34] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-02-09 15:56:34] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:56:34] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:56:35] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:56:35] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:56:35] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:56:35] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:56:35] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 15:56:35] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:56:35] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:56:35] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:56:38] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:56:38] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105634212.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105634212.xml
[2026-02-09 15:56:38] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 15:56:39] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105639259.xml
[2026-02-09 15:56:39] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105639259.xml for user: 68920395733981a47
[2026-02-09 15:56:39] [INFO] File size: 5781 bytes
[2026-02-09 15:56:39] [INFO] Created FTPFiles record with ID: 698a03b7ae2b65ef4
[2026-02-09 15:56:39] [INFO] About to extract fields from XML. File size: 5781 bytes
[2026-02-09 15:56:39] [INFO] Number of mappings: 24
[2026-02-09 15:56:39] [INFO] Starting XML parsing. Content length: 5781
[2026-02-09 15:56:39] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:56:39] [INFO] Processing 24 field mappings
[2026-02-09 15:56:39] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:56:39] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:56:39] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:56:39] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:56:39] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:56:39] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:56:39] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:56:39] [INFO]   -> Found value: 37379
[2026-02-09 15:56:39] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:56:39] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:56:39] [INFO]   -> Found value: 2028
[2026-02-09 15:56:39] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:56:39] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:56:39] [INFO]   -> Found value: POE
[2026-02-09 15:56:39] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:56:39] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:56:39] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:56:39] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:56:39] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:56:39] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:56:39] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:56:39] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:56:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:39] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:56:39] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:56:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:39] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:56:39] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:56:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:39] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:56:39] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:56:39] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:56:39] [INFO]   -> Found value: 35.269273
[2026-02-09 15:56:39] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:56:39] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:56:39] [INFO]   -> Found value: -85.239301
[2026-02-09 15:56:39] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:56:39] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:56:39] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:56:39] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 15:56:39] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:56:39] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:39] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:56:39] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:39] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:56:39] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:39] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:56:39] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:39] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:56:39] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:39] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:56:39] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:39] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:56:39] [INFO]   -> Found value: RD
[2026-02-09 15:56:39] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:56:39] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:56:39] [INFO]   -> No value found (null or empty)
[2026-02-09 15:56:39] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:56:39] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:56:39] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:56:39] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:56:39] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:56:39] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:56:39] [INFO] Found 8 elements for 'Comment', concatenating 8 non-empty values
[2026-02-09 15:56:39] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:56:39] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:56:39] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:56:39] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:56:39] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:56:39] [INFO]   -> Found value: MFD
[2026-02-09 15:56:39] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-02-09 15:56:39] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 15:56:39] [INFO] Concatenating street name and type
[2026-02-09 15:56:39] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:56:39] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:56:39] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":null,"policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADAgencyIdentifier":"MFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:56:39] [INFO] Number of extracted fields: 20
[2026-02-09 15:56:39] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-02-09 15:56:39] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 15:56:39] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-02-09 15:56:39] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:56:39] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:56:40] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:56:40] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:56:40] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:56:40] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:56:40] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 15:57:10] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:57:10] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:57:10] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:57:14] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:57:14] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105639259.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105639259.xml
[2026-02-09 15:57:14] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 15:57:14] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105644294.xml
[2026-02-09 15:57:14] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105644294.xml for user: 68920395733981a47
[2026-02-09 15:57:14] [INFO] File size: 5909 bytes
[2026-02-09 15:57:14] [INFO] Created FTPFiles record with ID: 698a03daa991816f4
[2026-02-09 15:57:14] [INFO] About to extract fields from XML. File size: 5909 bytes
[2026-02-09 15:57:14] [INFO] Number of mappings: 24
[2026-02-09 15:57:14] [INFO] Starting XML parsing. Content length: 5909
[2026-02-09 15:57:14] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:57:14] [INFO] Processing 24 field mappings
[2026-02-09 15:57:14] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:57:14] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:57:14] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:57:14] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:57:14] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:57:14] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:57:14] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:57:14] [INFO]   -> Found value: 37379
[2026-02-09 15:57:14] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:57:14] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:57:14] [INFO]   -> Found value: 2028
[2026-02-09 15:57:14] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:57:14] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:57:14] [INFO]   -> Found value: POE
[2026-02-09 15:57:14] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:57:14] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:57:14] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:57:14] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:57:14] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:57:14] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:57:14] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:57:14] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:57:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:57:14] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:57:14] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:57:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:57:14] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:57:14] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:57:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:57:14] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:57:14] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:57:14] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:57:14] [INFO]   -> Found value: 35.269273
[2026-02-09 15:57:14] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:57:14] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:57:14] [INFO]   -> Found value: -85.239301
[2026-02-09 15:57:14] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:57:14] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:57:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:57:14] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 15:57:14] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:57:14] [INFO]   -> No value found (null or empty)
[2026-02-09 15:57:14] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:57:14] [INFO]   -> No value found (null or empty)
[2026-02-09 15:57:14] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:57:14] [INFO]   -> No value found (null or empty)
[2026-02-09 15:57:14] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:57:14] [INFO]   -> No value found (null or empty)
[2026-02-09 15:57:14] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:57:14] [INFO]   -> No value found (null or empty)
[2026-02-09 15:57:14] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:57:14] [INFO]   -> No value found (null or empty)
[2026-02-09 15:57:14] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:57:14] [INFO]   -> Found value: RD
[2026-02-09 15:57:14] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:57:14] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:57:14] [INFO]   -> No value found (null or empty)
[2026-02-09 15:57:14] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:57:14] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:57:14] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:57:14] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:57:14] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:57:14] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:57:14] [INFO] Found 9 elements for 'Comment', concatenating 9 non-empty values
[2026-02-09 15:57:14] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:57:14] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:57:14] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]"
[2026-02-09 15:57:14] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:57:14] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:57:14] [INFO]   -> Found value: MFD
[2026-02-09 15:57:14] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD"
[2026-02-09 15:57:14] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 15:57:14] [INFO] Concatenating street name and type
[2026-02-09 15:57:14] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:57:14] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:57:14] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":null,"policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]","cADAgencyIdentifier":"MFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:57:14] [INFO] Number of extracted fields: 20
[2026-02-09 15:57:14] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD'
[2026-02-09 15:57:14] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD', Parsed IDs = ["MFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 15:57:14] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD"]
[2026-02-09 15:57:14] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:57:14] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:57:15] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:57:15] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:57:15] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:57:15] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:57:15] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 15:57:15] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:57:15] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:57:15] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:57:18] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:57:18] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105644294.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105644294.xml
[2026-02-09 15:57:18] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 15:58:30] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105830460.xml
[2026-02-09 15:58:30] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105830460.xml for user: 68920395733981a47
[2026-02-09 15:58:30] [INFO] File size: 8987 bytes
[2026-02-09 15:58:31] [INFO] Created FTPFiles record with ID: 698a04272e1647cf9
[2026-02-09 15:58:31] [INFO] About to extract fields from XML. File size: 8987 bytes
[2026-02-09 15:58:31] [INFO] Number of mappings: 24
[2026-02-09 15:58:31] [INFO] Starting XML parsing. Content length: 8987
[2026-02-09 15:58:31] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 15:58:31] [INFO] Processing 24 field mappings
[2026-02-09 15:58:31] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 15:58:31] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 15:58:31] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 15:58:31] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 15:58:31] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 15:58:31] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 15:58:31] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 15:58:31] [INFO]   -> Found value: 37379
[2026-02-09 15:58:31] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 15:58:31] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 15:58:31] [INFO]   -> Found value: 2028
[2026-02-09 15:58:31] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 15:58:31] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 15:58:31] [INFO]   -> Found value: POE
[2026-02-09 15:58:31] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 15:58:31] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 15:58:31] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 15:58:31] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 15:58:31] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 15:58:31] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 15:58:31] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 15:58:31] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'enroute' = null
[2026-02-09 15:58:31] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 15:58:31] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'onScene' = null
[2026-02-09 15:58:31] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 15:58:31] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'cleared' = null
[2026-02-09 15:58:31] [INFO]   -> Set field 'inService' = null
[2026-02-09 15:58:31] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 15:58:31] [INFO]   -> Found value: 35.269273
[2026-02-09 15:58:31] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 15:58:31] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 15:58:31] [INFO]   -> Found value: -85.239301
[2026-02-09 15:58:31] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 15:58:31] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 15:58:31] [INFO]   -> Found value: 2026-02-09T10:58:29.753-05:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'dispatched' = "2026-02-09 15:58:29"
[2026-02-09 15:58:31] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 15:58:31] [INFO]   -> Found value: H1400
[2026-02-09 15:58:31] [INFO]   -> Set field 'cADVehicleID' = "H1400"
[2026-02-09 15:58:31] [INFO]   -> Set field 'name' = "H1400"
[2026-02-09 15:58:31] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 15:58:31] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 15:58:31] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 15:58:31] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 15:58:31] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 15:58:31] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 15:58:31] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 15:58:31] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-02-09 15:58:31] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 15:58:31] [INFO]   -> Found value: 2026-02-09T10:58:29.753-05:00
[2026-02-09 15:58:31] [INFO]   -> Set field 'timedispatch' = "2026-02-09 15:58:29"
[2026-02-09 15:58:31] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 15:58:31] [INFO]   -> Found value: RD
[2026-02-09 15:58:31] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 15:58:31] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 15:58:31] [INFO]   -> Found value: 26-000037
[2026-02-09 15:58:31] [INFO]   -> Set field 'incidentInternalId' = "26-000037"
[2026-02-09 15:58:31] [INFO]   -> Set field 'dispatchRunNumber' = "26-000037"
[2026-02-09 15:58:31] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 15:58:31] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 15:58:31] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 15:58:31] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 15:58:31] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 15:58:31] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 15:58:31] [INFO] Found 10 elements for 'Comment', concatenating 10 non-empty values
[2026-02-09 15:58:31] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 15:58:31] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]"
[2026-02-09 15:58:31] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]"
[2026-02-09 15:58:31] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 15:58:31] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 15:58:31] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 15:58:31] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-02-09 15:58:31] [INFO]   -> Found value: MFD
MFD
[2026-02-09 15:58:31] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD\nMFD"
[2026-02-09 15:58:31] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 15:58:31] [INFO] Concatenating street name and type
[2026-02-09 15:58:31] [INFO]   -> Combined street name: POE RD
[2026-02-09 15:58:31] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 15:58:31] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":"2026-02-09 15:58:29","cADVehicleID":"H1400","name":"H1400","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-02-09 15:58:29","incidentInternalId":"26-000037","dispatchRunNumber":"26-000037","policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]","cADAgencyIdentifier":"MFD\nMFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 15:58:31] [INFO] Number of extracted fields: 29
[2026-02-09 15:58:31] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD
MFD'
[2026-02-09 15:58:31] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD
MFD', Parsed IDs = ["MFD","MFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-02-09 15:58:31] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD","MFD"]
[2026-02-09 15:58:31] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 15:58:31] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 15:58:31] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["MFD"]
[2026-02-09 15:58:31] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 15:58:31] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 15:58:31] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-09 15:58:31] [INFO] Filtered cADAgencyIdentifier to: MFD
[2026-02-09 15:58:31] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 15:58:31] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 15:58:31] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 15:58:32] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 15:58:32] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 15:58:32] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 15:58:35] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 15:58:35] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209105830460.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209105830460.xml
[2026-02-09 15:58:35] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 16:00:32] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209110031847.xml
[2026-02-09 16:00:32] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209110031847.xml for user: 68920395733981a47
[2026-02-09 16:00:32] [INFO] File size: 9131 bytes
[2026-02-09 16:00:51] [INFO] Created FTPFiles record with ID: 698a04b3028855a14
[2026-02-09 16:00:51] [INFO] About to extract fields from XML. File size: 9131 bytes
[2026-02-09 16:00:51] [INFO] Number of mappings: 24
[2026-02-09 16:00:51] [INFO] Starting XML parsing. Content length: 9131
[2026-02-09 16:00:51] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 16:00:51] [INFO] Processing 24 field mappings
[2026-02-09 16:00:51] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 16:00:51] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 16:00:51] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 16:00:51] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 16:00:51] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 16:00:51] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 16:00:51] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 16:00:51] [INFO]   -> Found value: 37379
[2026-02-09 16:00:51] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 16:00:51] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 16:00:51] [INFO]   -> Found value: 2028
[2026-02-09 16:00:51] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 16:00:51] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 16:00:51] [INFO]   -> Found value: POE
[2026-02-09 16:00:51] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 16:00:51] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 16:00:51] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 16:00:51] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 16:00:51] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 16:00:51] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 16:00:51] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 16:00:51] [INFO]   -> Found value: 2026-02-09T11:00:27.487-05:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'enroute' = "2026-02-09 16:00:27"
[2026-02-09 16:00:51] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 16:00:51] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'onScene' = null
[2026-02-09 16:00:51] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 16:00:51] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'cleared' = null
[2026-02-09 16:00:51] [INFO]   -> Set field 'inService' = null
[2026-02-09 16:00:51] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 16:00:51] [INFO]   -> Found value: 35.269273
[2026-02-09 16:00:51] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 16:00:51] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 16:00:51] [INFO]   -> Found value: -85.239301
[2026-02-09 16:00:51] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 16:00:51] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 16:00:51] [INFO]   -> Found value: 2026-02-09T10:58:29.753-05:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'dispatched' = "2026-02-09 15:58:29"
[2026-02-09 16:00:51] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 16:00:51] [INFO]   -> Found value: H1400
[2026-02-09 16:00:51] [INFO]   -> Set field 'cADVehicleID' = "H1400"
[2026-02-09 16:00:51] [INFO]   -> Set field 'name' = "H1400"
[2026-02-09 16:00:51] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 16:00:51] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 16:00:51] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 16:00:51] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 16:00:51] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 16:00:51] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 16:00:51] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 16:00:51] [INFO]   -> Found value: 2026-02-09T11:00:27.487-05:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 16:00:27"
[2026-02-09 16:00:51] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 16:00:51] [INFO]   -> Found value: 2026-02-09T10:58:29.753-05:00
[2026-02-09 16:00:51] [INFO]   -> Set field 'timedispatch' = "2026-02-09 15:58:29"
[2026-02-09 16:00:51] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 16:00:51] [INFO]   -> Found value: RD
[2026-02-09 16:00:51] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 16:00:51] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 16:00:51] [INFO]   -> Found value: 26-000037
[2026-02-09 16:00:51] [INFO]   -> Set field 'incidentInternalId' = "26-000037"
[2026-02-09 16:00:51] [INFO]   -> Set field 'dispatchRunNumber' = "26-000037"
[2026-02-09 16:00:51] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 16:00:51] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 16:00:51] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 16:00:51] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 16:00:51] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 16:00:51] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 16:00:51] [INFO] Found 10 elements for 'Comment', concatenating 10 non-empty values
[2026-02-09 16:00:51] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 16:00:51] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]"
[2026-02-09 16:00:51] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]"
[2026-02-09 16:00:51] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 16:00:51] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 16:00:51] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 16:00:51] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-02-09 16:00:51] [INFO]   -> Found value: MFD
MFD
[2026-02-09 16:00:51] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD\nMFD"
[2026-02-09 16:00:51] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 16:00:51] [INFO] Concatenating street name and type
[2026-02-09 16:00:51] [INFO]   -> Combined street name: POE RD
[2026-02-09 16:00:51] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 16:00:51] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":"2026-02-09 16:00:27","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":"2026-02-09 15:58:29","cADVehicleID":"H1400","name":"H1400","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 16:00:27","timedispatch":"2026-02-09 15:58:29","incidentInternalId":"26-000037","dispatchRunNumber":"26-000037","policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]","cADAgencyIdentifier":"MFD\nMFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 16:00:51] [INFO] Number of extracted fields: 29
[2026-02-09 16:00:51] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD
MFD'
[2026-02-09 16:00:51] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD
MFD', Parsed IDs = ["MFD","MFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-02-09 16:00:51] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD","MFD"]
[2026-02-09 16:00:51] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 16:00:51] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 16:00:51] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["MFD"]
[2026-02-09 16:01:14] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 16:01:14] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 16:01:14] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-09 16:01:14] [INFO] Filtered cADAgencyIdentifier to: MFD
[2026-02-09 16:01:14] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 16:01:15] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 16:01:15] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 16:01:15] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 16:01:15] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 16:01:15] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 16:01:18] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 16:01:18] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209110031847.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209110031847.xml
[2026-02-09 16:01:18] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 16:03:55] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014729_20260209_160355.XML
[2026-02-09 16:03:55] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014729_20260209_160355.XML for user: 68f1466aed072ad4a
[2026-02-09 16:03:55] [INFO] File size: 5116 bytes
[2026-02-09 16:04:20] [INFO] Created FTPFiles record with ID: 698a0584bb49a555c
[2026-02-09 16:04:20] [INFO] About to extract fields from XML. File size: 5116 bytes
[2026-02-09 16:04:20] [INFO] Number of mappings: 28
[2026-02-09 16:04:20] [INFO] Starting XML parsing. Content length: 5116
[2026-02-09 16:04:20] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 16:04:20] [INFO] Processing 28 field mappings
[2026-02-09 16:04:20] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 16:04:20] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 16:04:20] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 16:04:20] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-02-09 16:04:20] [INFO]   -> Found value: PCFD
EMS
RESC
[2026-02-09 16:04:20] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nRESC"
[2026-02-09 16:04:20] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 16:04:20] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-02-09 16:04:20] [INFO]   -> Found value: 2026000390
[2026-02-09 16:04:20] [INFO]   -> Set field 'incidentInternalId' = "2026000390"
[2026-02-09 16:04:20] [INFO]   -> Set field 'dispatchRunNumber' = "2026000390"
[2026-02-09 16:04:20] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 16:04:20] [INFO]   -> Found value: STROKE
[2026-02-09 16:04:20] [INFO]   -> Set field 'incidentTypeValue1' = "STROKE"
[2026-02-09 16:04:20] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 16:04:20] [INFO]   -> Found value: 4520
[2026-02-09 16:04:20] [INFO]   -> Set field 'incidentLocationStreetNumber' = 4520
[2026-02-09 16:04:20] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 16:04:20] [INFO]   -> Found value: TN
[2026-02-09 16:04:20] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 16:04:20] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 16:04:20] [INFO]   -> Found value: 38506
[2026-02-09 16:04:20] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-09 16:04:20] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 16:04:20] [INFO]   -> Found value: 36.12612
[2026-02-09 16:04:20] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1261200000000002319211489520967006683349609375
[2026-02-09 16:04:20] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 16:04:20] [INFO]   -> Found value: -85.59553
[2026-02-09 16:04:20] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.59552999999999656211002729833126068115234375
[2026-02-09 16:04:20] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 16:04:20] [INFO]   -> Found value: 2026-02-09 10:03:17
[2026-02-09 16:04:20] [INFO]   -> Set field 'alarm' = "2026-02-09 10:03:17"
[2026-02-09 16:04:20] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 16:04:20] [INFO]   -> Found value: 2026-02-09 10:03:46
[2026-02-09 16:04:20] [INFO]   -> Set field 'dispatched' = "2026-02-09 10:03:46"
[2026-02-09 16:04:20] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 16:04:20] [INFO]   -> Found value: BENNETT RD/SWANN RD
[2026-02-09 16:04:20] [INFO]   -> Set field 'incidentLocationCross' = "BENNETT RD\/SWANN RD"
[2026-02-09 16:04:20] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 16:04:20] [INFO]   -> Found value: PCFR
[2026-02-09 16:04:20] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 16:04:20] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 16:04:20] [INFO]   -> Found value: 2026-02-09 10:03:46
[2026-02-09 16:04:20] [INFO]   -> Set field 'timedispatch' = "2026-02-09 10:03:46"
[2026-02-09 16:04:20] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 16:04:20] [INFO]   -> No value found (null or empty)
[2026-02-09 16:04:20] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 16:04:20] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 16:04:20] [INFO]   -> Found value: 20260014729
[2026-02-09 16:04:20] [INFO]   -> Set field 'policeReportNumber' = "20260014729"
[2026-02-09 16:04:20] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 16:04:20] [INFO]   -> Found value: Event spawned from STROKE.  [02/09/2026 10:03:17 KHILL]
[2026-02-09 16:04:20] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from STROKE.  [02\/09\/2026 10:03:17 KHILL]"
[2026-02-09 16:04:20] [INFO]   -> Set field 'cADLog' = "Event spawned from STROKE.  [02\/09\/2026 10:03:17 KHILL]"
[2026-02-09 16:04:20] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 16:04:20] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 16:04:20] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 16:04:20] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 16:04:20] [INFO]   -> Found value: BOB GENTRY
[2026-02-09 16:04:20] [INFO]   -> Set field 'streetName' = "BOB GENTRY"
[2026-02-09 16:04:20] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 16:04:20] [INFO]   -> Found value: RD
[2026-02-09 16:04:20] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 16:04:20] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 16:04:20] [INFO]   -> Found value: 4520 BOB GENTRY RD
[2026-02-09 16:04:20] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "4520 BOB GENTRY RD"
[2026-02-09 16:04:20] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 16:04:20] [INFO] Concatenating street name and type
[2026-02-09 16:04:20] [INFO]   -> Combined street name: BOB GENTRY RD
[2026-02-09 16:04:20] [INFO] Built locationCoordinates from lat/lng: 36.12612,-85.59553
[2026-02-09 16:04:20] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nRESC","incidentInternalId":"2026000390","dispatchRunNumber":"2026000390","incidentTypeValue1":"STROKE","incidentLocationStreetNumber":4520,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.1261200000000002319211489520967006683349609375,"nERISIncidentLongitude":-85.59552999999999656211002729833126068115234375,"alarm":"2026-02-09 10:03:17","dispatched":"2026-02-09 10:03:46","incidentLocationCross":"BENNETT RD\/SWANN RD","cADVehicleID":"PCFR","timedispatch":"2026-02-09 10:03:46","policeReportNumber":"20260014729","dispatchNotes":"Event spawned from STROKE.  [02\/09\/2026 10:03:17 KHILL]","cADLog":"Event spawned from STROKE.  [02\/09\/2026 10:03:17 KHILL]","incidentLocationCity":"COOKEVILLE","streetName":"BOB GENTRY RD","incidentAddressTextVersionStreet":"4520 BOB GENTRY RD","locationCoordinates":"36.12612,-85.59553"}
[2026-02-09 16:04:20] [INFO] Number of extracted fields: 21
[2026-02-09 16:04:20] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
RESC'
[2026-02-09 16:04:20] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
EMS
RESC', Parsed IDs = ["PCFD","EMS","RESC"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 4
[2026-02-09 16:04:20] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","RESC"]
[2026-02-09 16:04:20] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 16:04:21] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 16:04:21] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","RESC"]
[2026-02-09 16:04:21] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-09 16:04:21] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 16:04:21] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-02-09 16:04:21] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 16:04:21] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 16:04:21] [INFO] Found existing IncidentTypeMapping with ID: 69458359c1b866667
[2026-02-09 16:04:31] [INFO] Created new Dispatches record with ID: 698a0585d8010fb7c
[2026-02-09 16:04:31] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 16:04:31] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 16:04:34] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 16:04:34] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014729_20260209_160355.XML: Failed to upload file to V2 FTP server: /PCFD_20260014729_20260209_160355.XML
[2026-02-09 16:04:34] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 16:04:34] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209110404586.xml
[2026-02-09 16:04:34] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209110404586.xml for user: 68920395733981a47
[2026-02-09 16:04:34] [INFO] File size: 9659 bytes
[2026-02-09 16:04:35] [INFO] Created FTPFiles record with ID: 698a0593c0dd47576
[2026-02-09 16:04:35] [INFO] About to extract fields from XML. File size: 9659 bytes
[2026-02-09 16:04:35] [INFO] Number of mappings: 24
[2026-02-09 16:04:35] [INFO] Starting XML parsing. Content length: 9659
[2026-02-09 16:04:35] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 16:04:35] [INFO] Processing 24 field mappings
[2026-02-09 16:04:35] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 16:04:35] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 16:04:35] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 16:04:35] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 16:04:35] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 16:04:35] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 16:04:35] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 16:04:35] [INFO]   -> Found value: 37379
[2026-02-09 16:04:35] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 16:04:35] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 16:04:35] [INFO]   -> Found value: 2028
[2026-02-09 16:04:35] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 16:04:35] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 16:04:35] [INFO]   -> Found value: POE
[2026-02-09 16:04:35] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 16:04:35] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 16:04:35] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 16:04:35] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 16:04:35] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 16:04:35] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 16:04:35] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 16:04:35] [INFO]   -> Found value: 2026-02-09T11:00:27.487-05:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'enroute' = "2026-02-09 16:00:27"
[2026-02-09 16:04:35] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 16:04:35] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'onScene' = null
[2026-02-09 16:04:35] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 16:04:35] [INFO]   -> Found value: 2026-02-09T11:04:03.783-05:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'cleared' = "2026-02-09 16:04:03"
[2026-02-09 16:04:35] [INFO]   -> Set field 'inService' = "2026-02-09 16:04:03"
[2026-02-09 16:04:35] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 16:04:35] [INFO]   -> Found value: 35.269273
[2026-02-09 16:04:35] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 16:04:35] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 16:04:35] [INFO]   -> Found value: -85.239301
[2026-02-09 16:04:35] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 16:04:35] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 16:04:35] [INFO]   -> Found value: 2026-02-09T10:58:29.753-05:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'dispatched' = "2026-02-09 15:58:29"
[2026-02-09 16:04:35] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 16:04:35] [INFO]   -> Found value: H1400
[2026-02-09 16:04:35] [INFO]   -> Set field 'cADVehicleID' = "H1400"
[2026-02-09 16:04:35] [INFO]   -> Set field 'name' = "H1400"
[2026-02-09 16:04:35] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 16:04:35] [INFO]   -> Found value: 2026-02-09T11:04:03.783-05:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'timeunitclear' = "2026-02-09 16:04:03"
[2026-02-09 16:04:35] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 16:04:35] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 16:04:35] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 16:04:35] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 16:04:35] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 16:04:35] [INFO]   -> Found value: 2026-02-09T11:00:27.487-05:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 16:00:27"
[2026-02-09 16:04:35] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 16:04:35] [INFO]   -> Found value: 2026-02-09T10:58:29.753-05:00
[2026-02-09 16:04:35] [INFO]   -> Set field 'timedispatch' = "2026-02-09 15:58:29"
[2026-02-09 16:04:35] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 16:04:35] [INFO]   -> Found value: RD
[2026-02-09 16:04:35] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 16:04:35] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 16:04:35] [INFO]   -> Found value: 26-000037
[2026-02-09 16:04:35] [INFO]   -> Set field 'incidentInternalId' = "26-000037"
[2026-02-09 16:04:35] [INFO]   -> Set field 'dispatchRunNumber' = "26-000037"
[2026-02-09 16:04:35] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 16:04:35] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 16:04:35] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 16:04:35] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 16:04:35] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 16:04:35] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 16:04:35] [INFO] Found 10 elements for 'Comment', concatenating 10 non-empty values
[2026-02-09 16:04:35] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 16:04:35] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]"
[2026-02-09 16:04:35] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]"
[2026-02-09 16:04:35] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 16:04:35] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 16:04:35] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 16:04:35] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-02-09 16:04:35] [INFO]   -> Found value: MFD
MFD
[2026-02-09 16:04:35] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD\nMFD"
[2026-02-09 16:04:35] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 16:04:35] [INFO] Concatenating street name and type
[2026-02-09 16:04:35] [INFO]   -> Combined street name: POE RD
[2026-02-09 16:04:35] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 16:04:35] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":"2026-02-09 16:00:27","onScene":null,"cleared":"2026-02-09 16:04:03","inService":"2026-02-09 16:04:03","nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":"2026-02-09 15:58:29","cADVehicleID":"H1400","name":"H1400","timeunitclear":"2026-02-09 16:04:03","timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 16:00:27","timedispatch":"2026-02-09 15:58:29","incidentInternalId":"26-000037","dispatchRunNumber":"26-000037","policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]","cADAgencyIdentifier":"MFD\nMFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 16:04:35] [INFO] Number of extracted fields: 29
[2026-02-09 16:04:35] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD
MFD'
[2026-02-09 16:04:35] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD
MFD', Parsed IDs = ["MFD","MFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-02-09 16:04:35] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD","MFD"]
[2026-02-09 16:04:35] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 16:04:36] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 16:04:36] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["MFD"]
[2026-02-09 16:04:50] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 16:04:50] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 16:04:50] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-09 16:04:50] [INFO] Filtered cADAgencyIdentifier to: MFD
[2026-02-09 16:04:50] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 16:04:50] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 16:05:05] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 16:05:15] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 16:05:15] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 16:05:15] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 16:05:19] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 16:05:19] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209110404586.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209110404586.xml
[2026-02-09 16:05:19] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 16:21:43] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209112141241.xml
[2026-02-09 16:21:43] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209112141241.xml for user: 68920395733981a47
[2026-02-09 16:21:43] [INFO] File size: 9774 bytes
[2026-02-09 16:21:44] [INFO] Created FTPFiles record with ID: 698a0997f14cf7f37
[2026-02-09 16:21:44] [INFO] About to extract fields from XML. File size: 9774 bytes
[2026-02-09 16:21:44] [INFO] Number of mappings: 24
[2026-02-09 16:21:44] [INFO] Starting XML parsing. Content length: 9774
[2026-02-09 16:21:44] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 16:21:44] [INFO] Processing 24 field mappings
[2026-02-09 16:21:44] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 16:21:44] [INFO]   -> Found value: ALAMED-Alarm Medical
[2026-02-09 16:21:44] [INFO]   -> Set field 'incidentTypeValue1' = "ALAMED-Alarm Medical"
[2026-02-09 16:21:44] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 16:21:44] [INFO]   -> Found value: 2028 POE RD
[2026-02-09 16:21:44] [INFO]   -> Set field 'businessName' = "2028 POE RD"
[2026-02-09 16:21:44] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 16:21:44] [INFO]   -> Found value: 37379
[2026-02-09 16:21:44] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 16:21:44] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 16:21:44] [INFO]   -> Found value: 2028
[2026-02-09 16:21:44] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2028
[2026-02-09 16:21:44] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 16:21:44] [INFO]   -> Found value: POE
[2026-02-09 16:21:44] [INFO]   -> Set field 'streetName' = "POE"
[2026-02-09 16:21:44] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 16:21:44] [INFO]   -> Found value: MOONLIGHT TRL/LEWIS RD
[2026-02-09 16:21:44] [INFO]   -> Set field 'incidentLocationCross' = "MOONLIGHT TRL\/LEWIS RD"
[2026-02-09 16:21:44] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 16:21:44] [INFO]   -> Found value: 2026-02-09T10:54:34.367-05:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'alarm' = "2026-02-09 15:54:34"
[2026-02-09 16:21:44] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 16:21:44] [INFO]   -> Found value: 2026-02-09T11:00:27.487-05:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'enroute' = "2026-02-09 16:00:27"
[2026-02-09 16:21:44] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 16:21:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'onScene' = null
[2026-02-09 16:21:44] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 16:21:44] [INFO]   -> Found value: 2026-02-09T11:04:03.783-05:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'cleared' = "2026-02-09 16:04:03"
[2026-02-09 16:21:44] [INFO]   -> Set field 'inService' = "2026-02-09 16:04:03"
[2026-02-09 16:21:44] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 16:21:44] [INFO]   -> Found value: 35.269273
[2026-02-09 16:21:44] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.2692729999999983192537911236286163330078125
[2026-02-09 16:21:44] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 16:21:44] [INFO]   -> Found value: -85.239301
[2026-02-09 16:21:44] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.2393009999999975434548105113208293914794921875
[2026-02-09 16:21:44] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 16:21:44] [INFO]   -> Found value: 2026-02-09T10:58:29.753-05:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'dispatched' = "2026-02-09 15:58:29"
[2026-02-09 16:21:44] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 16:21:44] [INFO]   -> Found value: H1400
[2026-02-09 16:21:44] [INFO]   -> Set field 'cADVehicleID' = "H1400"
[2026-02-09 16:21:44] [INFO]   -> Set field 'name' = "H1400"
[2026-02-09 16:21:44] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 16:21:44] [INFO]   -> Found value: 2026-02-09T11:04:03.783-05:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'timeunitclear' = "2026-02-09 16:04:03"
[2026-02-09 16:21:44] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 16:21:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 16:21:44] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 16:21:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 16:21:44] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 16:21:44] [INFO]   -> Found value: 2026-02-09T11:00:27.487-05:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 16:00:27"
[2026-02-09 16:21:44] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 16:21:44] [INFO]   -> Found value: 2026-02-09T10:58:29.753-05:00
[2026-02-09 16:21:44] [INFO]   -> Set field 'timedispatch' = "2026-02-09 15:58:29"
[2026-02-09 16:21:44] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 16:21:44] [INFO]   -> Found value: RD
[2026-02-09 16:21:44] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 16:21:44] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 16:21:44] [INFO]   -> Found value: 26-000037
[2026-02-09 16:21:44] [INFO]   -> Set field 'incidentInternalId' = "26-000037"
[2026-02-09 16:21:44] [INFO]   -> Set field 'dispatchRunNumber' = "26-000037"
[2026-02-09 16:21:44] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 16:21:44] [INFO]   -> Found value: 2026-02-11631
[2026-02-09 16:21:44] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11631"
[2026-02-09 16:21:44] [INFO]   -> Set field 'cADNumber' = "2026-02-11631"
[2026-02-09 16:21:44] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 16:21:44] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 16:21:44] [INFO] Found 11 elements for 'Comment', concatenating 11 non-empty values
[2026-02-09 16:21:44] [INFO]   -> Found value: 02/09/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]
02/09/2026 ...
[2026-02-09 16:21:44] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]\n02\/09\/2026 11:21:36 LUSARDO_D               [11] [EMS] has closed their incident [2026-02-11630]"
[2026-02-09 16:21:44] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]\n02\/09\/2026 11:21:36 LUSARDO_D               [11] [EMS] has closed their incident [2026-02-11630]"
[2026-02-09 16:21:44] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 16:21:44] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 16:21:44] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 16:21:44] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-02-09 16:21:44] [INFO]   -> Found value: MFD
MFD
[2026-02-09 16:21:44] [INFO]   -> Set field 'cADAgencyIdentifier' = "MFD\nMFD"
[2026-02-09 16:21:44] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 16:21:44] [INFO] Concatenating street name and type
[2026-02-09 16:21:44] [INFO]   -> Combined street name: POE RD
[2026-02-09 16:21:44] [INFO] Built locationCoordinates from lat/lng: 35.269273,-85.239301
[2026-02-09 16:21:44] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"ALAMED-Alarm Medical","businessName":"2028 POE RD","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":2028,"streetName":"POE RD","incidentLocationCross":"MOONLIGHT TRL\/LEWIS RD","alarm":"2026-02-09 15:54:34","enroute":"2026-02-09 16:00:27","onScene":null,"cleared":"2026-02-09 16:04:03","inService":"2026-02-09 16:04:03","nERISIncidentLatitude":35.2692729999999983192537911236286163330078125,"nERISIncidentLongitude":-85.2393009999999975434548105113208293914794921875,"dispatched":"2026-02-09 15:58:29","cADVehicleID":"H1400","name":"H1400","timeunitclear":"2026-02-09 16:04:03","timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 16:00:27","timedispatch":"2026-02-09 15:58:29","incidentInternalId":"26-000037","dispatchRunNumber":"26-000037","policeReportNumber":"2026-02-11631","cADNumber":"2026-02-11631","dispatchNotes":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]\n02\/09\/2026 11:21:36 LUSARDO_D               [11] [EMS] has closed their incident [2026-02-11630]","cADLog":"02\/09\/2026 10:54:34 EMERSON_N               [1] Incident linked to [EMS] [2026-02-11630]\n02\/09\/2026 10:54:34 EMERSON_N               [2] Multi-Jurisdiction EMS Incident #: 2026-02-11630\n02\/09\/2026 10:55:03 EMERSON_N               [3] 256-412-2125 [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:55:36 APP01                   [4] Requested Case Number(s) issued for Incident #[2026-02-11630], Jurisdiction: Hamilton Co EMS. Case Number(s): 26-005256. requested by M08. [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:02 MITCHUM_C               [5] M08 FROM 27\/MORRISON SPRINGS [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:20 EMERSON_N               [6] ALARM FROM BASE UNIT [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:33 EMERSON_N               [7] ALARM CO HAS NO FURTHER INFO [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:34 EMERSON_N               [8] NO AGE [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:56:41 EMERSON_N               [9] NO KEY INFO  [Shared 1, 2026-02-11630 - ALAMED - 2028 POE RD]\n02\/09\/2026 10:58:29 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11631], Jurisdiction: Mowbray VFD. Case Number(s): 26-000037 requested by H1400. [Shared]\n02\/09\/2026 11:21:36 LUSARDO_D               [11] [EMS] has closed their incident [2026-02-11630]","cADAgencyIdentifier":"MFD\nMFD","locationCoordinates":"35.269273,-85.239301"}
[2026-02-09 16:21:44] [INFO] Number of extracted fields: 29
[2026-02-09 16:21:44] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'MFD
MFD'
[2026-02-09 16:21:44] [INFO] Multi-agency routing check: CAD Agency ID raw = 'MFD
MFD', Parsed IDs = ["MFD","MFD"], Non-empty count = 2, Total agency count = 2, Assigned Agencies count = 2
[2026-02-09 16:21:44] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["MFD","MFD"]
[2026-02-09 16:21:44] [INFO] Attempting SAASClient lookup for AgencyCode 'MFD' (index 0) within mailbox's assigned agencies
[2026-02-09 16:21:44] [INFO] SUCCESS: Routed to agency 'Mowbray Volunteer Fire Department' (ID: 681942a25bc58c3ab) at INDEX 0 based on AgencyCode 'MFD'
[2026-02-09 16:21:44] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["MFD"]
[2026-02-09 16:21:54] [INFO] Fetched 1 stations from Stations module for agency 'Mowbray Volunteer Fire Department': ["6819761cc9478253f"]
[2026-02-09 16:21:54] [INFO] Final routing: saasclientId = 681942a25bc58c3ab, dispatchStationsIds = ["6819761cc9478253f"], matchedAgencyIndex = 0
[2026-02-09 16:21:54] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-09 16:21:54] [INFO] Filtered cADAgencyIdentifier to: MFD
[2026-02-09 16:21:54] [INFO] Multi-agency routing matched mailbox default agency: 681942a25bc58c3ab (no update needed)
[2026-02-09 16:21:54] [INFO] Found existing IncidentTypeMapping with ID: 68de8ad2d4ae0614a
[2026-02-09 16:21:55] [INFO] Found existing Dispatch with cADNumber '2026-02-11631', ID: 698a034c86818f8bd - will update instead of create
[2026-02-09 16:21:55] [INFO] Updated existing Dispatches record with ID: 698a034c86818f8bd
[2026-02-09 16:21:55] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 16:21:55] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 16:21:58] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 16:21:58] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11631_20260209112141241.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11631_20260209112141241.xml
[2026-02-09 16:21:58] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 16:25:56] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04128.xml
[2026-02-09 16:25:56] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04128.xml for user: 68d56363ec1209189
[2026-02-09 16:25:56] [INFO] File size: 2291 bytes
[2026-02-09 16:25:57] [INFO] Created FTPFiles record with ID: 698a0a9515d82c638
[2026-02-09 16:25:57] [INFO] About to extract fields from XML. File size: 2291 bytes
[2026-02-09 16:25:57] [INFO] Number of mappings: 21
[2026-02-09 16:25:57] [INFO] Starting XML parsing. Content length: 2291
[2026-02-09 16:25:57] [INFO] XML parsed successfully. Root element: Incident
[2026-02-09 16:25:57] [INFO] Processing 21 field mappings
[2026-02-09 16:25:57] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-09 16:25:57] [INFO]   -> Found value: 26-04128
[2026-02-09 16:25:57] [INFO]   -> Set field 'dispatchRunNumber' = "26-04128"
[2026-02-09 16:25:57] [INFO]   -> Set field 'cADNumber' = "26-04128"
[2026-02-09 16:25:57] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-09 16:25:57] [INFO]   -> Found value: 103
[2026-02-09 16:25:57] [INFO]   -> Set field 'incidentLocationStreetNumber' = 103
[2026-02-09 16:25:57] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-09 16:25:57] [INFO]   -> Found value: E KATHLEEN ST
[2026-02-09 16:25:57] [INFO]   -> Set field 'streetName' = "E KATHLEEN ST"
[2026-02-09 16:25:57] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-09 16:25:57] [INFO]   -> No value found (null or empty)
[2026-02-09 16:25:57] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-09 16:25:57] [INFO]   -> Found value: SIKESTON
[2026-02-09 16:25:57] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-02-09 16:25:57] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-09 16:25:57] [INFO]   -> Found value: CHRISTIAN ACADEMY
[2026-02-09 16:25:57] [INFO]   -> Set field 'businessName' = "CHRISTIAN ACADEMY"
[2026-02-09 16:25:57] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-09 16:25:57] [INFO]   -> Found value: MO
[2026-02-09 16:25:57] [INFO]   -> Set field 'incidentLocationStateName' = "MO"
[2026-02-09 16:25:57] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-09 16:25:57] [INFO]   -> Found value: 63801
[2026-02-09 16:25:57] [INFO]   -> Set field 'nERISIncidentPostalCode' = 63801
[2026-02-09 16:25:57] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-09 16:25:57] [INFO]   -> Found value: 0
[2026-02-09 16:25:57] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-09 16:25:57] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-09 16:25:57] [INFO]   -> Found value: 0
[2026-02-09 16:25:57] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-09 16:25:57] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-09 16:25:57] [INFO]   -> Found value: FIRE-ALARM MECH
[2026-02-09 16:25:57] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-ALARM MECH"
[2026-02-09 16:25:57] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-09 16:25:57] [INFO]   -> Found value: 02-09-2026 10:20:08|ZONE 1 DOWNSTAIRS FIRE ALARM PULL STATION 02-09-2026 10:23:56|ESI COMM REQESTING...
[2026-02-09 16:25:57] [INFO]   -> Set field 'dispatchNotes' = "02-09-2026 10:20:08|ZONE 1 DOWNSTAIRS FIRE ALARM PULL STATION 02-09-2026 10:23:56|ESI COMM REQESTING CANCEL MADE CONTACT WITH KEY HOLDER EVERY THING IS OK AND IT WAS ACCIDENTAL 02-09-2026 10:24:58|ALL UNITS COPY"
[2026-02-09 16:25:57] [INFO]   -> Set field 'cADLog' = "02-09-2026 10:20:08|ZONE 1 DOWNSTAIRS FIRE ALARM PULL STATION 02-09-2026 10:23:56|ESI COMM REQESTING CANCEL MADE CONTACT WITH KEY HOLDER EVERY THING IS OK AND IT WAS ACCIDENTAL 02-09-2026 10:24:58|ALL UNITS COPY"
[2026-02-09 16:25:57] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-09 16:25:57] [INFO]   -> Found value: 02-09-2026T10:21:13
[2026-02-09 16:25:57] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T10:21:13
[2026-02-09 16:25:57] [INFO]   -> Set field 'alarm' = "2026-09-02 10:21:13"
[2026-02-09 16:25:57] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T10:21:13
[2026-02-09 16:25:57] [INFO]   -> Set field 'dispatched' = "2026-09-02 10:21:13"
[2026-02-09 16:25:57] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-09 16:25:57] [INFO]   -> No value found (null or empty)
[2026-02-09 16:25:57] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-09 16:25:57] [INFO]   -> No value found (null or empty)
[2026-02-09 16:25:57] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-09 16:25:57] [INFO]   -> Found value: ENG2
[2026-02-09 16:25:57] [INFO]   -> Set field 'cADVehicleID' = "ENG2"
[2026-02-09 16:25:57] [INFO]   -> Set field 'name' = "ENG2"
[2026-02-09 16:25:57] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-09 16:25:57] [INFO]   -> Found value: 02-09-2026T10:23:34
[2026-02-09 16:25:57] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T10:23:34
[2026-02-09 16:25:57] [INFO]   -> Set field 'timeenroutetoscene' = "2026-09-02 10:23:34"
[2026-02-09 16:25:57] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-09 16:25:57] [INFO]   -> No value found (null or empty)
[2026-02-09 16:25:57] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-09 16:25:57] [INFO]   -> Found value: 02-09-2026T10:25:05
[2026-02-09 16:25:57] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T10:25:05
[2026-02-09 16:25:57] [INFO]   -> Set field 'timeunitclear' = "2026-09-02 10:25:05"
[2026-02-09 16:25:57] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-09 16:25:57] [INFO]   -> No value found (null or empty)
[2026-02-09 16:25:57] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-09 16:25:57] [INFO]   -> Found value: SDPSFD
[2026-02-09 16:25:57] [INFO]   -> Set field 'cADAgencyIdentifier' = "SDPSFD"
[2026-02-09 16:25:57] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 16:25:57] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-09 16:25:57] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-04128","cADNumber":"26-04128","incidentLocationStreetNumber":103,"streetName":"E KATHLEEN ST","incidentLocationCity":"SIKESTON","businessName":"CHRISTIAN ACADEMY","incidentLocationStateName":"MO","nERISIncidentPostalCode":63801,"nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"FIRE-ALARM MECH","dispatchNotes":"02-09-2026 10:20:08|ZONE 1 DOWNSTAIRS FIRE ALARM PULL STATION 02-09-2026 10:23:56|ESI COMM REQESTING CANCEL MADE CONTACT WITH KEY HOLDER EVERY THING IS OK AND IT WAS ACCIDENTAL 02-09-2026 10:24:58|ALL UNITS COPY","cADLog":"02-09-2026 10:20:08|ZONE 1 DOWNSTAIRS FIRE ALARM PULL STATION 02-09-2026 10:23:56|ESI COMM REQESTING CANCEL MADE CONTACT WITH KEY HOLDER EVERY THING IS OK AND IT WAS ACCIDENTAL 02-09-2026 10:24:58|ALL UNITS COPY","alarm":"2026-09-02 10:21:13","dispatched":"2026-09-02 10:21:13","cADVehicleID":"ENG2","name":"ENG2","timeenroutetoscene":"2026-09-02 10:23:34","timeunitclear":"2026-09-02 10:25:05","cADAgencyIdentifier":"SDPSFD","locationCoordinates":"0,0"}
[2026-02-09 16:25:57] [INFO] Number of extracted fields: 21
[2026-02-09 16:25:57] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SDPSFD'
[2026-02-09 16:25:57] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SDPSFD', Parsed IDs = ["SDPSFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 16:25:57] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SDPSFD"]
[2026-02-09 16:25:57] [INFO] Attempting SAASClient lookup for AgencyCode 'SDPSFD' (index 0) within mailbox's assigned agencies
[2026-02-09 16:25:57] [INFO] SUCCESS: Routed to agency 'Sikeston DPS' (ID: 6772cab7157b2ebde) at INDEX 0 based on AgencyCode 'SDPSFD'
[2026-02-09 16:25:57] [INFO] Fetched 4 stations from Stations module for agency 'Sikeston DPS': ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"]
[2026-02-09 16:25:57] [INFO] Final routing: saasclientId = 6772cab7157b2ebde, dispatchStationsIds = ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"], matchedAgencyIndex = 0
[2026-02-09 16:25:57] [INFO] Multi-agency routing matched mailbox default agency: 6772cab7157b2ebde (no update needed)
[2026-02-09 16:25:57] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e872e5ae13
[2026-02-09 16:25:59] [INFO] Created new Dispatches record with ID: 698a0a9628c1ae42e
[2026-02-09 16:25:59] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04128.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-09/SDPSFD_26-04128.xml
[2026-02-09 16:25:59] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04128.xml
[2026-02-09 16:51:16] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014755_20260209_165116.XML
[2026-02-09 16:51:16] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014755_20260209_165116.XML for user: 68f1466aed072ad4a
[2026-02-09 16:51:16] [INFO] File size: 5534 bytes
[2026-02-09 16:51:16] [INFO] Created FTPFiles record with ID: 698a1084809bcd6d8
[2026-02-09 16:51:16] [INFO] About to extract fields from XML. File size: 5534 bytes
[2026-02-09 16:51:16] [INFO] Number of mappings: 28
[2026-02-09 16:51:16] [INFO] Starting XML parsing. Content length: 5534
[2026-02-09 16:51:16] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 16:51:16] [INFO] Processing 28 field mappings
[2026-02-09 16:51:16] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 16:51:16] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 16:51:16] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 16:51:16] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-02-09 16:51:16] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-02-09 16:51:16] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-02-09 16:51:16] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 16:51:16] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-02-09 16:51:16] [INFO]   -> Found value: 2026000391
[2026-02-09 16:51:16] [INFO]   -> Set field 'incidentInternalId' = "2026000391"
[2026-02-09 16:51:16] [INFO]   -> Set field 'dispatchRunNumber' = "2026000391"
[2026-02-09 16:51:16] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 16:51:16] [INFO]   -> Found value: CHEST PAIN
[2026-02-09 16:51:16] [INFO]   -> Set field 'incidentTypeValue1' = "CHEST PAIN"
[2026-02-09 16:51:16] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 16:51:16] [INFO]   -> Found value: 4301
[2026-02-09 16:51:16] [INFO]   -> Set field 'incidentLocationStreetNumber' = 4301
[2026-02-09 16:51:16] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 16:51:16] [INFO]   -> Found value: TN
[2026-02-09 16:51:16] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 16:51:16] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 16:51:16] [INFO]   -> Found value: 38501
[2026-02-09 16:51:16] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-02-09 16:51:16] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 16:51:16] [INFO]   -> Found value: 36.22672
[2026-02-09 16:51:16] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.2267200000000002546585164964199066162109375
[2026-02-09 16:51:16] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 16:51:16] [INFO]   -> Found value: -85.52338
[2026-02-09 16:51:16] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.523380000000003064997144974768161773681640625
[2026-02-09 16:51:16] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 16:51:16] [INFO]   -> Found value: 2026-02-09 10:50:30
[2026-02-09 16:51:16] [INFO]   -> Set field 'alarm' = "2026-02-09 10:50:30"
[2026-02-09 16:51:16] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 16:51:16] [INFO]   -> Found value: 2026-02-09 10:51:12
[2026-02-09 16:51:16] [INFO]   -> Set field 'dispatched' = "2026-02-09 10:51:12"
[2026-02-09 16:51:16] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 16:51:16] [INFO]   -> Found value: DAVE HUDDLESTON RD/N PINE HILL RD
[2026-02-09 16:51:16] [INFO]   -> Set field 'incidentLocationCross' = "DAVE HUDDLESTON RD\/N PINE HILL RD"
[2026-02-09 16:51:16] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 16:51:16] [INFO]   -> Found value: PCFR
[2026-02-09 16:51:16] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 16:51:16] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 16:51:16] [INFO]   -> Found value: 2026-02-09 10:51:12
[2026-02-09 16:51:16] [INFO]   -> Set field 'timedispatch' = "2026-02-09 10:51:12"
[2026-02-09 16:51:16] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 16:51:16] [INFO]   -> No value found (null or empty)
[2026-02-09 16:51:16] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 16:51:16] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 16:51:16] [INFO]   -> Found value: 20260014755
[2026-02-09 16:51:16] [INFO]   -> Set field 'policeReportNumber' = "20260014755"
[2026-02-09 16:51:16] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 16:51:16] [INFO]   -> Found value: [EMS] POSSIBLE PNEUMONIA   HAD CABG SURGERY ON LAST TUESDAY  [02/09/26 10:51:06 KHILL] Event spawned...
[2026-02-09 16:51:16] [INFO]   -> Set field 'dispatchNotes' = "[EMS] POSSIBLE PNEUMONIA   HAD CABG SURGERY ON LAST TUESDAY  [02\/09\/26 10:51:06 KHILL] Event spawned from CHEST PAIN.  [02\/09\/2026 10:50:30 KHILL] LARRY FORD  DOB 03\/04\/1953 POST CABG CHEST PAIN RELIEVED WITH 1 NITRO O2 70S-80S LUNGS ARE DIMINSHED  [02\/09\/26 10:50:26 KHILL]]"
[2026-02-09 16:51:16] [INFO]   -> Set field 'cADLog' = "[EMS] POSSIBLE PNEUMONIA   HAD CABG SURGERY ON LAST TUESDAY  [02\/09\/26 10:51:06 KHILL] Event spawned from CHEST PAIN.  [02\/09\/2026 10:50:30 KHILL] LARRY FORD  DOB 03\/04\/1953 POST CABG CHEST PAIN RELIEVED WITH 1 NITRO O2 70S-80S LUNGS ARE DIMINSHED  [02\/09\/26 10:50:26 KHILL]]"
[2026-02-09 16:51:16] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 16:51:16] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 16:51:16] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 16:51:16] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 16:51:16] [INFO]   -> Found value: KUYKENDALL
[2026-02-09 16:51:16] [INFO]   -> Set field 'streetName' = "KUYKENDALL"
[2026-02-09 16:51:16] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 16:51:16] [INFO]   -> Found value: RD
[2026-02-09 16:51:16] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 16:51:16] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 16:51:16] [INFO]   -> Found value: 4301 KUYKENDALL RD
[2026-02-09 16:51:16] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "4301 KUYKENDALL RD"
[2026-02-09 16:51:16] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 16:51:16] [INFO] Concatenating street name and type
[2026-02-09 16:51:16] [INFO]   -> Combined street name: KUYKENDALL RD
[2026-02-09 16:51:16] [INFO] Built locationCoordinates from lat/lng: 36.22672,-85.52338
[2026-02-09 16:51:16] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000391","dispatchRunNumber":"2026000391","incidentTypeValue1":"CHEST PAIN","incidentLocationStreetNumber":4301,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"nERISIncidentLatitude":36.2267200000000002546585164964199066162109375,"nERISIncidentLongitude":-85.523380000000003064997144974768161773681640625,"alarm":"2026-02-09 10:50:30","dispatched":"2026-02-09 10:51:12","incidentLocationCross":"DAVE HUDDLESTON RD\/N PINE HILL RD","cADVehicleID":"PCFR","timedispatch":"2026-02-09 10:51:12","policeReportNumber":"20260014755","dispatchNotes":"[EMS] POSSIBLE PNEUMONIA   HAD CABG SURGERY ON LAST TUESDAY  [02\/09\/26 10:51:06 KHILL] Event spawned from CHEST PAIN.  [02\/09\/2026 10:50:30 KHILL] LARRY FORD  DOB 03\/04\/1953 POST CABG CHEST PAIN RELIEVED WITH 1 NITRO O2 70S-80S LUNGS ARE DIMINSHED  [02\/09\/26 10:50:26 KHILL]]","cADLog":"[EMS] POSSIBLE PNEUMONIA   HAD CABG SURGERY ON LAST TUESDAY  [02\/09\/26 10:51:06 KHILL] Event spawned from CHEST PAIN.  [02\/09\/2026 10:50:30 KHILL] LARRY FORD  DOB 03\/04\/1953 POST CABG CHEST PAIN RELIEVED WITH 1 NITRO O2 70S-80S LUNGS ARE DIMINSHED  [02\/09\/26 10:50:26 KHILL]]","incidentLocationCity":"COOKEVILLE","streetName":"KUYKENDALL RD","incidentAddressTextVersionStreet":"4301 KUYKENDALL RD","locationCoordinates":"36.22672,-85.52338"}
[2026-02-09 16:51:16] [INFO] Number of extracted fields: 21
[2026-02-09 16:51:16] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-02-09 16:51: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-02-09 16:51:16] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-02-09 16:51:16] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 16:51:16] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 16:51:16] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-02-09 16:51: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-02-09 16:51:16] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 16:51:16] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-09 16:51:16] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 16:51:16] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 16:51:17] [INFO] Found existing IncidentTypeMapping with ID: 6939c33d3eae65119
[2026-02-09 16:51:28] [INFO] Created new Dispatches record with ID: 698a10858712bbeb0
[2026-02-09 16:51:28] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 16:51:28] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 16:51:31] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 16:51:31] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014755_20260209_165116.XML: Failed to upload file to V2 FTP server: /PCFD_20260014755_20260209_165116.XML
[2026-02-09 16:51:31] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:06:32] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04133.xml
[2026-02-09 17:06:32] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04133.xml for user: 68d56363ec1209189
[2026-02-09 17:06:32] [INFO] File size: 2828 bytes
[2026-02-09 17:06:32] [INFO] Created FTPFiles record with ID: 698a141891238f4e5
[2026-02-09 17:06:32] [INFO] About to extract fields from XML. File size: 2828 bytes
[2026-02-09 17:06:32] [INFO] Number of mappings: 21
[2026-02-09 17:06:32] [INFO] Starting XML parsing. Content length: 2828
[2026-02-09 17:06:32] [INFO] XML parsed successfully. Root element: Incident
[2026-02-09 17:06:32] [INFO] Processing 21 field mappings
[2026-02-09 17:06:32] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-09 17:06:32] [INFO]   -> Found value: 26-04133
[2026-02-09 17:06:32] [INFO]   -> Set field 'dispatchRunNumber' = "26-04133"
[2026-02-09 17:06:32] [INFO]   -> Set field 'cADNumber' = "26-04133"
[2026-02-09 17:06:32] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-09 17:06:32] [INFO]   -> Found value: 115
[2026-02-09 17:06:32] [INFO]   -> Set field 'incidentLocationStreetNumber' = 115
[2026-02-09 17:06:32] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-09 17:06:32] [INFO]   -> Found value: STATE HIGHWAY U
[2026-02-09 17:06:32] [INFO]   -> Set field 'streetName' = "STATE HIGHWAY U"
[2026-02-09 17:06:32] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-09 17:06:32] [INFO]   -> No value found (null or empty)
[2026-02-09 17:06:32] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-09 17:06:32] [INFO]   -> Found value: SIKESTON
[2026-02-09 17:06:32] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-02-09 17:06:32] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-09 17:06:32] [INFO]   -> Found value: BLODGETT DOLLAR GENERAL
[2026-02-09 17:06:32] [INFO]   -> Set field 'businessName' = "BLODGETT DOLLAR GENERAL"
[2026-02-09 17:06:32] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-09 17:06:32] [INFO]   -> No value found (null or empty)
[2026-02-09 17:06:32] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-09 17:06:32] [INFO]   -> No value found (null or empty)
[2026-02-09 17:06:32] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-09 17:06:32] [INFO]   -> Found value: 0
[2026-02-09 17:06:32] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-09 17:06:32] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-09 17:06:32] [INFO]   -> Found value: 0
[2026-02-09 17:06:32] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-09 17:06:32] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-09 17:06:32] [INFO]   -> Found value: FIRE-VEHICLE
[2026-02-09 17:06:32] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-VEHICLE"
[2026-02-09 17:06:32] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:06:32] [INFO]   -> Found value: 02-09-2026 10:53:56|TRACTOR TRAILER ON FIRE IN THE PARKING LOT OF DOLLAR GENERAL 
20 FEET FROM BUILD...
[2026-02-09 17:06:32] [INFO]   -> Set field 'dispatchNotes' = "02-09-2026 10:53:56|TRACTOR TRAILER ON FIRE IN THE PARKING LOT OF DOLLAR GENERAL \n20 FEET FROM BUILDING 02-09-2026 10:54:41|1701 RESPONDING FROM SIKESTON REQUESTING NBC 02-09-2026 10:56:29|1112 EN ROUTE TO STATION 02-09-2026 10:57:12|1703 EN ROUTE FROM BENTON 02-09-2026 10:58:41|1707 EN ROUTE 02-09-2026 10:59:24|3421 STATES FIRE APPEARS TO BE OUT 02-09-2026 11:00:03|1702 ADVISING CANCEL ANY NOT ON SCENE  FIRE IS OUT 02-09-2026 11:00:56|1112 COPIED CANCEL PAGE 02-09-2026 11:02:09|Disposition - SSCA:  RPT\nDisposition - SSCA UNIT:  RPT 02-09-2026 11:02:13|Disposition - Scott County S.O. (MO):  NRN\nDisposition - SSCA:  RPT\nDisposition - SSCA UNIT:  RPT 02-09-2026 11:06:00|ALL UNITS IN SERVICE"
[2026-02-09 17:06:32] [INFO]   -> Set field 'cADLog' = "02-09-2026 10:53:56|TRACTOR TRAILER ON FIRE IN THE PARKING LOT OF DOLLAR GENERAL \n20 FEET FROM BUILDING 02-09-2026 10:54:41|1701 RESPONDING FROM SIKESTON REQUESTING NBC 02-09-2026 10:56:29|1112 EN ROUTE TO STATION 02-09-2026 10:57:12|1703 EN ROUTE FROM BENTON 02-09-2026 10:58:41|1707 EN ROUTE 02-09-2026 10:59:24|3421 STATES FIRE APPEARS TO BE OUT 02-09-2026 11:00:03|1702 ADVISING CANCEL ANY NOT ON SCENE  FIRE IS OUT 02-09-2026 11:00:56|1112 COPIED CANCEL PAGE 02-09-2026 11:02:09|Disposition - SSCA:  RPT\nDisposition - SSCA UNIT:  RPT 02-09-2026 11:02:13|Disposition - Scott County S.O. (MO):  NRN\nDisposition - SSCA:  RPT\nDisposition - SSCA UNIT:  RPT 02-09-2026 11:06:00|ALL UNITS IN SERVICE"
[2026-02-09 17:06:32] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-09 17:06:32] [INFO]   -> Found value: 02-09-2026T10:54:24
[2026-02-09 17:06:32] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T10:54:24
[2026-02-09 17:06:32] [INFO]   -> Set field 'alarm' = "2026-09-02 10:54:24"
[2026-02-09 17:06:32] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T10:54:24
[2026-02-09 17:06:32] [INFO]   -> Set field 'dispatched' = "2026-09-02 10:54:24"
[2026-02-09 17:06:32] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-09 17:06:32] [INFO]   -> Found value: 02-09-2026T10:58:55
[2026-02-09 17:06:32] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T10:58:55
[2026-02-09 17:06:32] [INFO]   -> Set field 'onScene' = "2026-09-02 10:58:55"
[2026-02-09 17:06:32] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-09 17:06:32] [INFO]   -> Found value: 02-09-2026T11:06:02
[2026-02-09 17:06:32] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T11:06:02
[2026-02-09 17:06:32] [INFO]   -> Set field 'cleared' = "2026-09-02 11:06:02"
[2026-02-09 17:06:32] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T11:06:02
[2026-02-09 17:06:32] [INFO]   -> Set field 'inService' = "2026-09-02 11:06:02"
[2026-02-09 17:06:32] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-09 17:06:32] [INFO]   -> Found value: 1701
[2026-02-09 17:06:32] [INFO]   -> Set field 'cADVehicleID' = 1701
[2026-02-09 17:06:32] [INFO]   -> Set field 'name' = "1701"
[2026-02-09 17:06:32] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-09 17:06:32] [INFO]   -> Found value: 02-09-2026T10:54:30
[2026-02-09 17:06:32] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T10:54:30
[2026-02-09 17:06:32] [INFO]   -> Set field 'timeenroutetoscene' = "2026-09-02 10:54:30"
[2026-02-09 17:06:32] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-09 17:06:32] [INFO]   -> Found value: 02-09-2026T11:01:13
[2026-02-09 17:06:32] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T11:01:13
[2026-02-09 17:06:32] [INFO]   -> Set field 'timeonscene' = "2026-09-02 11:01:13"
[2026-02-09 17:06:32] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-09 17:06:32] [INFO]   -> Found value: 02-09-2026T11:06:02
[2026-02-09 17:06:32] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T11:06:02
[2026-02-09 17:06:32] [INFO]   -> Set field 'timeunitclear' = "2026-09-02 11:06:02"
[2026-02-09 17:06:32] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-09 17:06:32] [INFO]   -> No value found (null or empty)
[2026-02-09 17:06:32] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-09 17:06:32] [INFO]   -> Found value: SCRFD
[2026-02-09 17:06:32] [INFO]   -> Set field 'cADAgencyIdentifier' = "SCRFD"
[2026-02-09 17:06:32] [INFO] Finished extracting fields. Total fields extracted: 22
[2026-02-09 17:06:32] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-09 17:06:32] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-04133","cADNumber":"26-04133","incidentLocationStreetNumber":115,"streetName":"STATE HIGHWAY U","incidentLocationCity":"SIKESTON","businessName":"BLODGETT DOLLAR GENERAL","nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"FIRE-VEHICLE","dispatchNotes":"02-09-2026 10:53:56|TRACTOR TRAILER ON FIRE IN THE PARKING LOT OF DOLLAR GENERAL \n20 FEET FROM BUILDING 02-09-2026 10:54:41|1701 RESPONDING FROM SIKESTON REQUESTING NBC 02-09-2026 10:56:29|1112 EN ROUTE TO STATION 02-09-2026 10:57:12|1703 EN ROUTE FROM BENTON 02-09-2026 10:58:41|1707 EN ROUTE 02-09-2026 10:59:24|3421 STATES FIRE APPEARS TO BE OUT 02-09-2026 11:00:03|1702 ADVISING CANCEL ANY NOT ON SCENE  FIRE IS OUT 02-09-2026 11:00:56|1112 COPIED CANCEL PAGE 02-09-2026 11:02:09|Disposition - SSCA:  RPT\nDisposition - SSCA UNIT:  RPT 02-09-2026 11:02:13|Disposition - Scott County S.O. (MO):  NRN\nDisposition - SSCA:  RPT\nDisposition - SSCA UNIT:  RPT 02-09-2026 11:06:00|ALL UNITS IN SERVICE","cADLog":"02-09-2026 10:53:56|TRACTOR TRAILER ON FIRE IN THE PARKING LOT OF DOLLAR GENERAL \n20 FEET FROM BUILDING 02-09-2026 10:54:41|1701 RESPONDING FROM SIKESTON REQUESTING NBC 02-09-2026 10:56:29|1112 EN ROUTE TO STATION 02-09-2026 10:57:12|1703 EN ROUTE FROM BENTON 02-09-2026 10:58:41|1707 EN ROUTE 02-09-2026 10:59:24|3421 STATES FIRE APPEARS TO BE OUT 02-09-2026 11:00:03|1702 ADVISING CANCEL ANY NOT ON SCENE  FIRE IS OUT 02-09-2026 11:00:56|1112 COPIED CANCEL PAGE 02-09-2026 11:02:09|Disposition - SSCA:  RPT\nDisposition - SSCA UNIT:  RPT 02-09-2026 11:02:13|Disposition - Scott County S.O. (MO):  NRN\nDisposition - SSCA:  RPT\nDisposition - SSCA UNIT:  RPT 02-09-2026 11:06:00|ALL UNITS IN SERVICE","alarm":"2026-09-02 10:54:24","dispatched":"2026-09-02 10:54:24","onScene":"2026-09-02 10:58:55","cleared":"2026-09-02 11:06:02","inService":"2026-09-02 11:06:02","cADVehicleID":1701,"name":"1701","timeenroutetoscene":"2026-09-02 10:54:30","timeonscene":"2026-09-02 11:01:13","timeunitclear":"2026-09-02 11:06:02","cADAgencyIdentifier":"SCRFD","locationCoordinates":"0,0"}
[2026-02-09 17:06:32] [INFO] Number of extracted fields: 23
[2026-02-09 17:06:32] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SCRFD'
[2026-02-09 17:06:32] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SCRFD', Parsed IDs = ["SCRFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 17:06:32] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SCRFD"]
[2026-02-09 17:06:32] [INFO] Attempting SAASClient lookup for AgencyCode 'SCRFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:06:32] [INFO] SUCCESS: Routed to agency 'Scott County Rural Fire Protection District' (ID: 6643bdb30659f00d8) at INDEX 0 based on AgencyCode 'SCRFD'
[2026-02-09 17:06:33] [INFO] Fetched 6 stations from Stations module for agency 'Scott County Rural Fire Protection District': ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"]
[2026-02-09 17:06:33] [INFO] Final routing: saasclientId = 6643bdb30659f00d8, dispatchStationsIds = ["690279491710f7b8e","6644dbe7e17f1c3de","6644dbb3886c9768f","6644d0c9be0e4ec53","6644e2fe1572c01ae","69027d47e7c4fc65b"], matchedAgencyIndex = 0
[2026-02-09 17:06:33] [INFO] Updated FTPFiles record saasclientId to routed agency: 6643bdb30659f00d8
[2026-02-09 17:06:33] [INFO] Found existing IncidentTypeMapping with ID: 695357a2060043d17
[2026-02-09 17:06:33] [INFO] Found existing Dispatch with cADNumber '26-04133', ID: 698a115e3e4567757 - will update instead of create
[2026-02-09 17:06:34] [INFO] Updated existing Dispatches record with ID: 698a115e3e4567757
[2026-02-09 17:06:34] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04133.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-09/SCRFD_26-04133.xml
[2026-02-09 17:06:34] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SCRFD_26-04133.xml
[2026-02-09 17:11:26] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014767_20260209_171126.XML
[2026-02-09 17:11:26] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014767_20260209_171126.XML for user: 68f1466aed072ad4a
[2026-02-09 17:11:26] [INFO] File size: 4715 bytes
[2026-02-09 17:11:27] [INFO] Created FTPFiles record with ID: 698a153ee9a109240
[2026-02-09 17:11:27] [INFO] About to extract fields from XML. File size: 4715 bytes
[2026-02-09 17:11:27] [INFO] Number of mappings: 28
[2026-02-09 17:11:27] [INFO] Starting XML parsing. Content length: 4715
[2026-02-09 17:11:27] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 17:11:27] [INFO] Processing 28 field mappings
[2026-02-09 17:11:27] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 17:11:27] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 17:11:27] [INFO]   -> Found value: PCFD
[2026-02-09 17:11:27] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD"
[2026-02-09 17:11:27] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:11:27] [INFO]   -> Found value: 2026000392
[2026-02-09 17:11:27] [INFO]   -> Set field 'incidentInternalId' = "2026000392"
[2026-02-09 17:11:27] [INFO]   -> Set field 'dispatchRunNumber' = "2026000392"
[2026-02-09 17:11:27] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 17:11:27] [INFO]   -> Found value: BRUSH / GRASS FIRE
[2026-02-09 17:11:27] [INFO]   -> Set field 'incidentTypeValue1' = "BRUSH \/ GRASS FIRE"
[2026-02-09 17:11:27] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:11:27] [INFO]   -> Found value: 6015
[2026-02-09 17:11:27] [INFO]   -> Set field 'incidentLocationStreetNumber' = 6015
[2026-02-09 17:11:27] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 17:11:27] [INFO]   -> Found value: TN
[2026-02-09 17:11:27] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 17:11:27] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:11:27] [INFO]   -> Found value: 38544
[2026-02-09 17:11:27] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38544
[2026-02-09 17:11:27] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 17:11:27] [INFO]   -> Found value: 36.08536
[2026-02-09 17:11:27] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.08536000000000143472789204679429531097412109375
[2026-02-09 17:11:27] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 17:11:27] [INFO]   -> Found value: -85.65575
[2026-02-09 17:11:27] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.6557499999999976125764078460633754730224609375
[2026-02-09 17:11:27] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 17:11:27] [INFO]   -> Found value: 2026-02-09 11:10:14
[2026-02-09 17:11:27] [INFO]   -> Set field 'alarm' = "2026-02-09 11:10:14"
[2026-02-09 17:11:27] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 17:11:27] [INFO]   -> Found value: 2026-02-09 11:11:16
[2026-02-09 17:11:27] [INFO]   -> Set field 'dispatched' = "2026-02-09 11:11:16"
[2026-02-09 17:11:27] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 17:11:27] [INFO]   -> Found value: DAVE THOMAS LN/WATER PLANT RD
[2026-02-09 17:11:27] [INFO]   -> Set field 'incidentLocationCross' = "DAVE THOMAS LN\/WATER PLANT RD"
[2026-02-09 17:11:27] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 17:11:27] [INFO]   -> Found value: EN11
[2026-02-09 17:11:27] [INFO]   -> Set field 'cADVehicleID' = "EN11"
[2026-02-09 17:11:27] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 17:11:27] [INFO]   -> Found value: 2026-02-09 11:11:16
[2026-02-09 17:11:27] [INFO]   -> Set field 'timedispatch' = "2026-02-09 11:11:16"
[2026-02-09 17:11:27] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 17:11:27] [INFO]   -> Found value: 20260014767
[2026-02-09 17:11:27] [INFO]   -> Set field 'policeReportNumber' = "20260014767"
[2026-02-09 17:11:27] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 17:11:27] [INFO]   -> No value found (null or empty)
[2026-02-09 17:11:27] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 17:11:27] [INFO]   -> Found value: BAXTER
[2026-02-09 17:11:27] [INFO]   -> Set field 'incidentLocationCity' = "BAXTER"
[2026-02-09 17:11:27] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 17:11:27] [INFO]   -> Found value: GANT
[2026-02-09 17:11:27] [INFO]   -> Set field 'streetName' = "GANT"
[2026-02-09 17:11:27] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 17:11:27] [INFO]   -> Found value: RD
[2026-02-09 17:11:27] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 17:11:27] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 17:11:27] [INFO]   -> Found value: 6015 GANT RD
[2026-02-09 17:11:27] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "6015 GANT RD"
[2026-02-09 17:11:27] [INFO] Finished extracting fields. Total fields extracted: 19
[2026-02-09 17:11:27] [INFO] Concatenating street name and type
[2026-02-09 17:11:27] [INFO]   -> Combined street name: GANT RD
[2026-02-09 17:11:27] [INFO] Built locationCoordinates from lat/lng: 36.08536,-85.65575
[2026-02-09 17:11:27] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD","incidentInternalId":"2026000392","dispatchRunNumber":"2026000392","incidentTypeValue1":"BRUSH \/ GRASS FIRE","incidentLocationStreetNumber":6015,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38544,"nERISIncidentLatitude":36.08536000000000143472789204679429531097412109375,"nERISIncidentLongitude":-85.6557499999999976125764078460633754730224609375,"alarm":"2026-02-09 11:10:14","dispatched":"2026-02-09 11:11:16","incidentLocationCross":"DAVE THOMAS LN\/WATER PLANT RD","cADVehicleID":"EN11","timedispatch":"2026-02-09 11:11:16","policeReportNumber":"20260014767","incidentLocationCity":"BAXTER","streetName":"GANT RD","incidentAddressTextVersionStreet":"6015 GANT RD","locationCoordinates":"36.08536,-85.65575"}
[2026-02-09 17:11:27] [INFO] Number of extracted fields: 19
[2026-02-09 17:11:27] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD'
[2026-02-09 17:11:27] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD', Parsed IDs = ["PCFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 4
[2026-02-09 17:11:27] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD"]
[2026-02-09 17:11:27] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:11:27] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 17:11:27] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-09 17:11:27] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 17:11:27] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 17:11:27] [INFO] Found existing IncidentTypeMapping with ID: 693de9e1e8922fc29
[2026-02-09 17:11:38] [INFO] Created new Dispatches record with ID: 698a15403b30405cb
[2026-02-09 17:11:38] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:11:38] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:11:42] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:11:42] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014767_20260209_171126.XML: Failed to upload file to V2 FTP server: /PCFD_20260014767_20260209_171126.XML
[2026-02-09 17:11:42] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:48:59] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124857509.xml
[2026-02-09 17:48:59] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124857509.xml for user: 68920395733981a47
[2026-02-09 17:48:59] [INFO] File size: 5074 bytes
[2026-02-09 17:49:00] [INFO] Created FTPFiles record with ID: 698a1e0c49fc72a87
[2026-02-09 17:49:00] [INFO] About to extract fields from XML. File size: 5074 bytes
[2026-02-09 17:49:00] [INFO] Number of mappings: 24
[2026-02-09 17:49:00] [INFO] Starting XML parsing. Content length: 5074
[2026-02-09 17:49:00] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:49:00] [INFO] Processing 24 field mappings
[2026-02-09 17:49:00] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:49:00] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:49:00] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:49:00] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:49:00] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:49:00] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:49:00] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:49:00] [INFO]   -> Found value: 37379
[2026-02-09 17:49:00] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:49:00] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:49:00] [INFO]   -> Found value: 1856
[2026-02-09 17:49:00] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:49:00] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:49:00] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:49:00] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:49:00] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:49:00] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:49:00] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:49:00] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:49:00] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:49:00] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:49:00] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:49:00] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:00] [INFO]   -> Set field 'enroute' = null
[2026-02-09 17:49:00] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:49:00] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:00] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:49:00] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:49:00] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:00] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:49:00] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:49:00] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:49:00] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:49:00] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:49:00] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:49:00] [INFO]   -> Found value: -85.125438
[2026-02-09 17:49:00] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:49:00] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:49:00] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:00] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 17:49:00] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:49:00] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:00] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:49:00] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:00] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:49:00] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:00] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:49:00] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:00] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:49:00] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:00] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:49:00] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:00] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:49:00] [INFO]   -> Found value: LN
[2026-02-09 17:49:00] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:49:00] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:49:00] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:00] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:49:00] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:49:00] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:49:00] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:49:00] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:49:00] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
[2026-02-09 17:49:00] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842"
[2026-02-09 17:49:00] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842"
[2026-02-09 17:49:00] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:49:00] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:49:00] [INFO]   -> Found value: SFD
[2026-02-09 17:49:00] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-02-09 17:49:00] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 17:49:00] [INFO] Concatenating street name and type
[2026-02-09 17:49:00] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:49:00] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:49:00] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":null,"policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842","cADAgencyIdentifier":"SFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:49:00] [INFO] Number of extracted fields: 20
[2026-02-09 17:49:00] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-02-09 17:49:00] [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-02-09 17:49:00] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-02-09 17:49:00] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:49:00] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:49:00] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:49:00] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:49:00] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:49:01] [INFO] Created new IncidentTypeMapping Data: {"cADIncidentType":"FGRASS-Brush Fire","saasclientId":"681a1d681d6140e0c","name":"FGRASS-Brush Fire"}
[2026-02-09 17:49:01] [INFO] Created new IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:49:12] [INFO] Created new Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:49:12] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:49:12] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:49:15] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:49:15] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124857509.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209124857509.xml
[2026-02-09 17:49:15] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:49:15] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124902588.xml
[2026-02-09 17:49:15] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124902588.xml for user: 68920395733981a47
[2026-02-09 17:49:15] [INFO] File size: 5182 bytes
[2026-02-09 17:49:15] [INFO] Created FTPFiles record with ID: 698a1e1bd7558e48b
[2026-02-09 17:49:15] [INFO] About to extract fields from XML. File size: 5182 bytes
[2026-02-09 17:49:15] [INFO] Number of mappings: 24
[2026-02-09 17:49:15] [INFO] Starting XML parsing. Content length: 5182
[2026-02-09 17:49:15] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:49:15] [INFO] Processing 24 field mappings
[2026-02-09 17:49:15] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:49:15] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:49:15] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:49:15] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:49:15] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:49:15] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:49:15] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:49:15] [INFO]   -> Found value: 37379
[2026-02-09 17:49:15] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:49:15] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:49:15] [INFO]   -> Found value: 1856
[2026-02-09 17:49:15] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:49:15] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:49:15] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:49:15] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:49:15] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:49:15] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:49:15] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:49:15] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:49:15] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:49:15] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:49:15] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:49:15] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:15] [INFO]   -> Set field 'enroute' = null
[2026-02-09 17:49:15] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:49:15] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:15] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:49:15] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:49:15] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:15] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:49:15] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:49:15] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:49:15] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:49:15] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:49:15] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:49:15] [INFO]   -> Found value: -85.125438
[2026-02-09 17:49:15] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:49:15] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:49:15] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:15] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 17:49:15] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:49:15] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:15] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:49:15] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:15] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:49:15] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:15] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:49:15] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:15] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:49:15] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:15] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:49:15] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:15] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:49:15] [INFO]   -> Found value: LN
[2026-02-09 17:49:15] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:49:15] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:49:15] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:15] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:49:15] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:49:15] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:49:15] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:49:15] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:49:15] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:49:15] [INFO] Found 2 elements for 'Comment', concatenating 2 non-empty values
[2026-02-09 17:49:15] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:49:15] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]"
[2026-02-09 17:49:15] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]"
[2026-02-09 17:49:15] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:49:15] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:49:15] [INFO]   -> Found value: SFD
[2026-02-09 17:49:15] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-02-09 17:49:15] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 17:49:15] [INFO] Concatenating street name and type
[2026-02-09 17:49:15] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:49:15] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:49:15] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":null,"policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]","cADAgencyIdentifier":"SFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:49:15] [INFO] Number of extracted fields: 20
[2026-02-09 17:49:15] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-02-09 17:49:15] [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-02-09 17:49:15] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-02-09 17:49:15] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:49:16] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:49:16] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:49:16] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:49:16] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:49:16] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:49:16] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:49:16] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:49:16] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:49:17] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:49:20] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:49:20] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124902588.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209124902588.xml
[2026-02-09 17:49:20] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:49:20] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124907636.xml
[2026-02-09 17:49:20] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124907636.xml for user: 68920395733981a47
[2026-02-09 17:49:20] [INFO] File size: 5289 bytes
[2026-02-09 17:49:21] [INFO] Created FTPFiles record with ID: 698a1e211e2740c79
[2026-02-09 17:49:21] [INFO] About to extract fields from XML. File size: 5289 bytes
[2026-02-09 17:49:21] [INFO] Number of mappings: 24
[2026-02-09 17:49:21] [INFO] Starting XML parsing. Content length: 5289
[2026-02-09 17:49:21] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:49:21] [INFO] Processing 24 field mappings
[2026-02-09 17:49:21] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:49:21] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:49:21] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:49:21] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:49:21] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:49:21] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:49:21] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:49:21] [INFO]   -> Found value: 37379
[2026-02-09 17:49:21] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:49:21] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:49:21] [INFO]   -> Found value: 1856
[2026-02-09 17:49:21] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:49:21] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:49:21] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:49:21] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:49:21] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:49:21] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:49:21] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:49:21] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:49:21] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:49:21] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:49:21] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:49:21] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:21] [INFO]   -> Set field 'enroute' = null
[2026-02-09 17:49:21] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:49:21] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:21] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:49:21] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:49:21] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:21] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:49:21] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:49:21] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:49:21] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:49:21] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:49:21] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:49:21] [INFO]   -> Found value: -85.125438
[2026-02-09 17:49:21] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:49:21] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:49:21] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:21] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 17:49:21] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:49:21] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:21] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:49:21] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:21] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:49:21] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:21] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:49:21] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:21] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:49:21] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:21] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:49:21] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:21] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:49:21] [INFO]   -> Found value: LN
[2026-02-09 17:49:21] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:49:21] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:49:21] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:21] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:49:21] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:49:21] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:49:21] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:49:21] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:49:21] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:49:21] [INFO] Found 3 elements for 'Comment', concatenating 3 non-empty values
[2026-02-09 17:49:21] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:49:21] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]"
[2026-02-09 17:49:21] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]"
[2026-02-09 17:49:21] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:49:21] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:49:21] [INFO]   -> Found value: SFD
[2026-02-09 17:49:21] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-02-09 17:49:21] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 17:49:21] [INFO] Concatenating street name and type
[2026-02-09 17:49:21] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:49:21] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:49:21] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":null,"policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]","cADAgencyIdentifier":"SFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:49:21] [INFO] Number of extracted fields: 20
[2026-02-09 17:49:21] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-02-09 17:49:21] [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-02-09 17:49:21] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-02-09 17:49:21] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:49:21] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:49:21] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:49:21] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:49:21] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:49:21] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:49:22] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:49:22] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:49:22] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:49:22] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:49:25] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:49:25] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124907636.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209124907636.xml
[2026-02-09 17:49:25] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:49:25] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124922839.xml
[2026-02-09 17:49:25] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124922839.xml for user: 68920395733981a47
[2026-02-09 17:49:25] [INFO] File size: 5409 bytes
[2026-02-09 17:49:25] [INFO] Created FTPFiles record with ID: 698a1e25e57d13e4c
[2026-02-09 17:49:25] [INFO] About to extract fields from XML. File size: 5409 bytes
[2026-02-09 17:49:25] [INFO] Number of mappings: 24
[2026-02-09 17:49:25] [INFO] Starting XML parsing. Content length: 5409
[2026-02-09 17:49:25] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:49:25] [INFO] Processing 24 field mappings
[2026-02-09 17:49:25] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:49:25] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:49:25] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:49:25] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:49:25] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:49:25] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:49:25] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:49:25] [INFO]   -> Found value: 37379
[2026-02-09 17:49:25] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:49:25] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:49:25] [INFO]   -> Found value: 1856
[2026-02-09 17:49:25] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:49:25] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:49:25] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:49:25] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:49:25] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:49:25] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:49:25] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:49:25] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:49:25] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:49:25] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:49:25] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:49:25] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:25] [INFO]   -> Set field 'enroute' = null
[2026-02-09 17:49:25] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:49:25] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:25] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:49:25] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:49:25] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:25] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:49:25] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:49:25] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:49:25] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:49:25] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:49:25] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:49:25] [INFO]   -> Found value: -85.125438
[2026-02-09 17:49:25] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:49:25] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:49:25] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:49:25] [INFO]   -> Set field 'dispatched' = null
[2026-02-09 17:49:25] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:49:25] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:25] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:49:25] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:25] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:49:25] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:25] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:49:25] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:25] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:49:25] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:25] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:49:25] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:25] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:49:25] [INFO]   -> Found value: LN
[2026-02-09 17:49:25] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:49:25] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:49:25] [INFO]   -> No value found (null or empty)
[2026-02-09 17:49:25] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:49:25] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:49:25] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:49:25] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:49:25] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:49:25] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:49:25] [INFO] Found 4 elements for 'Comment', concatenating 4 non-empty values
[2026-02-09 17:49:25] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:49:25] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]"
[2026-02-09 17:49:25] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]"
[2026-02-09 17:49:25] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:49:25] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:49:25] [INFO]   -> Found value: SFD
[2026-02-09 17:49:25] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD"
[2026-02-09 17:49:25] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 17:49:25] [INFO] Concatenating street name and type
[2026-02-09 17:49:25] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:49:25] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:49:25] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":null,"policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]","cADAgencyIdentifier":"SFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:49:25] [INFO] Number of extracted fields: 20
[2026-02-09 17:49:25] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD'
[2026-02-09 17:49:25] [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-02-09 17:49:25] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD"]
[2026-02-09 17:49:25] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:49:26] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:49:26] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:49:26] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:49:26] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:49:26] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:49:26] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:49:27] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:49:27] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:49:27] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:49:29] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:49:29] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209124922839.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209124922839.xml
[2026-02-09 17:49:29] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:50:03] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125003404.xml
[2026-02-09 17:50:03] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125003404.xml for user: 68920395733981a47
[2026-02-09 17:50:03] [INFO] File size: 8589 bytes
[2026-02-09 17:50:04] [INFO] Created FTPFiles record with ID: 698a1e4bec816fefe
[2026-02-09 17:50:04] [INFO] About to extract fields from XML. File size: 8589 bytes
[2026-02-09 17:50:04] [INFO] Number of mappings: 24
[2026-02-09 17:50:04] [INFO] Starting XML parsing. Content length: 8589
[2026-02-09 17:50:04] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:50:04] [INFO] Processing 24 field mappings
[2026-02-09 17:50:04] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:50:04] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:50:04] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:50:04] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:50:04] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:50:04] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:50:04] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:50:04] [INFO]   -> Found value: 37379
[2026-02-09 17:50:04] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:50:04] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:50:04] [INFO]   -> Found value: 1856
[2026-02-09 17:50:04] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:50:04] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:50:04] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:50:04] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:50:04] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:50:04] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:50:04] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:50:04] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:50:04] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:50:04] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:50:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'enroute' = null
[2026-02-09 17:50:04] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:50:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:50:04] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:50:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:50:04] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:50:04] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:50:04] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:50:04] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:50:04] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:50:04] [INFO]   -> Found value: -85.125438
[2026-02-09 17:50:04] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:50:04] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:50:04] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:50:04] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:50:04] [INFO]   -> Found value: H1700
[2026-02-09 17:50:04] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-02-09 17:50:04] [INFO]   -> Set field 'name' = "H1700"
[2026-02-09 17:50:04] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:50:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:50:04] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:50:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:50:04] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:50:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:50:04] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:50:04] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-02-09 17:50:04] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:50:04] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:50:04] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:50:02"
[2026-02-09 17:50:04] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:50:04] [INFO]   -> Found value: LN
[2026-02-09 17:50:04] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:50:04] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:50:04] [INFO]   -> Found value: 26-000015
[2026-02-09 17:50:04] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 17:50:04] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 17:50:04] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:50:04] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:50:04] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:50:04] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:50:04] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:50:04] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:50:04] [INFO] Found 6 elements for 'Comment', concatenating 6 non-empty values
[2026-02-09 17:50:04] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:50:04] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]"
[2026-02-09 17:50:04] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]"
[2026-02-09 17:50:04] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:50:04] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:50:04] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:50:04] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-02-09 17:50:04] [INFO]   -> Found value: SFD
SFD
[2026-02-09 17:50:04] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-02-09 17:50:04] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:50:04] [INFO] Concatenating street name and type
[2026-02-09 17:50:04] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:50:04] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:50:04] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-02-09 17:50:02","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:50:04] [INFO] Number of extracted fields: 29
[2026-02-09 17:50:04] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-02-09 17:50: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-02-09 17:50:04] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-02-09 17:50:04] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:50:04] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:50:04] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-02-09 17:50:04] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:50:04] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:50:04] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-09 17:50:04] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:50:04] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:50:04] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:50:04] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:50:05] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:50:05] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:50:05] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:50:08] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:50:08] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125003404.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125003404.xml
[2026-02-09 17:50:08] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:50:18] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125018632.xml
[2026-02-09 17:50:18] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125018632.xml for user: 68920395733981a47
[2026-02-09 17:50:18] [INFO] File size: 8833 bytes
[2026-02-09 17:50:19] [INFO] Created FTPFiles record with ID: 698a1e5b1d1902e17
[2026-02-09 17:50:19] [INFO] About to extract fields from XML. File size: 8833 bytes
[2026-02-09 17:50:19] [INFO] Number of mappings: 24
[2026-02-09 17:50:19] [INFO] Starting XML parsing. Content length: 8833
[2026-02-09 17:50:19] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:50:19] [INFO] Processing 24 field mappings
[2026-02-09 17:50:19] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:50:19] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:50:19] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:50:19] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:50:19] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:50:19] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:50:19] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:50:19] [INFO]   -> Found value: 37379
[2026-02-09 17:50:19] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:50:19] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:50:19] [INFO]   -> Found value: 1856
[2026-02-09 17:50:19] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:50:19] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:50:19] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:50:19] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:50:19] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:50:19] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:50:19] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:50:19] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:50:19] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:50:19] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:50:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'enroute' = null
[2026-02-09 17:50:19] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:50:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:50:19] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:50:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:50:19] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:50:19] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:50:19] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:50:19] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:50:19] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:50:19] [INFO]   -> Found value: -85.125438
[2026-02-09 17:50:19] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:50:19] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:50:19] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:50:19] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:50:19] [INFO]   -> Found value: H1700
[2026-02-09 17:50:19] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-02-09 17:50:19] [INFO]   -> Set field 'name' = "H1700"
[2026-02-09 17:50:19] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:50:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:50:19] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:50:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:50:19] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:50:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:50:19] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:50:19] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-02-09 17:50:19] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:50:19] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:50:19] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:50:02"
[2026-02-09 17:50:19] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:50:19] [INFO]   -> Found value: LN
[2026-02-09 17:50:19] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:50:19] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:50:19] [INFO]   -> Found value: 26-000015
[2026-02-09 17:50:19] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 17:50:19] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 17:50:19] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:50:19] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:50:19] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:50:19] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:50:19] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:50:19] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:50:19] [INFO] Found 7 elements for 'Comment', concatenating 7 non-empty values
[2026-02-09 17:50:19] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:50:19] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]"
[2026-02-09 17:50:19] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]"
[2026-02-09 17:50:19] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:50:19] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:50:19] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:50:19] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-02-09 17:50:19] [INFO]   -> Found value: SFD
SFD
[2026-02-09 17:50:19] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-02-09 17:50:19] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:50:19] [INFO] Concatenating street name and type
[2026-02-09 17:50:19] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:50:19] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:50:19] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-02-09 17:50:02","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:50:19] [INFO] Number of extracted fields: 29
[2026-02-09 17:50:19] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-02-09 17:50:19] [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-02-09 17:50:19] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-02-09 17:50:19] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:50:19] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:50:19] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-02-09 17:50:19] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:50:19] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:50:19] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-09 17:50:19] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:50:19] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:50:19] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:50:20] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:50:20] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:50:20] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:50:20] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:50:23] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:50:23] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125018632.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125018632.xml
[2026-02-09 17:50:23] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:50:49] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125049033.xml
[2026-02-09 17:50:49] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125049033.xml for user: 68920395733981a47
[2026-02-09 17:50:49] [INFO] File size: 8956 bytes
[2026-02-09 17:50:49] [INFO] Created FTPFiles record with ID: 698a1e798a806d968
[2026-02-09 17:50:49] [INFO] About to extract fields from XML. File size: 8956 bytes
[2026-02-09 17:50:49] [INFO] Number of mappings: 24
[2026-02-09 17:50:49] [INFO] Starting XML parsing. Content length: 8956
[2026-02-09 17:50:49] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:50:49] [INFO] Processing 24 field mappings
[2026-02-09 17:50:49] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:50:49] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:50:49] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:50:49] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:50:49] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:50:49] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:50:49] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:50:49] [INFO]   -> Found value: 37379
[2026-02-09 17:50:49] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:50:49] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:50:49] [INFO]   -> Found value: 1856
[2026-02-09 17:50:49] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:50:49] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:50:49] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:50:49] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:50:49] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:50:49] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:50:49] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:50:49] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:50:49] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:50:49] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:50:49] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'enroute' = null
[2026-02-09 17:50:49] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:50:49] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:50:49] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:50:49] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:50:49] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:50:49] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:50:49] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:50:49] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:50:49] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:50:49] [INFO]   -> Found value: -85.125438
[2026-02-09 17:50:49] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:50:49] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:50:49] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:50:49] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:50:49] [INFO]   -> Found value: H1700
[2026-02-09 17:50:49] [INFO]   -> Set field 'cADVehicleID' = "H1700"
[2026-02-09 17:50:49] [INFO]   -> Set field 'name' = "H1700"
[2026-02-09 17:50:49] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:50:49] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:50:49] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:50:49] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:50:49] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:50:49] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:50:49] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:50:49] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'timeenroutetoscene' = null
[2026-02-09 17:50:49] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:50:49] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:50:49] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:50:02"
[2026-02-09 17:50:49] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:50:49] [INFO]   -> Found value: LN
[2026-02-09 17:50:49] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:50:49] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:50:49] [INFO]   -> Found value: 26-000015
[2026-02-09 17:50:49] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 17:50:49] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 17:50:49] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:50:49] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:50:49] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:50:49] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:50:49] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:50:49] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:50:49] [INFO] Found 8 elements for 'Comment', concatenating 8 non-empty values
[2026-02-09 17:50:49] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:50:49] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]"
[2026-02-09 17:50:49] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]"
[2026-02-09 17:50:49] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:50:49] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:50:49] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:50:49] [INFO] Found 2 elements for 'AgencyIdentifier', concatenating 2 non-empty values
[2026-02-09 17:50:49] [INFO]   -> Found value: SFD
SFD
[2026-02-09 17:50:49] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD"
[2026-02-09 17:50:49] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:50:49] [INFO] Concatenating street name and type
[2026-02-09 17:50:49] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:50:49] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:50:49] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":null,"onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"H1700","name":"H1700","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":null,"timedispatch":"2026-02-09 17:50:02","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]","cADAgencyIdentifier":"SFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:50:49] [INFO] Number of extracted fields: 29
[2026-02-09 17:50:49] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD'
[2026-02-09 17:50:49] [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-02-09 17:50:49] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD"]
[2026-02-09 17:50:49] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:50:49] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:50:49] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD"]
[2026-02-09 17:50:49] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:50:49] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:50:49] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 2)
[2026-02-09 17:50:49] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:50:50] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:50:50] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:50:50] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:50:50] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:50:50] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:50:50] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:50:53] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:50:53] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125049033.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125049033.xml
[2026-02-09 17:50:53] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:51:14] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125114333.xml
[2026-02-09 17:51:14] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125114333.xml for user: 68920395733981a47
[2026-02-09 17:51:14] [INFO] File size: 11890 bytes
[2026-02-09 17:51:14] [INFO] Created FTPFiles record with ID: 698a1e92c96656af2
[2026-02-09 17:51:14] [INFO] About to extract fields from XML. File size: 11890 bytes
[2026-02-09 17:51:14] [INFO] Number of mappings: 24
[2026-02-09 17:51:14] [INFO] Starting XML parsing. Content length: 11890
[2026-02-09 17:51:14] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:51:14] [INFO] Processing 24 field mappings
[2026-02-09 17:51:14] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:51:14] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:51:14] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:51:14] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:51:14] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:51:14] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:51:14] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:51:14] [INFO]   -> Found value: 37379
[2026-02-09 17:51:14] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:51:14] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:51:14] [INFO]   -> Found value: 1856
[2026-02-09 17:51:14] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:51:14] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:51:14] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:51:14] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:51:14] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:51:14] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:51:14] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:51:14] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:51:14] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:51:14] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:51:14] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 17:51:14] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:51:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:51:14] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:51:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:51:14] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:51:14] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:51:14] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:51:14] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:51:14] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:51:14] [INFO]   -> Found value: -85.125438
[2026-02-09 17:51:14] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:51:14] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:51:14] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:51:14] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:51:14] [INFO]   -> Found value: E1SD
[2026-02-09 17:51:14] [INFO]   -> Set field 'cADVehicleID' = "E1SD"
[2026-02-09 17:51:14] [INFO]   -> Set field 'name' = "E1SD"
[2026-02-09 17:51:14] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:51:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:51:14] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:51:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:51:14] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:51:14] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:51:14] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:51:14] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 17:51:12"
[2026-02-09 17:51:14] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:51:14] [INFO]   -> Found value: 2026-02-09T12:51:12.893-05:00
[2026-02-09 17:51:14] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:51:12"
[2026-02-09 17:51:14] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:51:14] [INFO]   -> Found value: LN
[2026-02-09 17:51:14] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:51:14] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:51:14] [INFO]   -> Found value: 26-000143
[2026-02-09 17:51:14] [INFO]   -> Set field 'incidentInternalId' = "26-000143"
[2026-02-09 17:51:14] [INFO]   -> Set field 'dispatchRunNumber' = "26-000143"
[2026-02-09 17:51:14] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:51:14] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:51:14] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:51:14] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:51:14] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:51:14] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:51:14] [INFO] Found 9 elements for 'Comment', concatenating 9 non-empty values
[2026-02-09 17:51:14] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:51:14] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]"
[2026-02-09 17:51:14] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]"
[2026-02-09 17:51:14] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:51:14] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:51:14] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:51:14] [INFO] Found 3 elements for 'AgencyIdentifier', concatenating 3 non-empty values
[2026-02-09 17:51:14] [INFO]   -> Found value: SFD
SDFD
SFD
[2026-02-09 17:51:14] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSDFD\nSFD"
[2026-02-09 17:51:14] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:51:14] [INFO] Concatenating street name and type
[2026-02-09 17:51:14] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:51:14] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:51:14] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E1SD","name":"E1SD","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 17:51:12","timedispatch":"2026-02-09 17:51:12","incidentInternalId":"26-000143","dispatchRunNumber":"26-000143","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]","cADAgencyIdentifier":"SFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:51:14] [INFO] Number of extracted fields: 29
[2026-02-09 17:51:14] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SDFD
SFD'
[2026-02-09 17:51:14] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SDFD
SFD', Parsed IDs = ["SFD","SDFD","SFD"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 2
[2026-02-09 17:51:14] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SDFD","SFD"]
[2026-02-09 17:51:14] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:51:15] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:51:15] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SDFD","SFD"]
[2026-02-09 17:51:15] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:51:15] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:51:15] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-02-09 17:51:15] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:51:15] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:51:15] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:51:15] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:51:15] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:51:15] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:51:16] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:51:19] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:51:19] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125114333.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125114333.xml
[2026-02-09 17:51:19] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:54:16] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125416601.xml
[2026-02-09 17:54:16] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125416601.xml for user: 68920395733981a47
[2026-02-09 17:54:16] [INFO] File size: 15211 bytes
[2026-02-09 17:54:17] [INFO] Created FTPFiles record with ID: 698a1f4939a01dcae
[2026-02-09 17:54:17] [INFO] About to extract fields from XML. File size: 15211 bytes
[2026-02-09 17:54:17] [INFO] Number of mappings: 24
[2026-02-09 17:54:17] [INFO] Starting XML parsing. Content length: 15211
[2026-02-09 17:54:17] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:54:17] [INFO] Processing 24 field mappings
[2026-02-09 17:54:17] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:54:17] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:54:17] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:54:17] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:54:17] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:54:17] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:54:17] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:54:17] [INFO]   -> Found value: 37379
[2026-02-09 17:54:17] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:54:17] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:54:17] [INFO]   -> Found value: 1856
[2026-02-09 17:54:17] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:54:17] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:54:17] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:54:17] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:54:17] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:54:17] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:54:17] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:54:17] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:54:17] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:54:17] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:54:17] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 17:54:17] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:54:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:54:17] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:54:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:54:17] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:54:17] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:54:17] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:54:17] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:54:17] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:54:17] [INFO]   -> Found value: -85.125438
[2026-02-09 17:54:17] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:54:17] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:54:17] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:54:17] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:54:17] [INFO]   -> Found value: H1300
[2026-02-09 17:54:17] [INFO]   -> Set field 'cADVehicleID' = "H1300"
[2026-02-09 17:54:17] [INFO]   -> Set field 'name' = "H1300"
[2026-02-09 17:54:17] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:54:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:54:17] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:54:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:54:17] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:54:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:54:17] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:54:17] [INFO]   -> Found value: 2026-02-09T12:54:14.257-05:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 17:54:14"
[2026-02-09 17:54:17] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:54:17] [INFO]   -> Found value: 2026-02-09T12:54:14.21-05:00
[2026-02-09 17:54:17] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:54:14"
[2026-02-09 17:54:17] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:54:17] [INFO]   -> Found value: LN
[2026-02-09 17:54:17] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:54:17] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:54:17] [INFO]   -> Found value: 26-000271
[2026-02-09 17:54:17] [INFO]   -> Set field 'incidentInternalId' = "26-000271"
[2026-02-09 17:54:17] [INFO]   -> Set field 'dispatchRunNumber' = "26-000271"
[2026-02-09 17:54:17] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:54:17] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:54:17] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:54:17] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:54:17] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:54:17] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:54:17] [INFO] Found 10 elements for 'Comment', concatenating 10 non-empty values
[2026-02-09 17:54:17] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:54:17] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]"
[2026-02-09 17:54:17] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]"
[2026-02-09 17:54:17] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:54:17] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:54:17] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:54:17] [INFO] Found 4 elements for 'AgencyIdentifier', concatenating 4 non-empty values
[2026-02-09 17:54:17] [INFO]   -> Found value: SFD
DBFD
SDFD
SFD
[2026-02-09 17:54:17] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nDBFD\nSDFD\nSFD"
[2026-02-09 17:54:17] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:54:17] [INFO] Concatenating street name and type
[2026-02-09 17:54:17] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:54:17] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:54:17] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"H1300","name":"H1300","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 17:54:14","timedispatch":"2026-02-09 17:54:14","incidentInternalId":"26-000271","dispatchRunNumber":"26-000271","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]","cADAgencyIdentifier":"SFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:54:17] [INFO] Number of extracted fields: 29
[2026-02-09 17:54:17] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
DBFD
SDFD
SFD'
[2026-02-09 17:54:17] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","DBFD","SDFD","SFD"], Non-empty count = 4, Total agency count = 4, Assigned Agencies count = 2
[2026-02-09 17:54:17] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","DBFD","SDFD","SFD"]
[2026-02-09 17:54:17] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:54:17] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:54:17] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["DBFD","SDFD","SFD"]
[2026-02-09 17:54:17] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:54:17] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:54:17] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-09 17:54:17] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:54:17] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:54:18] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:54:18] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:54:18] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:54:18] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:54:18] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:54:21] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:54:21] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125416601.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125416601.xml
[2026-02-09 17:54:21] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:56:53] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125653509.xml
[2026-02-09 17:56:53] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125653509.xml for user: 68920395733981a47
[2026-02-09 17:56:53] [INFO] File size: 17750 bytes
[2026-02-09 17:56:54] [INFO] Created FTPFiles record with ID: 698a1fe622732b36a
[2026-02-09 17:56:54] [INFO] About to extract fields from XML. File size: 17750 bytes
[2026-02-09 17:56:54] [INFO] Number of mappings: 24
[2026-02-09 17:56:54] [INFO] Starting XML parsing. Content length: 17750
[2026-02-09 17:56:54] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:56:54] [INFO] Processing 24 field mappings
[2026-02-09 17:56:54] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:56:54] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:56:54] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:56:54] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:56:54] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:56:54] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:56:54] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:56:54] [INFO]   -> Found value: 37379
[2026-02-09 17:56:54] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:56:54] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:56:54] [INFO]   -> Found value: 1856
[2026-02-09 17:56:54] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:56:54] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:56:54] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:56:54] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:56:54] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:56:54] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:56:54] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:56:54] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:56:54] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:56:54] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:56:54] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 17:56:54] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:56:54] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:56:54] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:56:54] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:56:54] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:56:54] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:56:54] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:56:54] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:56:54] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:56:54] [INFO]   -> Found value: -85.125438
[2026-02-09 17:56:54] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:56:54] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:56:54] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:56:54] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:56:54] [INFO]   -> Found value: QRV02DB
[2026-02-09 17:56:54] [INFO]   -> Set field 'cADVehicleID' = "QRV02DB"
[2026-02-09 17:56:54] [INFO]   -> Set field 'name' = "QRV02DB"
[2026-02-09 17:56:54] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:56:54] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:56:54] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:56:54] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:56:54] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:56:54] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:56:54] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:56:54] [INFO]   -> Found value: 2026-02-09T12:56:53.077-05:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 17:56:53"
[2026-02-09 17:56:54] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:56:54] [INFO]   -> Found value: 2026-02-09T12:56:53.047-05:00
[2026-02-09 17:56:54] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:56:53"
[2026-02-09 17:56:54] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:56:54] [INFO]   -> Found value: LN
[2026-02-09 17:56:54] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:56:54] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:56:54] [INFO]   -> Found value: 26-000271
[2026-02-09 17:56:54] [INFO]   -> Set field 'incidentInternalId' = "26-000271"
[2026-02-09 17:56:54] [INFO]   -> Set field 'dispatchRunNumber' = "26-000271"
[2026-02-09 17:56:54] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:56:54] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:56:54] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:56:54] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:56:54] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:56:54] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:56:54] [INFO] Found 10 elements for 'Comment', concatenating 10 non-empty values
[2026-02-09 17:56:54] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:56:54] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]"
[2026-02-09 17:56:54] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]"
[2026-02-09 17:56:54] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:56:54] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:56:54] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:56:54] [INFO] Found 5 elements for 'AgencyIdentifier', concatenating 5 non-empty values
[2026-02-09 17:56:54] [INFO]   -> Found value: SFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 17:56:54] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 17:56:54] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:56:54] [INFO] Concatenating street name and type
[2026-02-09 17:56:54] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:56:54] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:56:54] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"QRV02DB","name":"QRV02DB","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 17:56:53","timedispatch":"2026-02-09 17:56:53","incidentInternalId":"26-000271","dispatchRunNumber":"26-000271","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]","cADAgencyIdentifier":"SFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:56:54] [INFO] Number of extracted fields: 29
[2026-02-09 17:56:54] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 17:56:54] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 5, Total agency count = 5, Assigned Agencies count = 2
[2026-02-09 17:56:54] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 17:56:54] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:56:54] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:56:54] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["DBFD","DBFD","SDFD","SFD"]
[2026-02-09 17:56:54] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:56:54] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:56:54] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 5)
[2026-02-09 17:56:54] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:56:54] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:56:54] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:56:55] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:56:55] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:56:55] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:56:55] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:56:58] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:56:58] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125653509.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125653509.xml
[2026-02-09 17:56:58] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:57:34] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125734058.xml
[2026-02-09 17:57:34] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125734058.xml for user: 68920395733981a47
[2026-02-09 17:57:34] [INFO] File size: 20437 bytes
[2026-02-09 17:57:34] [INFO] Created FTPFiles record with ID: 698a200e835ccd1ac
[2026-02-09 17:57:34] [INFO] About to extract fields from XML. File size: 20437 bytes
[2026-02-09 17:57:34] [INFO] Number of mappings: 24
[2026-02-09 17:57:34] [INFO] Starting XML parsing. Content length: 20437
[2026-02-09 17:57:34] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:57:34] [INFO] Processing 24 field mappings
[2026-02-09 17:57:34] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:57:34] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:57:34] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:57:34] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:57:34] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:57:34] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:57:34] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:57:34] [INFO]   -> Found value: 37379
[2026-02-09 17:57:34] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:57:34] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:57:34] [INFO]   -> Found value: 1856
[2026-02-09 17:57:34] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:57:34] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:57:34] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:57:34] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:57:34] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:57:34] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:57:34] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:57:34] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:57:34] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:57:34] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:57:34] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 17:57:34] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:57:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:57:34] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:57:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:57:34] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:57:34] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:57:34] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:57:34] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:57:34] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:57:34] [INFO]   -> Found value: -85.125438
[2026-02-09 17:57:34] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:57:34] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:57:34] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:57:34] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:57:34] [INFO]   -> Found value: E2DB
[2026-02-09 17:57:34] [INFO]   -> Set field 'cADVehicleID' = "E2DB"
[2026-02-09 17:57:34] [INFO]   -> Set field 'name' = "E2DB"
[2026-02-09 17:57:34] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:57:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:57:34] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:57:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:57:34] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:57:34] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:57:34] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:57:34] [INFO]   -> Found value: 2026-02-09T12:57:31.797-05:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 17:57:31"
[2026-02-09 17:57:34] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:57:34] [INFO]   -> Found value: 2026-02-09T12:57:31.777-05:00
[2026-02-09 17:57:34] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:57:31"
[2026-02-09 17:57:34] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:57:34] [INFO]   -> Found value: LN
[2026-02-09 17:57:34] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:57:34] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:57:34] [INFO]   -> Found value: 26-000271
[2026-02-09 17:57:34] [INFO]   -> Set field 'incidentInternalId' = "26-000271"
[2026-02-09 17:57:34] [INFO]   -> Set field 'dispatchRunNumber' = "26-000271"
[2026-02-09 17:57:34] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:57:34] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:57:34] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:57:34] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:57:34] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:57:34] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:57:34] [INFO] Found 10 elements for 'Comment', concatenating 10 non-empty values
[2026-02-09 17:57:34] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:57:34] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]"
[2026-02-09 17:57:34] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]"
[2026-02-09 17:57:34] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:57:34] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:57:34] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:57:34] [INFO] Found 6 elements for 'AgencyIdentifier', concatenating 6 non-empty values
[2026-02-09 17:57:34] [INFO]   -> Found value: SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 17:57:34] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 17:57:34] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:57:34] [INFO] Concatenating street name and type
[2026-02-09 17:57:34] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:57:34] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:57:34] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2DB","name":"E2DB","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 17:57:31","timedispatch":"2026-02-09 17:57:31","incidentInternalId":"26-000271","dispatchRunNumber":"26-000271","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]","cADAgencyIdentifier":"SFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:57:34] [INFO] Number of extracted fields: 29
[2026-02-09 17:57:34] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 17:57:34] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 6, Total agency count = 6, Assigned Agencies count = 2
[2026-02-09 17:57:34] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 17:57:34] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:57:34] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:57:34] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 17:57:34] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:57:34] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:57:34] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 6)
[2026-02-09 17:57:34] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:57:35] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:57:35] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:57:35] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:57:35] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:57:35] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:57:35] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:57:39] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:57:39] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125734058.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125734058.xml
[2026-02-09 17:57:39] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:57:44] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125744152.xml
[2026-02-09 17:57:44] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125744152.xml for user: 68920395733981a47
[2026-02-09 17:57:44] [INFO] File size: 20525 bytes
[2026-02-09 17:57:44] [INFO] Created FTPFiles record with ID: 698a2018af4c1a6fa
[2026-02-09 17:57:44] [INFO] About to extract fields from XML. File size: 20525 bytes
[2026-02-09 17:57:44] [INFO] Number of mappings: 24
[2026-02-09 17:57:44] [INFO] Starting XML parsing. Content length: 20525
[2026-02-09 17:57:44] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:57:44] [INFO] Processing 24 field mappings
[2026-02-09 17:57:44] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:57:44] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:57:44] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:57:44] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:57:44] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:57:44] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:57:44] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:57:44] [INFO]   -> Found value: 37379
[2026-02-09 17:57:44] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:57:44] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:57:44] [INFO]   -> Found value: 1856
[2026-02-09 17:57:44] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:57:44] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:57:44] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:57:44] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:57:44] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:57:44] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:57:44] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:57:44] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:57:44] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:57:44] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:57:44] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 17:57:44] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:57:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:57:44] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:57:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:57:44] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:57:44] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:57:44] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:57:44] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:57:44] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:57:44] [INFO]   -> Found value: -85.125438
[2026-02-09 17:57:44] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:57:44] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:57:44] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:57:44] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:57:44] [INFO]   -> Found value: E2DB
[2026-02-09 17:57:44] [INFO]   -> Set field 'cADVehicleID' = "E2DB"
[2026-02-09 17:57:44] [INFO]   -> Set field 'name' = "E2DB"
[2026-02-09 17:57:44] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:57:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:57:44] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:57:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:57:44] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:57:44] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:57:44] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:57:44] [INFO]   -> Found value: 2026-02-09T12:57:31.797-05:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 17:57:31"
[2026-02-09 17:57:44] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:57:44] [INFO]   -> Found value: 2026-02-09T12:57:31.777-05:00
[2026-02-09 17:57:44] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:57:31"
[2026-02-09 17:57:44] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:57:44] [INFO]   -> Found value: LN
[2026-02-09 17:57:44] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:57:44] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:57:44] [INFO]   -> Found value: 26-000271
[2026-02-09 17:57:44] [INFO]   -> Set field 'incidentInternalId' = "26-000271"
[2026-02-09 17:57:44] [INFO]   -> Set field 'dispatchRunNumber' = "26-000271"
[2026-02-09 17:57:44] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:57:44] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:57:44] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:57:44] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:57:44] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:57:44] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:57:44] [INFO] Found 11 elements for 'Comment', concatenating 11 non-empty values
[2026-02-09 17:57:44] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:57:44] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]"
[2026-02-09 17:57:44] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]"
[2026-02-09 17:57:44] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:57:44] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:57:44] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:57:44] [INFO] Found 6 elements for 'AgencyIdentifier', concatenating 6 non-empty values
[2026-02-09 17:57:44] [INFO]   -> Found value: SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 17:57:44] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 17:57:44] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:57:44] [INFO] Concatenating street name and type
[2026-02-09 17:57:44] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:57:44] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:57:44] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2DB","name":"E2DB","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 17:57:31","timedispatch":"2026-02-09 17:57:31","incidentInternalId":"26-000271","dispatchRunNumber":"26-000271","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]","cADAgencyIdentifier":"SFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:57:44] [INFO] Number of extracted fields: 29
[2026-02-09 17:57:44] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 17:57:44] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 6, Total agency count = 6, Assigned Agencies count = 2
[2026-02-09 17:57:44] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 17:57:44] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:57:44] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:57:44] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 17:57:45] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:57:45] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:57:45] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 6)
[2026-02-09 17:57:45] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:57:45] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:57:45] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:57:45] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:57:45] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:57:45] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:57:45] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:57:48] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:57:48] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125744152.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125744152.xml
[2026-02-09 17:57:48] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:58:16] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014793_20260209_175816.XML
[2026-02-09 17:58:16] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014793_20260209_175816.XML for user: 68f1466aed072ad4a
[2026-02-09 17:58:16] [INFO] File size: 4896 bytes
[2026-02-09 17:58:16] [INFO] Created FTPFiles record with ID: 698a20388df083236
[2026-02-09 17:58:16] [INFO] About to extract fields from XML. File size: 4896 bytes
[2026-02-09 17:58:16] [INFO] Number of mappings: 28
[2026-02-09 17:58:16] [INFO] Starting XML parsing. Content length: 4896
[2026-02-09 17:58:16] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 17:58:16] [INFO] Processing 28 field mappings
[2026-02-09 17:58:16] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 17:58:16] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 17:58:16] [INFO]   -> Found value: PCFD
[2026-02-09 17:58:16] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD"
[2026-02-09 17:58:16] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:58:16] [INFO]   -> Found value: 2026000393
[2026-02-09 17:58:16] [INFO]   -> Set field 'incidentInternalId' = "2026000393"
[2026-02-09 17:58:16] [INFO]   -> Set field 'dispatchRunNumber' = "2026000393"
[2026-02-09 17:58:16] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 17:58:16] [INFO]   -> Found value: BRUSH / GRASS FIRE
[2026-02-09 17:58:16] [INFO]   -> Set field 'incidentTypeValue1' = "BRUSH \/ GRASS FIRE"
[2026-02-09 17:58:16] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:58:16] [INFO]   -> Found value: 2025
[2026-02-09 17:58:16] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2025
[2026-02-09 17:58:16] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 17:58:16] [INFO]   -> Found value: TN
[2026-02-09 17:58:16] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 17:58:16] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:58:16] [INFO]   -> Found value: 38506
[2026-02-09 17:58:16] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-09 17:58:16] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 17:58:16] [INFO]   -> Found value: 36.20231
[2026-02-09 17:58:16] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.2023099999999971032593748532235622406005859375
[2026-02-09 17:58:16] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 17:58:16] [INFO]   -> Found value: -85.33121
[2026-02-09 17:58:16] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.33120999999999867213773541152477264404296875
[2026-02-09 17:58:16] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 17:58:16] [INFO]   -> Found value: 2026-02-09 11:55:44
[2026-02-09 17:58:16] [INFO]   -> Set field 'alarm' = "2026-02-09 11:55:44"
[2026-02-09 17:58:16] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 17:58:16] [INFO]   -> Found value: 2026-02-09 11:58:11
[2026-02-09 17:58:16] [INFO]   -> Set field 'dispatched' = "2026-02-09 11:58:11"
[2026-02-09 17:58:16] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 17:58:16] [INFO]   -> Found value: THORN GAP RD
[2026-02-09 17:58:16] [INFO]   -> Set field 'incidentLocationCross' = "THORN GAP RD"
[2026-02-09 17:58:16] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 17:58:16] [INFO]   -> Found value: BR21
[2026-02-09 17:58:16] [INFO]   -> Set field 'cADVehicleID' = "BR21"
[2026-02-09 17:58:16] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 17:58:16] [INFO]   -> Found value: 2026-02-09 11:58:11
[2026-02-09 17:58:16] [INFO]   -> Set field 'timedispatch' = "2026-02-09 11:58:11"
[2026-02-09 17:58:16] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 17:58:16] [INFO]   -> No value found (null or empty)
[2026-02-09 17:58:16] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 17:58:16] [INFO]   -> Found value: 20260014793
[2026-02-09 17:58:16] [INFO]   -> Set field 'policeReportNumber' = "20260014793"
[2026-02-09 17:58:16] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 17:58:16] [INFO]   -> Found value: UNABLE TO CALL THE ORIGINAL CALLER  [02/09/26 11:57:42 KHILL] COUSIN CALLED HIS AUNT LINDA RYAN AND ...
[2026-02-09 17:58:16] [INFO]   -> Set field 'dispatchNotes' = "UNABLE TO CALL THE ORIGINAL CALLER  [02\/09\/26 11:57:42 KHILL] COUSIN CALLED HIS AUNT LINDA RYAN AND SAID HE HAD SET THE WOODS ON FIRE 2025 MORGAN HANEY ROAD ALEX RITTENBURY  [02\/09\/26 11:57:22 KHILL]]"
[2026-02-09 17:58:16] [INFO]   -> Set field 'cADLog' = "UNABLE TO CALL THE ORIGINAL CALLER  [02\/09\/26 11:57:42 KHILL] COUSIN CALLED HIS AUNT LINDA RYAN AND SAID HE HAD SET THE WOODS ON FIRE 2025 MORGAN HANEY ROAD ALEX RITTENBURY  [02\/09\/26 11:57:22 KHILL]]"
[2026-02-09 17:58:16] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 17:58:16] [INFO]   -> Found value: MONTEREY
[2026-02-09 17:58:16] [INFO]   -> Set field 'incidentLocationCity' = "MONTEREY"
[2026-02-09 17:58:16] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 17:58:16] [INFO]   -> Found value: MORGAN HANEY
[2026-02-09 17:58:16] [INFO]   -> Set field 'streetName' = "MORGAN HANEY"
[2026-02-09 17:58:16] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 17:58:16] [INFO]   -> Found value: RD
[2026-02-09 17:58:16] [INFO]   -> Set field 'streetType' = "RD"
[2026-02-09 17:58:16] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 17:58:16] [INFO]   -> Found value: 2025 MORGAN HANEY RD
[2026-02-09 17:58:16] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "2025 MORGAN HANEY RD"
[2026-02-09 17:58:16] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 17:58:16] [INFO] Concatenating street name and type
[2026-02-09 17:58:16] [INFO]   -> Combined street name: MORGAN HANEY RD
[2026-02-09 17:58:16] [INFO] Built locationCoordinates from lat/lng: 36.20231,-85.33121
[2026-02-09 17:58:16] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD","incidentInternalId":"2026000393","dispatchRunNumber":"2026000393","incidentTypeValue1":"BRUSH \/ GRASS FIRE","incidentLocationStreetNumber":2025,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.2023099999999971032593748532235622406005859375,"nERISIncidentLongitude":-85.33120999999999867213773541152477264404296875,"alarm":"2026-02-09 11:55:44","dispatched":"2026-02-09 11:58:11","incidentLocationCross":"THORN GAP RD","cADVehicleID":"BR21","timedispatch":"2026-02-09 11:58:11","policeReportNumber":"20260014793","dispatchNotes":"UNABLE TO CALL THE ORIGINAL CALLER  [02\/09\/26 11:57:42 KHILL] COUSIN CALLED HIS AUNT LINDA RYAN AND SAID HE HAD SET THE WOODS ON FIRE 2025 MORGAN HANEY ROAD ALEX RITTENBURY  [02\/09\/26 11:57:22 KHILL]]","cADLog":"UNABLE TO CALL THE ORIGINAL CALLER  [02\/09\/26 11:57:42 KHILL] COUSIN CALLED HIS AUNT LINDA RYAN AND SAID HE HAD SET THE WOODS ON FIRE 2025 MORGAN HANEY ROAD ALEX RITTENBURY  [02\/09\/26 11:57:22 KHILL]]","incidentLocationCity":"MONTEREY","streetName":"MORGAN HANEY RD","incidentAddressTextVersionStreet":"2025 MORGAN HANEY RD","locationCoordinates":"36.20231,-85.33121"}
[2026-02-09 17:58:16] [INFO] Number of extracted fields: 21
[2026-02-09 17:58:16] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD'
[2026-02-09 17:58:16] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD', Parsed IDs = ["PCFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 4
[2026-02-09 17:58:16] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD"]
[2026-02-09 17:58:16] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:58:16] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 17:58: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-02-09 17:58:17] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 17:58:17] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 17:58:17] [INFO] Found existing IncidentTypeMapping with ID: 693de9e1e8922fc29
[2026-02-09 17:58:27] [INFO] Created new Dispatches record with ID: 698a203995ab560cd
[2026-02-09 17:58:27] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:58:28] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:58:31] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:58:31] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014793_20260209_175816.XML: Failed to upload file to V2 FTP server: /PCFD_20260014793_20260209_175816.XML
[2026-02-09 17:58:31] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 17:58:34] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125834752.xml
[2026-02-09 17:58:34] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125834752.xml for user: 68920395733981a47
[2026-02-09 17:58:34] [INFO] File size: 20712 bytes
[2026-02-09 17:58:35] [INFO] Created FTPFiles record with ID: 698a204b4a9bca8a9
[2026-02-09 17:58:35] [INFO] About to extract fields from XML. File size: 20712 bytes
[2026-02-09 17:58:35] [INFO] Number of mappings: 24
[2026-02-09 17:58:35] [INFO] Starting XML parsing. Content length: 20712
[2026-02-09 17:58:35] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 17:58:35] [INFO] Processing 24 field mappings
[2026-02-09 17:58:35] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 17:58:35] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 17:58:35] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 17:58:35] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 17:58:35] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 17:58:35] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 17:58:35] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 17:58:35] [INFO]   -> Found value: 37379
[2026-02-09 17:58:35] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 17:58:35] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 17:58:35] [INFO]   -> Found value: 1856
[2026-02-09 17:58:35] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 17:58:35] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 17:58:35] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 17:58:35] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 17:58:35] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 17:58:35] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 17:58:35] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 17:58:35] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 17:58:35] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 17:58:35] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 17:58:35] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 17:58:35] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 17:58:35] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'onScene' = null
[2026-02-09 17:58:35] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 17:58:35] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'cleared' = null
[2026-02-09 17:58:35] [INFO]   -> Set field 'inService' = null
[2026-02-09 17:58:35] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 17:58:35] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 17:58:35] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 17:58:35] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 17:58:35] [INFO]   -> Found value: -85.125438
[2026-02-09 17:58:35] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 17:58:35] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 17:58:35] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 17:58:35] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 17:58:35] [INFO]   -> Found value: E2DB
[2026-02-09 17:58:35] [INFO]   -> Set field 'cADVehicleID' = "E2DB"
[2026-02-09 17:58:35] [INFO]   -> Set field 'name' = "E2DB"
[2026-02-09 17:58:35] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 17:58:35] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 17:58:35] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 17:58:35] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 17:58:35] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 17:58:35] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 17:58:35] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 17:58:35] [INFO]   -> Found value: 2026-02-09T12:57:31.797-05:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 17:57:31"
[2026-02-09 17:58:35] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 17:58:35] [INFO]   -> Found value: 2026-02-09T12:57:31.777-05:00
[2026-02-09 17:58:35] [INFO]   -> Set field 'timedispatch' = "2026-02-09 17:57:31"
[2026-02-09 17:58:35] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 17:58:35] [INFO]   -> Found value: LN
[2026-02-09 17:58:35] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 17:58:35] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 17:58:35] [INFO]   -> Found value: 26-000271
[2026-02-09 17:58:35] [INFO]   -> Set field 'incidentInternalId' = "26-000271"
[2026-02-09 17:58:35] [INFO]   -> Set field 'dispatchRunNumber' = "26-000271"
[2026-02-09 17:58:35] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 17:58:35] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 17:58:35] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 17:58:35] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 17:58:35] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 17:58:35] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 17:58:35] [INFO] Found 12 elements for 'Comment', concatenating 12 non-empty values
[2026-02-09 17:58:35] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 17:58:35] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]"
[2026-02-09 17:58:35] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]"
[2026-02-09 17:58:35] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 17:58:35] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 17:58:35] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 17:58:35] [INFO] Found 6 elements for 'AgencyIdentifier', concatenating 6 non-empty values
[2026-02-09 17:58:35] [INFO]   -> Found value: SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 17:58:35] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 17:58:35] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 17:58:35] [INFO] Concatenating street name and type
[2026-02-09 17:58:35] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 17:58:35] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 17:58:35] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2DB","name":"E2DB","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 17:57:31","timedispatch":"2026-02-09 17:57:31","incidentInternalId":"26-000271","dispatchRunNumber":"26-000271","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]","cADAgencyIdentifier":"SFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 17:58:35] [INFO] Number of extracted fields: 29
[2026-02-09 17:58:35] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 17:58:35] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 6, Total agency count = 6, Assigned Agencies count = 2
[2026-02-09 17:58:35] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 17:58:35] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 17:58:35] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 17:58:35] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 17:58:35] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 17:58:35] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 17:58:35] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 6)
[2026-02-09 17:58:35] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 17:58:35] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 17:58:36] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 17:58:36] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 17:58:36] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 17:58:36] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 17:58:36] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 17:58:39] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 17:58:39] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209125834752.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209125834752.xml
[2026-02-09 17:58:39] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:00:46] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130046220.xml
[2026-02-09 18:00:46] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130046220.xml for user: 68920395733981a47
[2026-02-09 18:00:46] [INFO] File size: 23240 bytes
[2026-02-09 18:00:47] [INFO] Created FTPFiles record with ID: 698a20cee9ce68ccf
[2026-02-09 18:00:47] [INFO] About to extract fields from XML. File size: 23240 bytes
[2026-02-09 18:00:47] [INFO] Number of mappings: 24
[2026-02-09 18:00:47] [INFO] Starting XML parsing. Content length: 23240
[2026-02-09 18:00:47] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:00:47] [INFO] Processing 24 field mappings
[2026-02-09 18:00:47] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:00:47] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:00:47] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:00:47] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:00:47] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:00:47] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:00:47] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:00:47] [INFO]   -> Found value: 37379
[2026-02-09 18:00:47] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:00:47] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:00:47] [INFO]   -> Found value: 1856
[2026-02-09 18:00:47] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:00:47] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:00:47] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:00:47] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:00:47] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:00:47] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:00:47] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:00:47] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:00:47] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:00:47] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:00:47] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:00:47] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:00:47] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'onScene' = null
[2026-02-09 18:00:47] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:00:47] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:00:47] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:00:47] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:00:47] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:00:47] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:00:47] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:00:47] [INFO]   -> Found value: -85.125438
[2026-02-09 18:00:47] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:00:47] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:00:47] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:00:47] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:00:47] [INFO]   -> Found value: E2SF
[2026-02-09 18:00:47] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:00:47] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:00:47] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:00:47] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:00:47] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:00:47] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 18:00:47] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:00:47] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:00:47] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:00:47] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:00:47] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:00:47] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:00:47] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:00:47] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:00:47] [INFO]   -> Found value: LN
[2026-02-09 18:00:47] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:00:47] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:00:47] [INFO]   -> Found value: 26-000015
[2026-02-09 18:00:47] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 18:00:47] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 18:00:47] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:00:47] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:00:47] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:00:47] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:00:47] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:00:47] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:00:47] [INFO] Found 12 elements for 'Comment', concatenating 12 non-empty values
[2026-02-09 18:00:47] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:00:47] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]"
[2026-02-09 18:00:47] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]"
[2026-02-09 18:00:47] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:00:47] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:00:47] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:00:47] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:00:47] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:00:47] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:00:47] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:00:47] [INFO] Concatenating street name and type
[2026-02-09 18:00:47] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:00:47] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:00:47] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:00:47] [INFO] Number of extracted fields: 29
[2026-02-09 18:00:47] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:00:47] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:00:47] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:00:47] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:00:47] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:00:47] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:00:47] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:00:47] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:00:47] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:00:47] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:00:47] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:00:47] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:00:47] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:00:48] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:00:48] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:00:48] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:00:51] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:00:51] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130046220.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209130046220.xml
[2026-02-09 18:00:51] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:06:50] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130650433.xml
[2026-02-09 18:06:50] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130650433.xml for user: 68920395733981a47
[2026-02-09 18:06:50] [INFO] File size: 23388 bytes
[2026-02-09 18:07:26] [INFO] Created FTPFiles record with ID: 698a225e82cd06fdd
[2026-02-09 18:07:26] [INFO] About to extract fields from XML. File size: 23388 bytes
[2026-02-09 18:07:26] [INFO] Number of mappings: 24
[2026-02-09 18:07:26] [INFO] Starting XML parsing. Content length: 23388
[2026-02-09 18:07:26] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:07:26] [INFO] Processing 24 field mappings
[2026-02-09 18:07:26] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:07:26] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:07:26] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:07:26] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:07:26] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:07:26] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:07:26] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:07:26] [INFO]   -> Found value: 37379
[2026-02-09 18:07:26] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:07:26] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:07:26] [INFO]   -> Found value: 1856
[2026-02-09 18:07:26] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:07:26] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:07:26] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:07:26] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:07:26] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:07:26] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:07:26] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:07:26] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:07:26] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:07:26] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:07:26] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:07:26] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:07:26] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'onScene' = null
[2026-02-09 18:07:26] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:07:26] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:07:26] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:07:26] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:07:26] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:07:26] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:07:26] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:07:26] [INFO]   -> Found value: -85.125438
[2026-02-09 18:07:26] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:07:26] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:07:26] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:07:26] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:07:26] [INFO]   -> Found value: E2SF
[2026-02-09 18:07:26] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:07:26] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:07:26] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:07:26] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:07:26] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:07:26] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 18:07:26] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:07:26] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:07:26] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:07:26] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:07:26] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:07:26] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:07:26] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:07:26] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:07:26] [INFO]   -> Found value: LN
[2026-02-09 18:07:26] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:07:26] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:07:26] [INFO]   -> Found value: 26-000015
[2026-02-09 18:07:26] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 18:07:26] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 18:07:26] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:07:26] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:07:26] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:07:26] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:07:26] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:07:26] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:07:26] [INFO] Found 13 elements for 'Comment', concatenating 13 non-empty values
[2026-02-09 18:07:26] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:07:26] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]"
[2026-02-09 18:07:26] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]"
[2026-02-09 18:07:26] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:07:26] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:07:26] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:07:26] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:07:26] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:07:26] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:07:26] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:07:26] [INFO] Concatenating street name and type
[2026-02-09 18:07:26] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:07:26] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:07:26] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":null,"cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:07:26] [INFO] Number of extracted fields: 29
[2026-02-09 18:07:26] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:07:26] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:07:26] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:07:26] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:07:26] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:07:26] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:07:27] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:07:27] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:07:27] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:07:27] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:07:27] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:07:27] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:07:27] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:07:28] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:07:28] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:07:28] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:07:31] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:07:31] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130650433.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209130650433.xml
[2026-02-09 18:07:31] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:07:31] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130710699.xml
[2026-02-09 18:07:31] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130710699.xml for user: 68920395733981a47
[2026-02-09 18:07:31] [INFO] File size: 23544 bytes
[2026-02-09 18:08:02] [INFO] Created FTPFiles record with ID: 698a2282457277376
[2026-02-09 18:08:02] [INFO] About to extract fields from XML. File size: 23544 bytes
[2026-02-09 18:08:02] [INFO] Number of mappings: 24
[2026-02-09 18:08:02] [INFO] Starting XML parsing. Content length: 23544
[2026-02-09 18:08:02] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:08:02] [INFO] Processing 24 field mappings
[2026-02-09 18:08:02] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:08:02] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:08:02] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:08:02] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:08:02] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:08:02] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:08:02] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:08:02] [INFO]   -> Found value: 37379
[2026-02-09 18:08:02] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:08:02] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:08:02] [INFO]   -> Found value: 1856
[2026-02-09 18:08:02] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:08:02] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:08:02] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:08:02] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:08:02] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:08:02] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:08:02] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:08:02] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:08:02] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:08:02] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:08:02] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:08:02] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:08:02] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:08:02] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:08:02] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:08:02] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:08:02] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:08:02] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:08:02] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:08:02] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:08:02] [INFO]   -> Found value: -85.125438
[2026-02-09 18:08:02] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:08:02] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:08:02] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:08:02] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:08:02] [INFO]   -> Found value: E2SF
[2026-02-09 18:08:02] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:08:02] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:08:02] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:08:02] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:08:02] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:08:02] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 18:08:02] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:08:02] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:08:02] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:08:02] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:08:02] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:08:02] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:08:02] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:08:02] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:08:02] [INFO]   -> Found value: LN
[2026-02-09 18:08:02] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:08:02] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:08:02] [INFO]   -> Found value: 26-000271
[2026-02-09 18:08:02] [INFO]   -> Set field 'incidentInternalId' = "26-000271"
[2026-02-09 18:08:02] [INFO]   -> Set field 'dispatchRunNumber' = "26-000271"
[2026-02-09 18:08:02] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:08:02] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:08:02] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:08:02] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:08:02] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:08:02] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:08:02] [INFO] Found 13 elements for 'Comment', concatenating 13 non-empty values
[2026-02-09 18:08:02] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:08:02] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]"
[2026-02-09 18:08:02] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]"
[2026-02-09 18:08:02] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:08:02] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:08:02] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:08:02] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:08:02] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:08:02] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:08:02] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:08:02] [INFO] Concatenating street name and type
[2026-02-09 18:08:02] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:08:02] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:08:02] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000271","dispatchRunNumber":"26-000271","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:08:02] [INFO] Number of extracted fields: 29
[2026-02-09 18:08:02] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:08:02] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:08:02] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:08:02] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:08:02] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:08:02] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:08:02] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:08:02] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:08:02] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:08:02] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:08:32] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:08:32] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:08:32] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:08:33] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:08:33] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:08:33] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:08:36] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:08:36] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130710699.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209130710699.xml
[2026-02-09 18:08:36] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:08:36] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130720825.xml
[2026-02-09 18:08:36] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130720825.xml for user: 68920395733981a47
[2026-02-09 18:08:36] [INFO] File size: 23625 bytes
[2026-02-09 18:09:00] [INFO] Created FTPFiles record with ID: 698a22bcc75d4e2c0
[2026-02-09 18:09:00] [INFO] About to extract fields from XML. File size: 23625 bytes
[2026-02-09 18:09:00] [INFO] Number of mappings: 24
[2026-02-09 18:09:00] [INFO] Starting XML parsing. Content length: 23625
[2026-02-09 18:09:00] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:09:00] [INFO] Processing 24 field mappings
[2026-02-09 18:09:00] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:09:00] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:09:00] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:09:00] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:09:00] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:09:00] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:09:00] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:09:00] [INFO]   -> Found value: 37379
[2026-02-09 18:09:00] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:09:00] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:09:00] [INFO]   -> Found value: 1856
[2026-02-09 18:09:00] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:09:00] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:09:00] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:09:00] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:09:00] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:09:00] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:09:00] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:09:00] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:09:00] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:09:00] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:09:00] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:09:00] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:09:00] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:09:00] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:09:00] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:09:00] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:09:00] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:09:00] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:09:00] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:09:00] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:09:00] [INFO]   -> Found value: -85.125438
[2026-02-09 18:09:00] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:09:00] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:09:00] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:09:00] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:09:00] [INFO]   -> Found value: E2SF
[2026-02-09 18:09:00] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:09:00] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:09:00] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:09:00] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:09:00] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:09:00] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'timeonscene' = null
[2026-02-09 18:09:00] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:09:00] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:09:00] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:09:00] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:09:00] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:09:00] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:09:00] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:09:00] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:09:00] [INFO]   -> Found value: LN
[2026-02-09 18:09:00] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:09:00] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:09:00] [INFO]   -> Found value: 26-000271
[2026-02-09 18:09:00] [INFO]   -> Set field 'incidentInternalId' = "26-000271"
[2026-02-09 18:09:00] [INFO]   -> Set field 'dispatchRunNumber' = "26-000271"
[2026-02-09 18:09:00] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:09:00] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:09:00] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:09:00] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:09:00] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:09:00] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:09:00] [INFO] Found 13 elements for 'Comment', concatenating 13 non-empty values
[2026-02-09 18:09:00] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:09:00] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]"
[2026-02-09 18:09:00] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]"
[2026-02-09 18:09:00] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:09:00] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:09:00] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:09:00] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:09:00] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:09:00] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:09:00] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:09:00] [INFO] Concatenating street name and type
[2026-02-09 18:09:00] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:09:00] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:09:00] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":null,"timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000271","dispatchRunNumber":"26-000271","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:09:00] [INFO] Number of extracted fields: 29
[2026-02-09 18:09:00] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:09:00] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:09:00] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:09:00] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:09:01] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:09:01] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:09:29] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:09:29] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:09:29] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:09:29] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:09:30] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:09:30] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:09:30] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:09:30] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:09:30] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:09:30] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:09:33] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:09:33] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130720825.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209130720825.xml
[2026-02-09 18:09:33] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:09:33] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130816544.xml
[2026-02-09 18:09:33] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130816544.xml for user: 68920395733981a47
[2026-02-09 18:09:33] [INFO] File size: 23706 bytes
[2026-02-09 18:09:33] [INFO] Created FTPFiles record with ID: 698a22dd86d198c36
[2026-02-09 18:09:33] [INFO] About to extract fields from XML. File size: 23706 bytes
[2026-02-09 18:09:33] [INFO] Number of mappings: 24
[2026-02-09 18:09:33] [INFO] Starting XML parsing. Content length: 23706
[2026-02-09 18:09:33] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:09:33] [INFO] Processing 24 field mappings
[2026-02-09 18:09:33] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:09:33] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:09:33] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:09:33] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:09:33] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:09:33] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:09:33] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:09:33] [INFO]   -> Found value: 37379
[2026-02-09 18:09:33] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:09:33] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:09:33] [INFO]   -> Found value: 1856
[2026-02-09 18:09:33] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:09:33] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:09:33] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:09:33] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:09:33] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:09:33] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:09:33] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:09:33] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:09:33] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:09:33] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:09:33] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:09:33] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:09:33] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:09:33] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:09:33] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:09:33] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:09:33] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:09:33] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:09:33] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:09:33] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:09:33] [INFO]   -> Found value: -85.125438
[2026-02-09 18:09:33] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:09:33] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:09:33] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:09:33] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:09:33] [INFO]   -> Found value: E2SF
[2026-02-09 18:09:33] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:09:33] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:09:33] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:09:33] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:09:33] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:09:33] [INFO]   -> Found value: 2026-02-09T13:08:13.333-05:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'timeonscene' = "2026-02-09 18:08:13"
[2026-02-09 18:09:33] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:09:33] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:09:33] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:09:33] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:09:33] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:09:33] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:09:33] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:09:33] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:09:33] [INFO]   -> Found value: LN
[2026-02-09 18:09:33] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:09:33] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:09:33] [INFO]   -> Found value: 26-000015
[2026-02-09 18:09:33] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 18:09:33] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 18:09:33] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:09:33] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:09:33] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:09:33] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:09:33] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:09:33] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:09:33] [INFO] Found 13 elements for 'Comment', concatenating 13 non-empty values
[2026-02-09 18:09:33] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:09:33] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]"
[2026-02-09 18:09:33] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]"
[2026-02-09 18:09:33] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:09:33] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:09:33] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:09:33] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:09:33] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:09:33] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:09:33] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:09:33] [INFO] Concatenating street name and type
[2026-02-09 18:09:33] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:09:33] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:09:33] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":"2026-02-09 18:08:13","timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:09:33] [INFO] Number of extracted fields: 29
[2026-02-09 18:09:33] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:09:33] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:09:33] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:09:33] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:09:46] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:09:46] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:09:47] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:09:47] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:09:47] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:09:47] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:09:47] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:09:47] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:09:47] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:09:47] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:09:47] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:09:47] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:09:51] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:09:51] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130816544.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209130816544.xml
[2026-02-09 18:09:51] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:09:51] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130831740.xml
[2026-02-09 18:09:51] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130831740.xml for user: 68920395733981a47
[2026-02-09 18:09:51] [INFO] File size: 23812 bytes
[2026-02-09 18:09:51] [INFO] Created FTPFiles record with ID: 698a22ef67005d95e
[2026-02-09 18:09:51] [INFO] About to extract fields from XML. File size: 23812 bytes
[2026-02-09 18:09:51] [INFO] Number of mappings: 24
[2026-02-09 18:09:51] [INFO] Starting XML parsing. Content length: 23812
[2026-02-09 18:09:51] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:09:51] [INFO] Processing 24 field mappings
[2026-02-09 18:09:51] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:09:51] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:09:51] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:09:51] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:09:51] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:09:51] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:09:51] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:09:51] [INFO]   -> Found value: 37379
[2026-02-09 18:09:51] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:09:51] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:09:51] [INFO]   -> Found value: 1856
[2026-02-09 18:09:51] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:09:51] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:09:51] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:09:51] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:09:51] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:09:51] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:09:51] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:09:51] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:09:51] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:09:51] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:09:51] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:09:51] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:09:51] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:09:51] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:09:51] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:09:51] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:09:51] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:09:51] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:09:51] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:09:51] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:09:51] [INFO]   -> Found value: -85.125438
[2026-02-09 18:09:51] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:09:51] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:09:51] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:09:51] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:09:51] [INFO]   -> Found value: E2SF
[2026-02-09 18:09:51] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:09:51] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:09:51] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:09:51] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:09:51] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:09:51] [INFO]   -> Found value: 2026-02-09T13:08:13.333-05:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'timeonscene' = "2026-02-09 18:08:13"
[2026-02-09 18:09:51] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:09:51] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:09:51] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:09:51] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:09:51] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:09:51] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:09:51] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:09:51] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:09:51] [INFO]   -> Found value: LN
[2026-02-09 18:09:51] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:09:51] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:09:51] [INFO]   -> Found value: 26-000015
[2026-02-09 18:09:51] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 18:09:51] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 18:09:51] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:09:51] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:09:51] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:09:51] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:09:51] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:09:51] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:09:51] [INFO] Found 14 elements for 'Comment', concatenating 14 non-empty values
[2026-02-09 18:09:51] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:09:51] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]"
[2026-02-09 18:09:51] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]"
[2026-02-09 18:09:51] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:09:51] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:09:51] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:09:51] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:09:51] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:09:51] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:09:51] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:09:51] [INFO] Concatenating street name and type
[2026-02-09 18:09:51] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:09:51] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:09:51] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":"2026-02-09 18:08:13","timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:09:51] [INFO] Number of extracted fields: 29
[2026-02-09 18:09:51] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:09:51] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:09:51] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:09:51] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:10:03] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:10:03] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:10:04] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:10:04] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:10:04] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:10:04] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:10:04] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:10:04] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:10:20] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:10:20] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:10:20] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:10:20] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:10:23] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:10:23] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209130831740.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209130831740.xml
[2026-02-09 18:10:23] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:11:13] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131113617.xml
[2026-02-09 18:11:13] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131113617.xml for user: 68920395733981a47
[2026-02-09 18:11:13] [INFO] File size: 23910 bytes
[2026-02-09 18:11:43] [INFO] Created FTPFiles record with ID: 698a235f6a92adbc9
[2026-02-09 18:11:43] [INFO] About to extract fields from XML. File size: 23910 bytes
[2026-02-09 18:11:43] [INFO] Number of mappings: 24
[2026-02-09 18:11:43] [INFO] Starting XML parsing. Content length: 23910
[2026-02-09 18:11:43] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:11:43] [INFO] Processing 24 field mappings
[2026-02-09 18:11:43] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:11:43] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:11:43] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:11:43] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:11:43] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:11:43] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:11:43] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:11:43] [INFO]   -> Found value: 37379
[2026-02-09 18:11:43] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:11:43] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:11:43] [INFO]   -> Found value: 1856
[2026-02-09 18:11:43] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:11:43] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:11:43] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:11:43] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:11:43] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:11:43] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:11:43] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:11:43] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:11:43] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:11:43] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:11:43] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:11:43] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:11:43] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:11:43] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:11:43] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:11:43] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:11:43] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:11:43] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:11:43] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:11:43] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:11:43] [INFO]   -> Found value: -85.125438
[2026-02-09 18:11:43] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:11:43] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:11:43] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:11:43] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:11:43] [INFO]   -> Found value: E2SF
[2026-02-09 18:11:43] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:11:43] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:11:43] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:11:43] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:11:43] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:11:43] [INFO]   -> Found value: 2026-02-09T13:08:13.333-05:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'timeonscene' = "2026-02-09 18:08:13"
[2026-02-09 18:11:43] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:11:43] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:11:43] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:11:43] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:11:43] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:11:43] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:11:43] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:11:43] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:11:43] [INFO]   -> Found value: LN
[2026-02-09 18:11:43] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:11:43] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:11:43] [INFO]   -> Found value: 26-000015
[2026-02-09 18:11:43] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 18:11:43] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 18:11:43] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:11:43] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:11:43] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:11:43] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:11:43] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:11:43] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:11:43] [INFO] Found 15 elements for 'Comment', concatenating 15 non-empty values
[2026-02-09 18:11:43] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:11:43] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]"
[2026-02-09 18:11:43] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]"
[2026-02-09 18:11:43] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:11:43] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:11:43] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:11:43] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:11:43] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:11:43] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:11:43] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:11:43] [INFO] Concatenating street name and type
[2026-02-09 18:11:43] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:11:43] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:11:43] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":"2026-02-09 18:08:13","timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:11:43] [INFO] Number of extracted fields: 29
[2026-02-09 18:11:43] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:11:43] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:11:43] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:11:43] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:11:43] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:11:43] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:11:43] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:11:43] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:11:43] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:11:43] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:11:44] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:11:44] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:11:45] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:11:45] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:11:45] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:11:46] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:11:50] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:11:50] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131113617.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209131113617.xml
[2026-02-09 18:11:50] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:12:24] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131224527.xml
[2026-02-09 18:12:24] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131224527.xml for user: 68920395733981a47
[2026-02-09 18:12:24] [INFO] File size: 24016 bytes
[2026-02-09 18:12:25] [INFO] Created FTPFiles record with ID: 698a23892ff7fee1a
[2026-02-09 18:12:25] [INFO] About to extract fields from XML. File size: 24016 bytes
[2026-02-09 18:12:25] [INFO] Number of mappings: 24
[2026-02-09 18:12:25] [INFO] Starting XML parsing. Content length: 24016
[2026-02-09 18:12:25] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:12:25] [INFO] Processing 24 field mappings
[2026-02-09 18:12:25] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:12:25] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:12:25] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:12:25] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:12:25] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:12:25] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:12:25] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:12:25] [INFO]   -> Found value: 37379
[2026-02-09 18:12:25] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:12:25] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:12:25] [INFO]   -> Found value: 1856
[2026-02-09 18:12:25] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:12:25] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:12:25] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:12:25] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:12:25] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:12:25] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:12:25] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:12:25] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:12:25] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:12:25] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:12:25] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:12:25] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:12:25] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:12:25] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:12:25] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:12:25] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:12:25] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:12:25] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:12:25] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:12:25] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:12:25] [INFO]   -> Found value: -85.125438
[2026-02-09 18:12:25] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:12:25] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:12:25] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:12:25] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:12:25] [INFO]   -> Found value: E2SF
[2026-02-09 18:12:25] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:12:25] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:12:25] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:12:25] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:12:25] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:12:25] [INFO]   -> Found value: 2026-02-09T13:08:13.333-05:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'timeonscene' = "2026-02-09 18:08:13"
[2026-02-09 18:12:25] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:12:25] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:12:25] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:12:25] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:12:25] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:12:25] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:12:25] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:12:25] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:12:25] [INFO]   -> Found value: LN
[2026-02-09 18:12:25] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:12:25] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:12:25] [INFO]   -> Found value: 26-000015
[2026-02-09 18:12:25] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 18:12:25] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 18:12:25] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:12:25] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:12:25] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:12:25] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:12:25] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:12:25] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:12:25] [INFO] Found 16 elements for 'Comment', concatenating 16 non-empty values
[2026-02-09 18:12:25] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:12:25] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]"
[2026-02-09 18:12:25] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]"
[2026-02-09 18:12:25] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:12:25] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:12:25] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:12:25] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:12:25] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:12:25] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:12:25] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:12:25] [INFO] Concatenating street name and type
[2026-02-09 18:12:25] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:12:25] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:12:25] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":"2026-02-09 18:08:13","timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:12:25] [INFO] Number of extracted fields: 29
[2026-02-09 18:12:25] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:12:25] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:12:25] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:12:25] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:12:25] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:12:25] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:12:25] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:12:25] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:12:25] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:12:25] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:12:26] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:12:26] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:12:26] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:12:26] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:12:26] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:12:26] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:12:30] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:12:30] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131224527.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209131224527.xml
[2026-02-09 18:12:30] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:18:54] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131853918.xml
[2026-02-09 18:18:54] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131853918.xml for user: 68920395733981a47
[2026-02-09 18:18:54] [INFO] File size: 24429 bytes
[2026-02-09 18:19:08] [INFO] Created FTPFiles record with ID: 698a251ccfc828a8b
[2026-02-09 18:19:08] [INFO] About to extract fields from XML. File size: 24429 bytes
[2026-02-09 18:19:08] [INFO] Number of mappings: 24
[2026-02-09 18:19:08] [INFO] Starting XML parsing. Content length: 24429
[2026-02-09 18:19:08] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:19:08] [INFO] Processing 24 field mappings
[2026-02-09 18:19:08] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:19:08] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:19:08] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:19:08] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:19:08] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:19:08] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:19:08] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:19:08] [INFO]   -> Found value: 37379
[2026-02-09 18:19:08] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:19:08] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:19:08] [INFO]   -> Found value: 1856
[2026-02-09 18:19:08] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:19:08] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:19:08] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:19:08] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:19:08] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:19:08] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:19:08] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:19:08] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:19:08] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:19:08] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:19:08] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:19:08] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:19:08] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:19:08] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:19:08] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'cleared' = null
[2026-02-09 18:19:08] [INFO]   -> Set field 'inService' = null
[2026-02-09 18:19:08] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:19:08] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:19:08] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:19:08] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:19:08] [INFO]   -> Found value: -85.125438
[2026-02-09 18:19:08] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:19:08] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:19:08] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:19:08] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:19:08] [INFO]   -> Found value: E2SF
[2026-02-09 18:19:08] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:19:08] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:19:08] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:19:08] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'timeunitclear' = null
[2026-02-09 18:19:08] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:19:08] [INFO]   -> Found value: 2026-02-09T13:08:13.333-05:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'timeonscene' = "2026-02-09 18:08:13"
[2026-02-09 18:19:08] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:19:08] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:19:08] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:19:08] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:19:08] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:19:08] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:19:08] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:19:08] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:19:08] [INFO]   -> Found value: LN
[2026-02-09 18:19:08] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:19:08] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:19:08] [INFO]   -> Found value: 26-000271
[2026-02-09 18:19:08] [INFO]   -> Set field 'incidentInternalId' = "26-000271"
[2026-02-09 18:19:08] [INFO]   -> Set field 'dispatchRunNumber' = "26-000271"
[2026-02-09 18:19:08] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:19:08] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:19:08] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:19:08] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:19:08] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:19:08] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:19:08] [INFO] Found 16 elements for 'Comment', concatenating 16 non-empty values
[2026-02-09 18:19:08] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:19:08] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]"
[2026-02-09 18:19:08] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]"
[2026-02-09 18:19:08] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:19:08] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:19:08] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:19:08] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:19:08] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:19:08] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:19:08] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:19:08] [INFO] Concatenating street name and type
[2026-02-09 18:19:08] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:19:08] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:19:08] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":null,"inService":null,"nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":null,"timeonscene":"2026-02-09 18:08:13","timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000271","dispatchRunNumber":"26-000271","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:19:08] [INFO] Number of extracted fields: 29
[2026-02-09 18:19:08] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:19:08] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:19:08] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:19:08] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:19:09] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:19:09] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:19:09] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:19:09] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:19:09] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:19:09] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:19:09] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:19:09] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:19:22] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:19:22] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:19:22] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:19:22] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:19:26] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:19:26] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209131853918.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209131853918.xml
[2026-02-09 18:19:26] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:20:50] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209132050179.xml
[2026-02-09 18:20:50] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209132050179.xml for user: 68920395733981a47
[2026-02-09 18:20:50] [INFO] File size: 25768 bytes
[2026-02-09 18:20:50] [INFO] Created FTPFiles record with ID: 698a2582cae14c09b
[2026-02-09 18:20:50] [INFO] About to extract fields from XML. File size: 25768 bytes
[2026-02-09 18:20:50] [INFO] Number of mappings: 24
[2026-02-09 18:20:50] [INFO] Starting XML parsing. Content length: 25768
[2026-02-09 18:20:50] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:20:50] [INFO] Processing 24 field mappings
[2026-02-09 18:20:50] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:20:50] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:20:50] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:20:50] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:20:50] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:20:50] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:20:50] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:20:50] [INFO]   -> Found value: 37379
[2026-02-09 18:20:50] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:20:50] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:20:50] [INFO]   -> Found value: 1856
[2026-02-09 18:20:50] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:20:50] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:20:50] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:20:50] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:20:50] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:20:50] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:20:50] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:20:50] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:20:50] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:20:50] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:20:50] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T13:20:49.587-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'cleared' = "2026-02-09 18:20:49"
[2026-02-09 18:20:50] [INFO]   -> Set field 'inService' = "2026-02-09 18:20:49"
[2026-02-09 18:20:50] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:20:50] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:20:50] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:20:50] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:20:50] [INFO]   -> Found value: -85.125438
[2026-02-09 18:20:50] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:20:50] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:20:50] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:20:50] [INFO]   -> Found value: E2SF
[2026-02-09 18:20:50] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:20:50] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:20:50] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T13:20:49.587-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'timeunitclear' = "2026-02-09 18:20:49"
[2026-02-09 18:20:50] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T13:08:13.333-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'timeonscene' = "2026-02-09 18:08:13"
[2026-02-09 18:20:50] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:20:50] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:20:50] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:20:50] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:20:50] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:20:50] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:20:50] [INFO]   -> Found value: LN
[2026-02-09 18:20:50] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:20:50] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:20:50] [INFO]   -> Found value: 26-000015
[2026-02-09 18:20:50] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 18:20:50] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 18:20:50] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:20:50] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:20:50] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:20:50] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:20:50] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:20:50] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:20:50] [INFO] Found 16 elements for 'Comment', concatenating 16 non-empty values
[2026-02-09 18:20:50] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:20:50] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]"
[2026-02-09 18:20:50] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]"
[2026-02-09 18:20:50] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:20:50] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:20:50] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:20:50] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:20:50] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:20:50] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:20:50] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:20:50] [INFO] Concatenating street name and type
[2026-02-09 18:20:50] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:20:50] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:20:50] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":"2026-02-09 18:20:49","inService":"2026-02-09 18:20:49","nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":"2026-02-09 18:20:49","timeonscene":"2026-02-09 18:08:13","timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:20:50] [INFO] Number of extracted fields: 29
[2026-02-09 18:20:50] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:20:50] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:20:50] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:20:50] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:20:51] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:20:51] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:20:51] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:20:51] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:20:51] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:20:51] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:20:51] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:20:51] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:20:51] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:20:52] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:20:52] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:20:52] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:20:56] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:20:56] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209132050179.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209132050179.xml
[2026-02-09 18:20:56] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 18:23:16] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209132316508.xml
[2026-02-09 18:23:16] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209132316508.xml for user: 68920395733981a47
[2026-02-09 18:23:16] [INFO] File size: 25883 bytes
[2026-02-09 18:23:17] [INFO] Created FTPFiles record with ID: 698a2615270beef18
[2026-02-09 18:23:17] [INFO] About to extract fields from XML. File size: 25883 bytes
[2026-02-09 18:23:17] [INFO] Number of mappings: 24
[2026-02-09 18:23:17] [INFO] Starting XML parsing. Content length: 25883
[2026-02-09 18:23:17] [INFO] XML parsed successfully. Root element: CombinedIncidentVehicleData
[2026-02-09 18:23:17] [INFO] Processing 24 field mappings
[2026-02-09 18:23:17] [INFO] Mapping #1: Extracting 'IncidentData.ProblemName' => 'incidentTypeValue1'
[2026-02-09 18:23:17] [INFO]   -> Found value: FGRASS-Brush Fire
[2026-02-09 18:23:17] [INFO]   -> Set field 'incidentTypeValue1' = "FGRASS-Brush Fire"
[2026-02-09 18:23:17] [INFO] Mapping #2: Extracting 'IncidentData.LocationName' => 'businessName'
[2026-02-09 18:23:17] [INFO]   -> Found value: ,1856 SUGAR MAPLE LN
[2026-02-09 18:23:17] [INFO]   -> Set field 'businessName' = ",1856 SUGAR MAPLE LN"
[2026-02-09 18:23:17] [INFO] Mapping #3: Extracting 'IncidentData.PostalCode' => 'nERISIncidentPostalCode'
[2026-02-09 18:23:17] [INFO]   -> Found value: 37379
[2026-02-09 18:23:17] [INFO]   -> Set field 'nERISIncidentPostalCode' = 37379
[2026-02-09 18:23:17] [INFO] Mapping #4: Extracting 'IncidentData.AddressHouseNumber' => 'incidentLocationStreetNumber'
[2026-02-09 18:23:17] [INFO]   -> Found value: 1856
[2026-02-09 18:23:17] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1856
[2026-02-09 18:23:17] [INFO] Mapping #5: Extracting 'IncidentData.AddressStreetName' => 'streetName'
[2026-02-09 18:23:17] [INFO]   -> Found value: SUGAR MAPLE
[2026-02-09 18:23:17] [INFO]   -> Set field 'streetName' = "SUGAR MAPLE"
[2026-02-09 18:23:17] [INFO] Mapping #6: Extracting 'IncidentData.CrossStreet' => 'incidentLocationCross'
[2026-02-09 18:23:17] [INFO]   -> Found value: THATCHER CREST DR/No Cross Street
[2026-02-09 18:23:17] [INFO]   -> Set field 'incidentLocationCross' = "THATCHER CREST DR\/No Cross Street"
[2026-02-09 18:23:17] [INFO] Mapping #7: Extracting 'IncidentData.ResponseDate' => 'alarm'
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T12:48:13.41-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'alarm' = "2026-02-09 17:48:13"
[2026-02-09 18:23:17] [INFO] Mapping #8: Extracting 'IncidentData.TimeFirstUnitEnroute' => 'enroute'
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T12:51:12.923-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'enroute' = "2026-02-09 17:51:12"
[2026-02-09 18:23:17] [INFO] Mapping #9: Extracting 'IncidentData.TimeFirstUnitArrived' => 'onScene'
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T13:07:08.647-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'onScene' = "2026-02-09 18:07:08"
[2026-02-09 18:23:17] [INFO] Mapping #10: Extracting 'IncidentData.TimeCallClosed' => ["cleared","inService"]
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T13:20:49.587-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'cleared' = "2026-02-09 18:20:49"
[2026-02-09 18:23:17] [INFO]   -> Set field 'inService' = "2026-02-09 18:20:49"
[2026-02-09 18:23:17] [INFO] Mapping #11: Extracting 'IncidentData.Latitude' => 'nERISIncidentLatitude'
[2026-02-09 18:23:17] [INFO]   -> Found value: 35.247910999999995
[2026-02-09 18:23:17] [INFO]   -> Set field 'nERISIncidentLatitude' = 35.24791099999999488545654457993805408477783203125
[2026-02-09 18:23:17] [INFO] Mapping #12: Extracting 'IncidentData.Longitude' => 'nERISIncidentLongitude'
[2026-02-09 18:23:17] [INFO]   -> Found value: -85.125438
[2026-02-09 18:23:17] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.125438000000002602973836474120616912841796875
[2026-02-09 18:23:17] [INFO] Mapping #13: Extracting 'IncidentData.TimeFirstUnitAssigned' => 'dispatched'
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T12:50:02.593-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'dispatched' = "2026-02-09 17:50:02"
[2026-02-09 18:23:17] [INFO] Mapping #14: Extracting 'Vehicles.VehicleData[0].UnitName' => ["cADVehicleID","name"]
[2026-02-09 18:23:17] [INFO]   -> Found value: E2SF
[2026-02-09 18:23:17] [INFO]   -> Set field 'cADVehicleID' = "E2SF"
[2026-02-09 18:23:17] [INFO]   -> Set field 'name' = "E2SF"
[2026-02-09 18:23:17] [INFO] Mapping #15: Extracting 'Vehicles.VehicleData[0].TimeClearedCall' => 'timeunitclear'
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T13:20:49.587-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'timeunitclear' = "2026-02-09 18:20:49"
[2026-02-09 18:23:17] [INFO] Mapping #16: Extracting 'Vehicles.VehicleData[0].TimeArrivedAtScene' => 'timeonscene'
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T13:08:13.333-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'timeonscene' = "2026-02-09 18:08:13"
[2026-02-09 18:23:17] [INFO] Mapping #17: Extracting 'Vehicles.VehicleData[0].TimeStaged' => 'timestaging'
[2026-02-09 18:23:17] [INFO]   -> Found value: 0001-01-01T00:00:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'timestaging' = null
[2026-02-09 18:23:17] [INFO] Mapping #18: Extracting 'Vehicles.VehicleData[0].TimeEnroute' => 'timeenroutetoscene'
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T13:00:43.427-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'timeenroutetoscene' = "2026-02-09 18:00:43"
[2026-02-09 18:23:17] [INFO] Mapping #19: Extracting 'Vehicles.VehicleData[0].TimeAssigned' => 'timedispatch'
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-09T13:00:43.41-05:00
[2026-02-09 18:23:17] [INFO]   -> Set field 'timedispatch' = "2026-02-09 18:00:43"
[2026-02-09 18:23:17] [INFO] Mapping #20: Extracting 'IncidentData.AddressStreetType' => 'streetType'
[2026-02-09 18:23:17] [INFO]   -> Found value: LN
[2026-02-09 18:23:17] [INFO]   -> Set field 'streetType' = "LN"
[2026-02-09 18:23:17] [INFO] Mapping #21: Extracting 'IncidentData.UnitJurisdictionCaseNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 18:23:17] [INFO]   -> Found value: 26-000015
[2026-02-09 18:23:17] [INFO]   -> Set field 'incidentInternalId' = "26-000015"
[2026-02-09 18:23:17] [INFO]   -> Set field 'dispatchRunNumber' = "26-000015"
[2026-02-09 18:23:17] [INFO] Mapping #22: Extracting 'IncidentData.IncidentNumber' => ["policeReportNumber","cADNumber"]
[2026-02-09 18:23:17] [INFO]   -> Found value: 2026-02-11841
[2026-02-09 18:23:17] [INFO]   -> Set field 'policeReportNumber' = "2026-02-11841"
[2026-02-09 18:23:17] [INFO]   -> Set field 'cADNumber' = "2026-02-11841"
[2026-02-09 18:23:17] [INFO] Mapping #23: Extracting 'IncidentData.Comments.Comment' => ["dispatchNotes","cADLog"]
[2026-02-09 18:23:17] [INFO] Target field 'dispatchNotes' is configured for multi-value concatenation
[2026-02-09 18:23:17] [INFO] Found 17 elements for 'Comment', concatenating 17 non-empty values
[2026-02-09 18:23:17] [INFO]   -> Found value: 02/09/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842
02/09/202...
[2026-02-09 18:23:17] [INFO]   -> Set field 'dispatchNotes' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]\n02\/09\/2026 13:23:10 BOUTWELL_J              [17] [Law] has closed their incident [2026-02-11842]"
[2026-02-09 18:23:17] [INFO]   -> Set field 'cADLog' = "02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]\n02\/09\/2026 13:23:10 BOUTWELL_J              [17] [Law] has closed their incident [2026-02-11842]"
[2026-02-09 18:23:17] [INFO] Mapping #24: Extracting 'IncidentData.AgencyIdentifier' => 'cADAgencyIdentifier'
[2026-02-09 18:23:17] [INFO]   -> Multi-agency mode: Converting scoped path 'IncidentData.AgencyIdentifier' to global 'AgencyIdentifier' for cADAgencyIdentifier
[2026-02-09 18:23:17] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 18:23:17] [INFO] Found 7 elements for 'AgencyIdentifier', concatenating 7 non-empty values
[2026-02-09 18:23:17] [INFO]   -> Found value: SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD
[2026-02-09 18:23:17] [INFO]   -> Set field 'cADAgencyIdentifier' = "SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD"
[2026-02-09 18:23:17] [INFO] Finished extracting fields. Total fields extracted: 29
[2026-02-09 18:23:17] [INFO] Concatenating street name and type
[2026-02-09 18:23:17] [INFO]   -> Combined street name: SUGAR MAPLE LN
[2026-02-09 18:23:17] [INFO] Built locationCoordinates from lat/lng: 35.247911,-85.125438
[2026-02-09 18:23:17] [INFO] Extracted parsing rules data: {"incidentTypeValue1":"FGRASS-Brush Fire","businessName":",1856 SUGAR MAPLE LN","nERISIncidentPostalCode":37379,"incidentLocationStreetNumber":1856,"streetName":"SUGAR MAPLE LN","incidentLocationCross":"THATCHER CREST DR\/No Cross Street","alarm":"2026-02-09 17:48:13","enroute":"2026-02-09 17:51:12","onScene":"2026-02-09 18:07:08","cleared":"2026-02-09 18:20:49","inService":"2026-02-09 18:20:49","nERISIncidentLatitude":35.24791099999999488545654457993805408477783203125,"nERISIncidentLongitude":-85.125438000000002602973836474120616912841796875,"dispatched":"2026-02-09 17:50:02","cADVehicleID":"E2SF","name":"E2SF","timeunitclear":"2026-02-09 18:20:49","timeonscene":"2026-02-09 18:08:13","timestaging":null,"timeenroutetoscene":"2026-02-09 18:00:43","timedispatch":"2026-02-09 18:00:43","incidentInternalId":"26-000015","dispatchRunNumber":"26-000015","policeReportNumber":"2026-02-11841","cADNumber":"2026-02-11841","dispatchNotes":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]\n02\/09\/2026 13:23:10 BOUTWELL_J              [17] [Law] has closed their incident [2026-02-11842]","cADLog":"02\/09\/2026 12:48:52 brown_e                 [1] Multi-Agency Law Incident #: 2026-02-11842\n02\/09\/2026 12:49:00 brown_e                 [2] SAYS NEIGHBOR'S GRASS IS ON FIRE [Shared]\n02\/09\/2026 12:49:06 brown_e                 [3] FIRE SPREADING TO RP'S BACKYARD [Shared]\n02\/09\/2026 12:49:22 brown_e                 [4] SAYS FIRE IS WITHIN 10FT OF NEIGHBOR'S HOUSE [Shared]\n02\/09\/2026 12:50:02 brown_e                 [5] FIRE COMING FROM BEHIND RP'S HOUSE  [Shared]\n02\/09\/2026 12:50:02 MAYS-AXIUM_C            [6] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Sequoyah VFD. Case Number(s): 26-000015 requested by H1700. [Shared]\n02\/09\/2026 12:50:13 BALL_G                  [7] Requested Case Number(s) issued for Incident #[2026-02-11842], Jurisdiction: Hamilton Co SO. Case Number(s): 26-005138.. [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 12:50:44 brown_e                 [8] RP DOES NOT THINK NEIGHBOR IS AWARE OF THE FIRE [Shared]\n02\/09\/2026 12:51:12 MAYS-AXIUM_C            [9] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Soddy Daisy FD. Case Number(s): 26-000143 requested by E1SD. [Shared]\n02\/09\/2026 12:54:14 MAYS-AXIUM_C            [10] Automatic Case Number(s) issued for Incident #[2026-02-11841], Jurisdiction: Dallas Bay VFD. Case Number(s): 26-000271 requested by H1300. [Shared]\n02\/09\/2026 12:57:39 MAYS-AXIUM_C            [11] E2 STATUS 2 [Shared]\n02\/09\/2026 12:58:32 BOUTWELL_J              [12] 1W5 - FIRE NOT VERY LARGE, BUT ENCOMPASSING SEVERAL PROPERTIES [Shared 2, 2026-02-11842 - FGRASS - 1856 SUGAR MAPLE LN]\n02\/09\/2026 13:06:48 MAYS-AXIUM_C            [13] CLOSEST HYDRANT IN FRONT OF 1736 SUGAR MAPLE [Shared]\n02\/09\/2026 13:08:30 MAYS-AXIUM_C            [14] ...LOOKING FOR A BOOSTER REEL [Shared]\n02\/09\/2026 13:11:09 MAYS-AXIUM_C            [15] FIRE OUT AT THIS TIME [Shared]\n02\/09\/2026 13:12:20 MAYS-AXIUM_C            [16] CANCEL ALL OUITS NOT ON SCENE [Shared]\n02\/09\/2026 13:23:10 BOUTWELL_J              [17] [Law] has closed their incident [2026-02-11842]","cADAgencyIdentifier":"SFD\nSFD\nDBFD\nDBFD\nDBFD\nSDFD\nSFD","locationCoordinates":"35.247911,-85.125438"}
[2026-02-09 18:23:17] [INFO] Number of extracted fields: 29
[2026-02-09 18:23:17] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD'
[2026-02-09 18:23:17] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SFD
SFD
DBFD
DBFD
DBFD
SDFD
SFD', Parsed IDs = ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"], Non-empty count = 7, Total agency count = 7, Assigned Agencies count = 2
[2026-02-09 18:23:17] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SFD","SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:23:17] [INFO] Attempting SAASClient lookup for AgencyCode 'SFD' (index 0) within mailbox's assigned agencies
[2026-02-09 18:23:17] [INFO] SUCCESS: Routed to agency 'Sequoyah Volunteer Fire Department' (ID: 681a1d681d6140e0c) at INDEX 0 based on AgencyCode 'SFD'
[2026-02-09 18:23:17] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["SFD","DBFD","DBFD","DBFD","SDFD","SFD"]
[2026-02-09 18:23:17] [INFO] Fetched 1 stations from Stations module for agency 'Sequoyah Volunteer Fire Department': ["681a4332a2e490051"]
[2026-02-09 18:23:17] [INFO] Final routing: saasclientId = 681a1d681d6140e0c, dispatchStationsIds = ["681a4332a2e490051"], matchedAgencyIndex = 0
[2026-02-09 18:23:17] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 7)
[2026-02-09 18:23:17] [INFO] Filtered cADAgencyIdentifier to: SFD
[2026-02-09 18:23:17] [INFO] Updated FTPFiles record saasclientId to routed agency: 681a1d681d6140e0c
[2026-02-09 18:23:17] [INFO] Found existing IncidentTypeMapping with ID: 698a1e0d3f3838b26
[2026-02-09 18:23:18] [INFO] Found existing Dispatch with cADNumber '2026-02-11841', ID: 698a1e1715effcbc8 - will update instead of create
[2026-02-09 18:23:41] [INFO] Updated existing Dispatches record with ID: 698a1e1715effcbc8
[2026-02-09 18:23:41] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 18:23:41] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 18:23:44] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 18:23:44] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68920395733981a47/INCCOMBINED_2026-02-11841_20260209132316508.xml: Failed to upload file to V2 FTP server: /INCCOMBINED_2026-02-11841_20260209132316508.xml
[2026-02-09 18:23:44] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 19:18:06] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014817_20260209_191806.XML
[2026-02-09 19:18:06] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014817_20260209_191806.XML for user: 68f1466aed072ad4a
[2026-02-09 19:18:06] [INFO] File size: 5252 bytes
[2026-02-09 19:18:06] [INFO] Created FTPFiles record with ID: 698a32eee198680b8
[2026-02-09 19:18:06] [INFO] About to extract fields from XML. File size: 5252 bytes
[2026-02-09 19:18:06] [INFO] Number of mappings: 28
[2026-02-09 19:18:06] [INFO] Starting XML parsing. Content length: 5252
[2026-02-09 19:18:06] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 19:18:06] [INFO] Processing 28 field mappings
[2026-02-09 19:18:06] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 19:18:06] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 19:18:06] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 19:18:06] [INFO] Found 4 elements for 'AgencyCode', concatenating 4 non-empty values
[2026-02-09 19:18:06] [INFO]   -> Found value: PCFD
EMS
PCSO
RESC
[2026-02-09 19:18:06] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nEMS\nPCSO\nRESC"
[2026-02-09 19:18:06] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 19:18:06] [INFO] Found 4 elements for 'ReportNumber', using FIRST value only
[2026-02-09 19:18:06] [INFO]   -> Found value: 2026000394
[2026-02-09 19:18:06] [INFO]   -> Set field 'incidentInternalId' = "2026000394"
[2026-02-09 19:18:06] [INFO]   -> Set field 'dispatchRunNumber' = "2026000394"
[2026-02-09 19:18:06] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 19:18:06] [INFO]   -> Found value: CHEST PAIN
[2026-02-09 19:18:06] [INFO]   -> Set field 'incidentTypeValue1' = "CHEST PAIN"
[2026-02-09 19:18:06] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 19:18:06] [INFO]   -> Found value: 2127
[2026-02-09 19:18:06] [INFO]   -> Set field 'incidentLocationStreetNumber' = 2127
[2026-02-09 19:18:06] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 19:18:06] [INFO]   -> Found value: TN
[2026-02-09 19:18:06] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 19:18:06] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 19:18:06] [INFO]   -> Found value: 38506
[2026-02-09 19:18:06] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38506
[2026-02-09 19:18:06] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 19:18:06] [INFO]   -> Found value: 36.10096
[2026-02-09 19:18:06] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.1009600000000006048139766789972782135009765625
[2026-02-09 19:18:06] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 19:18:06] [INFO]   -> Found value: -85.47588
[2026-02-09 19:18:06] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.4758800000000036334313335828483104705810546875
[2026-02-09 19:18:06] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 19:18:06] [INFO]   -> Found value: 2026-02-09 13:17:27
[2026-02-09 19:18:06] [INFO]   -> Set field 'alarm' = "2026-02-09 13:17:27"
[2026-02-09 19:18:06] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 19:18:06] [INFO]   -> Found value: 2026-02-09 13:17:55
[2026-02-09 19:18:06] [INFO]   -> Set field 'dispatched' = "2026-02-09 13:17:55"
[2026-02-09 19:18:06] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 19:18:06] [INFO]   -> Found value: BRIAR LN
[2026-02-09 19:18:06] [INFO]   -> Set field 'incidentLocationCross' = "BRIAR LN"
[2026-02-09 19:18:06] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 19:18:06] [INFO]   -> Found value: PCFR
[2026-02-09 19:18:06] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 19:18:06] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 19:18:06] [INFO]   -> Found value: 2026-02-09 13:17:55
[2026-02-09 19:18:06] [INFO]   -> Set field 'timedispatch' = "2026-02-09 13:17:55"
[2026-02-09 19:18:06] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 19:18:06] [INFO]   -> No value found (null or empty)
[2026-02-09 19:18:06] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 19:18:06] [INFO] Found 4 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 19:18:06] [INFO]   -> Found value: 20260014817
[2026-02-09 19:18:06] [INFO]   -> Set field 'policeReportNumber' = "20260014817"
[2026-02-09 19:18:06] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 19:18:06] [INFO]   -> Found value: Event spawned from CHEST PAIN.  [02/09/2026 13:17:27 KELLIS]
[2026-02-09 19:18:06] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from CHEST PAIN.  [02\/09\/2026 13:17:27 KELLIS]"
[2026-02-09 19:18:06] [INFO]   -> Set field 'cADLog' = "Event spawned from CHEST PAIN.  [02\/09\/2026 13:17:27 KELLIS]"
[2026-02-09 19:18:06] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 19:18:06] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 19:18:06] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 19:18:06] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 19:18:06] [INFO]   -> Found value: CLEARVIEW
[2026-02-09 19:18:06] [INFO]   -> Set field 'streetName' = "CLEARVIEW"
[2026-02-09 19:18:06] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 19:18:06] [INFO]   -> Found value: DR
[2026-02-09 19:18:06] [INFO]   -> Set field 'streetType' = "DR"
[2026-02-09 19:18:06] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 19:18:06] [INFO]   -> Found value: 2127 CLEARVIEW DR
[2026-02-09 19:18:06] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "2127 CLEARVIEW DR"
[2026-02-09 19:18:06] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 19:18:06] [INFO] Concatenating street name and type
[2026-02-09 19:18:06] [INFO]   -> Combined street name: CLEARVIEW DR
[2026-02-09 19:18:06] [INFO] Built locationCoordinates from lat/lng: 36.10096,-85.47588
[2026-02-09 19:18:06] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nEMS\nPCSO\nRESC","incidentInternalId":"2026000394","dispatchRunNumber":"2026000394","incidentTypeValue1":"CHEST PAIN","incidentLocationStreetNumber":2127,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38506,"nERISIncidentLatitude":36.1009600000000006048139766789972782135009765625,"nERISIncidentLongitude":-85.4758800000000036334313335828483104705810546875,"alarm":"2026-02-09 13:17:27","dispatched":"2026-02-09 13:17:55","incidentLocationCross":"BRIAR LN","cADVehicleID":"PCFR","timedispatch":"2026-02-09 13:17:55","policeReportNumber":"20260014817","dispatchNotes":"Event spawned from CHEST PAIN.  [02\/09\/2026 13:17:27 KELLIS]","cADLog":"Event spawned from CHEST PAIN.  [02\/09\/2026 13:17:27 KELLIS]","incidentLocationCity":"COOKEVILLE","streetName":"CLEARVIEW DR","incidentAddressTextVersionStreet":"2127 CLEARVIEW DR","locationCoordinates":"36.10096,-85.47588"}
[2026-02-09 19:18:06] [INFO] Number of extracted fields: 21
[2026-02-09 19:18:06] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
EMS
PCSO
RESC'
[2026-02-09 19:18: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-02-09 19:18:06] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","EMS","PCSO","RESC"]
[2026-02-09 19:18:06] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 19:18:07] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 19:18:07] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["EMS","PCSO","RESC"]
[2026-02-09 19:18:07] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-09 19:18:07] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 19:18:07] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 4)
[2026-02-09 19:18:07] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 19:18:07] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 19:18:07] [INFO] Found existing IncidentTypeMapping with ID: 6939c33d3eae65119
[2026-02-09 19:18:18] [INFO] Created new Dispatches record with ID: 698a32efba86a1c92
[2026-02-09 19:18:18] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 19:18:18] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 19:18:22] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 19:18:22] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014817_20260209_191806.XML: Failed to upload file to V2 FTP server: /PCFD_20260014817_20260209_191806.XML
[2026-02-09 19:18:22] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 19:51:52] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:47Z.xml
[2026-02-09 19:51:52] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:47Z.xml
[2026-02-09 19:51:52] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:49Z.xml
[2026-02-09 19:51:52] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:49Z.xml
[2026-02-09 19:51:53] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:50Z.xml
[2026-02-09 19:51:53] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:50Z.xml
[2026-02-09 19:51:53] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:50Z.xml
[2026-02-09 19:51:53] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:50Z.xml
[2026-02-09 19:51:54] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:51Z.xml
[2026-02-09 19:51:54] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:51:51Z.xml
[2026-02-09 19:52:29] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:52:26Z.xml
[2026-02-09 19:52:29] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:52:26Z.xml
[2026-02-09 19:52:30] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:52:27Z.xml
[2026-02-09 19:52:30] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:52:27Z.xml
[2026-02-09 19:52:33] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:52:30Z.xml
[2026-02-09 19:52:33] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:52:30Z.xml
[2026-02-09 19:52:58] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:52:55Z.xml
[2026-02-09 19:52:58] [ERROR] File does not exist: /home/dodom2/public_html/ftp.stationboss.net/dispatch/66a7b78a47817ab30/Call ID CAD26-006166_2026-02-09 13:52:55Z.xml
[2026-02-09 21:07:46] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04168.xml
[2026-02-09 21:07:46] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04168.xml for user: 68d56363ec1209189
[2026-02-09 21:07:46] [INFO] File size: 1587 bytes
[2026-02-09 21:07:47] [INFO] Created FTPFiles record with ID: 698a4ca3917038598
[2026-02-09 21:07:47] [INFO] About to extract fields from XML. File size: 1587 bytes
[2026-02-09 21:07:47] [INFO] Number of mappings: 21
[2026-02-09 21:07:47] [INFO] Starting XML parsing. Content length: 1587
[2026-02-09 21:07:47] [INFO] XML parsed successfully. Root element: Incident
[2026-02-09 21:07:47] [INFO] Processing 21 field mappings
[2026-02-09 21:07:47] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-09 21:07:47] [INFO]   -> Found value: 26-04168
[2026-02-09 21:07:47] [INFO]   -> Set field 'dispatchRunNumber' = "26-04168"
[2026-02-09 21:07:47] [INFO]   -> Set field 'cADNumber' = "26-04168"
[2026-02-09 21:07:47] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-09 21:07:47] [INFO]   -> Found value: 1008
[2026-02-09 21:07:47] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1008
[2026-02-09 21:07:47] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-09 21:07:47] [INFO]   -> Found value: N MAIN ST
[2026-02-09 21:07:47] [INFO]   -> Set field 'streetName' = "N MAIN ST"
[2026-02-09 21:07:47] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-09 21:07:47] [INFO]   -> No value found (null or empty)
[2026-02-09 21:07:47] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-09 21:07:47] [INFO]   -> Found value: SIKESTON
[2026-02-09 21:07:47] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-02-09 21:07:47] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-09 21:07:47] [INFO]   -> Found value: MDMC
[2026-02-09 21:07:47] [INFO]   -> Set field 'businessName' = "MDMC"
[2026-02-09 21:07:47] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-09 21:07:47] [INFO]   -> Found value: MO
[2026-02-09 21:07:47] [INFO]   -> Set field 'incidentLocationStateName' = "MO"
[2026-02-09 21:07:47] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-09 21:07:47] [INFO]   -> Found value: 63801
[2026-02-09 21:07:47] [INFO]   -> Set field 'nERISIncidentPostalCode' = 63801
[2026-02-09 21:07:47] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-09 21:07:47] [INFO]   -> Found value: 0
[2026-02-09 21:07:47] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-09 21:07:47] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-09 21:07:47] [INFO]   -> Found value: 0
[2026-02-09 21:07:47] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-09 21:07:47] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-09 21:07:47] [INFO]   -> Found value: FIRE-AIRCRAFT STANDBY
[2026-02-09 21:07:47] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-AIRCRAFT STANDBY"
[2026-02-09 21:07:47] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-09 21:07:47] [INFO]   -> Found value: 02-09-2026 15:02:25|AIR EVAC 10MIN ETA
[2026-02-09 21:07:47] [INFO]   -> Set field 'dispatchNotes' = "02-09-2026 15:02:25|AIR EVAC 10MIN ETA"
[2026-02-09 21:07:47] [INFO]   -> Set field 'cADLog' = "02-09-2026 15:02:25|AIR EVAC 10MIN ETA"
[2026-02-09 21:07:47] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-09 21:07:47] [INFO]   -> Found value: 02-09-2026T15:05:27
[2026-02-09 21:07:47] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:05:27
[2026-02-09 21:07:47] [INFO]   -> Set field 'alarm' = "2026-09-02 15:05:27"
[2026-02-09 21:07:47] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:05:27
[2026-02-09 21:07:47] [INFO]   -> Set field 'dispatched' = "2026-09-02 15:05:27"
[2026-02-09 21:07:47] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-09 21:07:47] [INFO]   -> No value found (null or empty)
[2026-02-09 21:07:47] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-09 21:07:47] [INFO]   -> No value found (null or empty)
[2026-02-09 21:07:47] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-09 21:07:47] [INFO]   -> Found value: ENG4
[2026-02-09 21:07:47] [INFO]   -> Set field 'cADVehicleID' = "ENG4"
[2026-02-09 21:07:47] [INFO]   -> Set field 'name' = "ENG4"
[2026-02-09 21:07:47] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-09 21:07:47] [INFO]   -> No value found (null or empty)
[2026-02-09 21:07:47] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-09 21:07:47] [INFO]   -> No value found (null or empty)
[2026-02-09 21:07:47] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-09 21:07:47] [INFO]   -> Found value: 02-09-2026T15:07:23
[2026-02-09 21:07:47] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:07:23
[2026-02-09 21:07:47] [INFO]   -> Set field 'timeunitclear' = "2026-09-02 15:07:23"
[2026-02-09 21:07:47] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-09 21:07:47] [INFO]   -> Found value: 02-09-2026T15:07:06
[2026-02-09 21:07:47] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:07:06
[2026-02-09 21:07:47] [INFO]   -> Set field 'timedispatch' = "2026-09-02 15:07:06"
[2026-02-09 21:07:47] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-09 21:07:47] [INFO]   -> Found value: SDPSFD
[2026-02-09 21:07:47] [INFO]   -> Set field 'cADAgencyIdentifier' = "SDPSFD"
[2026-02-09 21:07:47] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 21:07:47] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-09 21:07:47] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-04168","cADNumber":"26-04168","incidentLocationStreetNumber":1008,"streetName":"N MAIN ST","incidentLocationCity":"SIKESTON","businessName":"MDMC","incidentLocationStateName":"MO","nERISIncidentPostalCode":63801,"nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"FIRE-AIRCRAFT STANDBY","dispatchNotes":"02-09-2026 15:02:25|AIR EVAC 10MIN ETA","cADLog":"02-09-2026 15:02:25|AIR EVAC 10MIN ETA","alarm":"2026-09-02 15:05:27","dispatched":"2026-09-02 15:05:27","cADVehicleID":"ENG4","name":"ENG4","timeunitclear":"2026-09-02 15:07:23","timedispatch":"2026-09-02 15:07:06","cADAgencyIdentifier":"SDPSFD","locationCoordinates":"0,0"}
[2026-02-09 21:07:47] [INFO] Number of extracted fields: 21
[2026-02-09 21:07:47] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SDPSFD'
[2026-02-09 21:07:47] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SDPSFD', Parsed IDs = ["SDPSFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 21:07:47] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SDPSFD"]
[2026-02-09 21:07:47] [INFO] Attempting SAASClient lookup for AgencyCode 'SDPSFD' (index 0) within mailbox's assigned agencies
[2026-02-09 21:07:47] [INFO] SUCCESS: Routed to agency 'Sikeston DPS' (ID: 6772cab7157b2ebde) at INDEX 0 based on AgencyCode 'SDPSFD'
[2026-02-09 21:08:01] [INFO] Fetched 4 stations from Stations module for agency 'Sikeston DPS': ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"]
[2026-02-09 21:08:01] [INFO] Final routing: saasclientId = 6772cab7157b2ebde, dispatchStationsIds = ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"], matchedAgencyIndex = 0
[2026-02-09 21:08:01] [INFO] Multi-agency routing matched mailbox default agency: 6772cab7157b2ebde (no update needed)
[2026-02-09 21:08:20] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e875662f9c
[2026-02-09 21:08:22] [INFO] Created new Dispatches record with ID: 698a4cc4d22559213
[2026-02-09 21:08:22] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04168.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-09/SDPSFD_26-04168.xml
[2026-02-09 21:08:22] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04168.xml
[2026-02-09 21:29:36] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014882_20260209_212936.XML
[2026-02-09 21:29:36] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014882_20260209_212936.XML for user: 68f1466aed072ad4a
[2026-02-09 21:29:36] [INFO] File size: 5214 bytes
[2026-02-09 21:29:37] [INFO] Created FTPFiles record with ID: 698a51c10fe1a56e7
[2026-02-09 21:29:37] [INFO] About to extract fields from XML. File size: 5214 bytes
[2026-02-09 21:29:37] [INFO] Number of mappings: 28
[2026-02-09 21:29:37] [INFO] Starting XML parsing. Content length: 5214
[2026-02-09 21:29:37] [INFO] XML parsed successfully. Root element: CADExport
[2026-02-09 21:29:37] [INFO] Processing 28 field mappings
[2026-02-09 21:29:37] [INFO] Mapping #1: Extracting 'EventDetails.AgencyCode' => 'cADAgencyIdentifier'
[2026-02-09 21:29:37] [INFO]   -> Multi-agency mode: Converting scoped path 'EventDetails.AgencyCode' to global 'AgencyCode' for cADAgencyIdentifier
[2026-02-09 21:29:37] [INFO] Target field 'cADAgencyIdentifier' is configured for multi-value concatenation
[2026-02-09 21:29:37] [INFO] Found 3 elements for 'AgencyCode', concatenating 3 non-empty values
[2026-02-09 21:29:37] [INFO]   -> Found value: PCFD
RESC
EMS
[2026-02-09 21:29:37] [INFO]   -> Set field 'cADAgencyIdentifier' = "PCFD\nRESC\nEMS"
[2026-02-09 21:29:37] [INFO] Mapping #2: Extracting 'EventDetails.ReportNumber' => ["incidentInternalId","dispatchRunNumber"]
[2026-02-09 21:29:37] [INFO] Found 3 elements for 'ReportNumber', using FIRST value only
[2026-02-09 21:29:37] [INFO]   -> Found value: 2026000395
[2026-02-09 21:29:37] [INFO]   -> Set field 'incidentInternalId' = "2026000395"
[2026-02-09 21:29:37] [INFO]   -> Set field 'dispatchRunNumber' = "2026000395"
[2026-02-09 21:29:37] [INFO] Mapping #3: Extracting 'EventDetails.NatureDescription' => 'incidentTypeValue1'
[2026-02-09 21:29:37] [INFO]   -> Found value: MEDICAL CALL
[2026-02-09 21:29:37] [INFO]   -> Set field 'incidentTypeValue1' = "MEDICAL CALL"
[2026-02-09 21:29:37] [INFO] Mapping #4: Extracting 'EventDetails.StreetNumber' => 'incidentLocationStreetNumber'
[2026-02-09 21:29:37] [INFO]   -> Found value: 4558
[2026-02-09 21:29:37] [INFO]   -> Set field 'incidentLocationStreetNumber' = 4558
[2026-02-09 21:29:37] [INFO] Mapping #5: Extracting 'EventDetails.State' => 'incidentLocationStateName'
[2026-02-09 21:29:37] [INFO]   -> Found value: TN
[2026-02-09 21:29:37] [INFO]   -> Set field 'incidentLocationStateName' = "TN"
[2026-02-09 21:29:37] [INFO] Mapping #6: Extracting 'EventDetails.ZipCode' => 'nERISIncidentPostalCode'
[2026-02-09 21:29:37] [INFO]   -> Found value: 38501
[2026-02-09 21:29:37] [INFO]   -> Set field 'nERISIncidentPostalCode' = 38501
[2026-02-09 21:29:37] [INFO] Mapping #7: Extracting 'EventDetails.SiteName' => 'businessName'
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #8: Extracting 'EventDetails.ApartmentSuite' => 'incidentLocationApt'
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #9: Extracting 'EventDetails.EventLatitude' => 'nERISIncidentLatitude'
[2026-02-09 21:29:37] [INFO]   -> Found value: 36.21408
[2026-02-09 21:29:37] [INFO]   -> Set field 'nERISIncidentLatitude' = 36.21408000000000271256794803775846958160400390625
[2026-02-09 21:29:37] [INFO] Mapping #10: Extracting 'EventDetails.EventLongitude' => 'nERISIncidentLongitude'
[2026-02-09 21:29:37] [INFO]   -> Found value: -85.59812
[2026-02-09 21:29:37] [INFO]   -> Set field 'nERISIncidentLongitude' = -85.5981199999999944338924251496791839599609375
[2026-02-09 21:29:37] [INFO] Mapping #11: Extracting 'EventDetails.EventStartTime' => 'alarm'
[2026-02-09 21:29:37] [INFO]   -> Found value: 2026-02-09 15:28:48
[2026-02-09 21:29:37] [INFO]   -> Set field 'alarm' = "2026-02-09 15:28:48"
[2026-02-09 21:29:37] [INFO] Mapping #12: Extracting 'EventDetails.FirstDispatchTime' => 'dispatched'
[2026-02-09 21:29:37] [INFO]   -> Found value: 2026-02-09 15:29:25
[2026-02-09 21:29:37] [INFO]   -> Set field 'dispatched' = "2026-02-09 15:29:25"
[2026-02-09 21:29:37] [INFO] Mapping #13: Extracting 'EventDetails.FirstEnrouteTime' => 'enroute'
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #14: Extracting 'EventDetails.FirstOnSceneTime' => 'onScene'
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #15: Extracting 'EventDetails.LastUnitClearTime' => ["cleared","inService"]
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #16: Extracting 'EventDetails.CrossStreets' => 'incidentLocationCross'
[2026-02-09 21:29:37] [INFO]   -> Found value: MAPLE SHADE CIR
[2026-02-09 21:29:37] [INFO]   -> Set field 'incidentLocationCross' = "MAPLE SHADE CIR"
[2026-02-09 21:29:37] [INFO] Mapping #17: Extracting 'EventUnits.Unit[0].UnitCode' => 'cADVehicleID'
[2026-02-09 21:29:37] [INFO]   -> Found value: PCFR
[2026-02-09 21:29:37] [INFO]   -> Set field 'cADVehicleID' = "PCFR"
[2026-02-09 21:29:37] [INFO] Mapping #18: Extracting 'EventUnits.Unit[0].DispatchTime' => 'timedispatch'
[2026-02-09 21:29:37] [INFO]   -> Found value: 2026-02-09 15:29:25
[2026-02-09 21:29:37] [INFO]   -> Set field 'timedispatch' = "2026-02-09 15:29:25"
[2026-02-09 21:29:37] [INFO] Mapping #19: Extracting 'EventUnits.Unit[0].EnRouteTime' => 'timeenroutetoscene'
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #20: Extracting 'EventUnits.Unit[0].ArriveTime' => 'timeonscene'
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #21: Extracting 'EventUnits.Unit[0].ReturnToServiceTime' => 'timeunitclear'
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #22: Extracting 'EventUnits.Unit[0].CancelTime' => 'timecanceledenroute'
[2026-02-09 21:29:37] [INFO]   -> No value found (null or empty)
[2026-02-09 21:29:37] [INFO] Mapping #23: Extracting 'EventDetails.CadInciNumber' => 'policeReportNumber'
[2026-02-09 21:29:37] [INFO] Found 3 elements for 'CadInciNumber', using FIRST value only
[2026-02-09 21:29:37] [INFO]   -> Found value: 20260014882
[2026-02-09 21:29:37] [INFO]   -> Set field 'policeReportNumber' = "20260014882"
[2026-02-09 21:29:37] [INFO] Mapping #24: Extracting 'EventDetails.CadNotes' => ["dispatchNotes","cADLog"]
[2026-02-09 21:29:37] [INFO]   -> Found value: Event spawned from SICK PERSON.  [02/09/2026 15:28:48 DSWINK] BRAIN CA  HURTING VERY BACK   DIZZY  F...
[2026-02-09 21:29:37] [INFO]   -> Set field 'dispatchNotes' = "Event spawned from SICK PERSON.  [02\/09\/2026 15:28:48 DSWINK] BRAIN CA  HURTING VERY BACK   DIZZY  FAITH MCCLAIN  08\/07\/1963  [02\/09\/26 15:27:29 KELLIS]"
[2026-02-09 21:29:37] [INFO]   -> Set field 'cADLog' = "Event spawned from SICK PERSON.  [02\/09\/2026 15:28:48 DSWINK] BRAIN CA  HURTING VERY BACK   DIZZY  FAITH MCCLAIN  08\/07\/1963  [02\/09\/26 15:27:29 KELLIS]"
[2026-02-09 21:29:37] [INFO] Mapping #25: Extracting 'EventDetails.CityCodeDescription' => 'incidentLocationCity'
[2026-02-09 21:29:37] [INFO]   -> Found value: COOKEVILLE
[2026-02-09 21:29:37] [INFO]   -> Set field 'incidentLocationCity' = "COOKEVILLE"
[2026-02-09 21:29:37] [INFO] Mapping #26: Extracting 'EventDetails.StreetName' => 'streetName'
[2026-02-09 21:29:37] [INFO]   -> Found value: WINDSONG
[2026-02-09 21:29:37] [INFO]   -> Set field 'streetName' = "WINDSONG"
[2026-02-09 21:29:37] [INFO] Mapping #27: Extracting 'EventDetails.StreetType' => 'streetType'
[2026-02-09 21:29:37] [INFO]   -> Found value: DR
[2026-02-09 21:29:37] [INFO]   -> Set field 'streetType' = "DR"
[2026-02-09 21:29:37] [INFO] Mapping #28: Extracting 'EventDetails.FullAddress' => 'incidentAddressTextVersionStreet'
[2026-02-09 21:29:37] [INFO]   -> Found value: 4558 WINDSONG DR
[2026-02-09 21:29:37] [INFO]   -> Set field 'incidentAddressTextVersionStreet' = "4558 WINDSONG DR"
[2026-02-09 21:29:37] [INFO] Finished extracting fields. Total fields extracted: 21
[2026-02-09 21:29:37] [INFO] Concatenating street name and type
[2026-02-09 21:29:37] [INFO]   -> Combined street name: WINDSONG DR
[2026-02-09 21:29:37] [INFO] Built locationCoordinates from lat/lng: 36.21408,-85.59812
[2026-02-09 21:29:37] [INFO] Extracted parsing rules data: {"cADAgencyIdentifier":"PCFD\nRESC\nEMS","incidentInternalId":"2026000395","dispatchRunNumber":"2026000395","incidentTypeValue1":"MEDICAL CALL","incidentLocationStreetNumber":4558,"incidentLocationStateName":"TN","nERISIncidentPostalCode":38501,"nERISIncidentLatitude":36.21408000000000271256794803775846958160400390625,"nERISIncidentLongitude":-85.5981199999999944338924251496791839599609375,"alarm":"2026-02-09 15:28:48","dispatched":"2026-02-09 15:29:25","incidentLocationCross":"MAPLE SHADE CIR","cADVehicleID":"PCFR","timedispatch":"2026-02-09 15:29:25","policeReportNumber":"20260014882","dispatchNotes":"Event spawned from SICK PERSON.  [02\/09\/2026 15:28:48 DSWINK] BRAIN CA  HURTING VERY BACK   DIZZY  FAITH MCCLAIN  08\/07\/1963  [02\/09\/26 15:27:29 KELLIS]","cADLog":"Event spawned from SICK PERSON.  [02\/09\/2026 15:28:48 DSWINK] BRAIN CA  HURTING VERY BACK   DIZZY  FAITH MCCLAIN  08\/07\/1963  [02\/09\/26 15:27:29 KELLIS]","incidentLocationCity":"COOKEVILLE","streetName":"WINDSONG DR","incidentAddressTextVersionStreet":"4558 WINDSONG DR","locationCoordinates":"36.21408,-85.59812"}
[2026-02-09 21:29:37] [INFO] Number of extracted fields: 21
[2026-02-09 21:29:37] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'PCFD
RESC
EMS'
[2026-02-09 21:29:37] [INFO] Multi-agency routing check: CAD Agency ID raw = 'PCFD
RESC
EMS', Parsed IDs = ["PCFD","RESC","EMS"], Non-empty count = 3, Total agency count = 3, Assigned Agencies count = 4
[2026-02-09 21:29:37] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["PCFD","RESC","EMS"]
[2026-02-09 21:29:37] [INFO] Attempting SAASClient lookup for AgencyCode 'PCFD' (index 0) within mailbox's assigned agencies
[2026-02-09 21:29:37] [INFO] SUCCESS: Routed to agency 'Putnam County Fire Department' (ID: 68eeb686225c40db4) at INDEX 0 based on AgencyCode 'PCFD'
[2026-02-09 21:29:37] [INFO] INFO: Ignoring additional AgencyCode values after match at index 0: ["RESC","EMS"]
[2026-02-09 21:29:37] [INFO] Fetched 14 stations from Stations module for agency 'Putnam County Fire Department': ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"]
[2026-02-09 21:29:37] [INFO] Final routing: saasclientId = 68eeb686225c40db4, dispatchStationsIds = ["68ffbebde83509b7c","68ffd433577d1ee1e","68ffbe83793eb4521","68eef9302d19f85fc","68ffbe45d3567d442","68ffbe0e8c5fa650f","68eef77e6a5b1e9d6","68ffbde067a9b162c","68ffbda5d8ebd5468","68ffbd6b1db8d8daa","68ffbd4220b20a872","68ffbcfb8b8911e4e","68eef6ffc8105af4e","68eeca5d553dc8756"], matchedAgencyIndex = 0
[2026-02-09 21:29:37] [INFO] Filtering multi-agency fields by matched index 0 (agency count: 3)
[2026-02-09 21:29:37] [INFO] Filtered cADAgencyIdentifier to: PCFD
[2026-02-09 21:29:37] [INFO] Multi-agency routing matched mailbox default agency: 68eeb686225c40db4 (no update needed)
[2026-02-09 21:29:37] [INFO] Found existing IncidentTypeMapping with ID: 6939328c99c5522d2
[2026-02-09 21:29:48] [INFO] Created new Dispatches record with ID: 698a51c1e2cefcfb6
[2026-02-09 21:29:48] [INFO] Uploading file to V2 FTP server: alerts.stationboss.net, Remote Dir: /
[2026-02-09 21:29:48] [INFO] Using FTPS (SSL/TLS) connection
[2026-02-09 21:29:52] [ERROR] PHP Error [WARNING]: ftp_put(): Illegal PORT command in /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php on line 1016
[2026-02-09 21:29:52] [ERROR] Processing failed for /home/dodom2/public_html/ftp.stationboss.net/dispatch/68f1466aed072ad4a/PCFD_20260014882_20260209_212936.XML: Failed to upload file to V2 FTP server: /PCFD_20260014882_20260209_212936.XML
[2026-02-09 21:29:52] [INFO] Error occurred at: /home/dodom2/public_html/ftp.stationboss.net/ftp_process_upload.php:1023
[2026-02-09 21:34:21] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:34:21] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:34:21] [INFO] File size: 11182 bytes
[2026-02-09 21:34:22] [INFO] Created FTPFiles record with ID: 698a52de1900ba695
[2026-02-09 21:34:22] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:34:22] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809.xml
[2026-02-09 21:34:22] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:34:23] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:34:23] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:34:23] [INFO] File size: 12156 bytes
[2026-02-09 21:34:23] [INFO] Created FTPFiles record with ID: 698a52dfcd36be784
[2026-02-09 21:34:23] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:34:23] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770672863.xml
[2026-02-09 21:34:23] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770672863.xml
[2026-02-09 21:34:23] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:34:41] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:34:41] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:34:41] [INFO] File size: 13118 bytes
[2026-02-09 21:34:41] [INFO] Created FTPFiles record with ID: 698a52f1e4838794d
[2026-02-09 21:34:41] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:34:41] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770672881.xml
[2026-02-09 21:34:41] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770672881.xml
[2026-02-09 21:34:41] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:35:00] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:35:00] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:35:00] [INFO] File size: 13163 bytes
[2026-02-09 21:35:01] [INFO] Created FTPFiles record with ID: 698a5305143928ae3
[2026-02-09 21:35:01] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:35:01] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770672901.xml
[2026-02-09 21:35:01] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770672901.xml
[2026-02-09 21:35:01] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:36:16] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:36:16] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:36:16] [INFO] File size: 15395 bytes
[2026-02-09 21:36:16] [INFO] Created FTPFiles record with ID: 698a53506cf5466b3
[2026-02-09 21:36:16] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:36:16] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770672976.xml
[2026-02-09 21:36:16] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770672976.xml
[2026-02-09 21:36:16] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:36:35] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:36:35] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:36:35] [INFO] File size: 16978 bytes
[2026-02-09 21:36:35] [INFO] Created FTPFiles record with ID: 698a5363a189cc215
[2026-02-09 21:36:35] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:36:35] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770672995.xml
[2026-02-09 21:36:35] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770672995.xml
[2026-02-09 21:36:35] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:38:31] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:38:31] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:38:31] [INFO] File size: 17925 bytes
[2026-02-09 21:38:32] [INFO] Created FTPFiles record with ID: 698a53d8045915f62
[2026-02-09 21:38:32] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:38:32] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770673112.xml
[2026-02-09 21:38:32] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770673112.xml
[2026-02-09 21:38:32] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:40:26] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:40:26] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:40:26] [INFO] File size: 21439 bytes
[2026-02-09 21:40:26] [INFO] Created FTPFiles record with ID: 698a544a9fbb88020
[2026-02-09 21:40:26] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:40:26] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770673226.xml
[2026-02-09 21:40:26] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770673226.xml
[2026-02-09 21:40:26] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:42:09] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:42:09] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:42:09] [INFO] File size: 23049 bytes
[2026-02-09 21:42:09] [INFO] Created FTPFiles record with ID: 698a54b1e8fa942ef
[2026-02-09 21:42:09] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:42:09] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770673329.xml
[2026-02-09 21:42:09] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770673329.xml
[2026-02-09 21:42:09] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:46:17] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:46:17] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:46:17] [INFO] File size: 24037 bytes
[2026-02-09 21:46:18] [INFO] Created FTPFiles record with ID: 698a55aa1e085d2c1
[2026-02-09 21:46:18] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:46:18] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770673578.xml
[2026-02-09 21:46:18] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770673578.xml
[2026-02-09 21:46:18] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:46:25] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 21:46:25] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 21:46:25] [INFO] File size: 24981 bytes
[2026-02-09 21:46:25] [INFO] Created FTPFiles record with ID: 698a55b15f45b5c93
[2026-02-09 21:46:25] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 21:46:25] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770673585.xml
[2026-02-09 21:46:25] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770673585.xml
[2026-02-09 21:46:25] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 22:07:59] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 22:07:59] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml for user: 69320e6a9e3e5ef71
[2026-02-09 22:07:59] [INFO] File size: 25954 bytes
[2026-02-09 22:08:00] [INFO] Created FTPFiles record with ID: 698a5ac049bcfc033
[2026-02-09 22:08:00] [WARNING] Warning: Failed to decode parsing rules JSON for mailbox ID: 69320e6a9e3e5ef71
[2026-02-09 22:08:00] [INFO] File already exists in archive, using unique name: cfs_2026-008809_1770674880.xml
[2026-02-09 22:08:00] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/archive/2026-02-09/cfs_2026-008809_1770674880.xml
[2026-02-09 22:08:00] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/69320e6a9e3e5ef71/cfs_2026-008809.xml
[2026-02-09 22:08:33] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04178.xml
[2026-02-09 22:08:33] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04178.xml for user: 68d56363ec1209189
[2026-02-09 22:08:33] [INFO] File size: 2521 bytes
[2026-02-09 22:08:34] [INFO] Created FTPFiles record with ID: 698a5ae24710ef815
[2026-02-09 22:08:34] [INFO] About to extract fields from XML. File size: 2521 bytes
[2026-02-09 22:08:34] [INFO] Number of mappings: 21
[2026-02-09 22:08:34] [INFO] Starting XML parsing. Content length: 2521
[2026-02-09 22:08:34] [INFO] XML parsed successfully. Root element: Incident
[2026-02-09 22:08:34] [INFO] Processing 21 field mappings
[2026-02-09 22:08:34] [INFO] Mapping #1: Extracting 'IncidentNumber' => ["dispatchRunNumber","cADNumber"]
[2026-02-09 22:08:34] [INFO]   -> Found value: 26-04178
[2026-02-09 22:08:34] [INFO]   -> Set field 'dispatchRunNumber' = "26-04178"
[2026-02-09 22:08:34] [INFO]   -> Set field 'cADNumber' = "26-04178"
[2026-02-09 22:08:34] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2026-02-09 22:08:34] [INFO]   -> No value found (null or empty)
[2026-02-09 22:08:34] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2026-02-09 22:08:34] [INFO]   -> Found value: CAMBRIDGE DR
[2026-02-09 22:08:34] [INFO]   -> Set field 'streetName' = "CAMBRIDGE DR"
[2026-02-09 22:08:34] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2026-02-09 22:08:34] [INFO]   -> No value found (null or empty)
[2026-02-09 22:08:34] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2026-02-09 22:08:34] [INFO]   -> Found value: SIKESTON
[2026-02-09 22:08:34] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2026-02-09 22:08:34] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2026-02-09 22:08:34] [INFO]   -> No value found (null or empty)
[2026-02-09 22:08:34] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2026-02-09 22:08:34] [INFO]   -> Found value: MO
[2026-02-09 22:08:34] [INFO]   -> Set field 'incidentLocationStateName' = "MO"
[2026-02-09 22:08:34] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2026-02-09 22:08:34] [INFO]   -> Found value: 63801
[2026-02-09 22:08:34] [INFO]   -> Set field 'nERISIncidentPostalCode' = 63801
[2026-02-09 22:08:34] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2026-02-09 22:08:34] [INFO]   -> Found value: 0
[2026-02-09 22:08:34] [INFO]   -> Set field 'nERISIncidentLatitude' = 0
[2026-02-09 22:08:34] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2026-02-09 22:08:34] [INFO]   -> Found value: 0
[2026-02-09 22:08:34] [INFO]   -> Set field 'nERISIncidentLongitude' = 0
[2026-02-09 22:08:34] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2026-02-09 22:08:34] [INFO]   -> Found value: ACCIDENT-J2
[2026-02-09 22:08:34] [INFO]   -> Set field 'incidentTypeValue1' = "ACCIDENT-J2"
[2026-02-09 22:08:34] [INFO] Mapping #12: Extracting 'commentlist.comment' => ["dispatchNotes","cADLog"]
[2026-02-09 22:08:34] [INFO]   -> Found value: 02-09-2026 15:33:00|2 VEHICLE MVA 
GRAY TOYOTA RAV4 AND BLK NISSAN
ROADWAY IS BLOCKED
2 SUBJECTS INJ...
[2026-02-09 22:08:34] [INFO]   -> Set field 'dispatchNotes' = "02-09-2026 15:33:00|2 VEHICLE MVA \nGRAY TOYOTA RAV4 AND BLK NISSAN\nROADWAY IS BLOCKED\n2 SUBJECTS INJURED IN THE RAV4 UNABLE TO GET OUT\n\n\nNMCO ADVISED FOR EMS 02-09-2026 15:36:26|****** Appended notes from Work Area begin ******\nAddress: CAMBRIDGE DR, SIKESTON Intersection: PINE ST\nCategory: ACCIDENT-J2 Priority: 1\nSource: E911 \nLaw Enf: Sikeston Department of Public Safety \nOpened DateTime: 02\/09\/2026 15:33:26\nNotes: Call Received on 02\/09\/2026 @ 15:33\n\nLocation: 100 MITCHELL\n\nCALLER STATES THAT SHE HAS BEEN INVOVLED IN A ACCIDENT\n\nRP IS IN A NISS ROGE\n1 TOYOTA RAV\nUNK INJURIES\n\n****** Appended notes from Work Area end   ******\n 02-09-2026 15:39:50|2 FEMALES - 1 WITH BACK AND NECK PAIN  OTHER WITH ARM PAIN 02-09-2026 15:40:09|566 ADVISED SUBJECTS NOT ENTRAPPED 02-09-2026 15:40:13|NMCO UPDATED 02-09-2026 15:40:59|B49 ADVISED ENG2 CONTINUE 02-09-2026 15:44:54|TODD'S ENROUTE 02-09-2026 15:56:13|10-51 ON SCENE"
[2026-02-09 22:08:34] [INFO]   -> Set field 'cADLog' = "02-09-2026 15:33:00|2 VEHICLE MVA \nGRAY TOYOTA RAV4 AND BLK NISSAN\nROADWAY IS BLOCKED\n2 SUBJECTS INJURED IN THE RAV4 UNABLE TO GET OUT\n\n\nNMCO ADVISED FOR EMS 02-09-2026 15:36:26|****** Appended notes from Work Area begin ******\nAddress: CAMBRIDGE DR, SIKESTON Intersection: PINE ST\nCategory: ACCIDENT-J2 Priority: 1\nSource: E911 \nLaw Enf: Sikeston Department of Public Safety \nOpened DateTime: 02\/09\/2026 15:33:26\nNotes: Call Received on 02\/09\/2026 @ 15:33\n\nLocation: 100 MITCHELL\n\nCALLER STATES THAT SHE HAS BEEN INVOVLED IN A ACCIDENT\n\nRP IS IN A NISS ROGE\n1 TOYOTA RAV\nUNK INJURIES\n\n****** Appended notes from Work Area end   ******\n 02-09-2026 15:39:50|2 FEMALES - 1 WITH BACK AND NECK PAIN  OTHER WITH ARM PAIN 02-09-2026 15:40:09|566 ADVISED SUBJECTS NOT ENTRAPPED 02-09-2026 15:40:13|NMCO UPDATED 02-09-2026 15:40:59|B49 ADVISED ENG2 CONTINUE 02-09-2026 15:44:54|TODD'S ENROUTE 02-09-2026 15:56:13|10-51 ON SCENE"
[2026-02-09 22:08:34] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2026-02-09 22:08:34] [INFO]   -> Found value: 02-09-2026T15:35:58
[2026-02-09 22:08:34] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:35:58
[2026-02-09 22:08:34] [INFO]   -> Set field 'alarm' = "2026-09-02 15:35:58"
[2026-02-09 22:08:34] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:35:58
[2026-02-09 22:08:34] [INFO]   -> Set field 'dispatched' = "2026-09-02 15:35:58"
[2026-02-09 22:08:34] [INFO] Mapping #14: Extracting 'time_first_unit_arrived' => 'onScene'
[2026-02-09 22:08:34] [INFO]   -> Found value: 02-09-2026T15:39:04
[2026-02-09 22:08:34] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:39:04
[2026-02-09 22:08:34] [INFO]   -> Set field 'onScene' = "2026-09-02 15:39:04"
[2026-02-09 22:08:34] [INFO] Mapping #15: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2026-02-09 22:08:34] [INFO]   -> No value found (null or empty)
[2026-02-09 22:08:34] [INFO] Mapping #16: Extracting 'Units.Unit[0].radio_name' => ["cADVehicleID","name"]
[2026-02-09 22:08:34] [INFO]   -> Found value: ENG2
[2026-02-09 22:08:34] [INFO]   -> Set field 'cADVehicleID' = "ENG2"
[2026-02-09 22:08:34] [INFO]   -> Set field 'name' = "ENG2"
[2026-02-09 22:08:34] [INFO] Mapping #17: Extracting 'Units.Unit[0].time_enroute' => 'timeenroutetoscene'
[2026-02-09 22:08:34] [INFO]   -> Found value: 02-09-2026T15:37:16
[2026-02-09 22:08:34] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:37:16
[2026-02-09 22:08:34] [INFO]   -> Set field 'timeenroutetoscene' = "2026-09-02 15:37:16"
[2026-02-09 22:08:34] [INFO] Mapping #18: Extracting 'Units.Unit[0].time_arrivedatscene' => 'timeonscene'
[2026-02-09 22:08:34] [INFO]   -> Found value: 02-09-2026T15:41:32
[2026-02-09 22:08:34] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T15:41:32
[2026-02-09 22:08:34] [INFO]   -> Set field 'timeonscene' = "2026-09-02 15:41:32"
[2026-02-09 22:08:34] [INFO] Mapping #19: Extracting 'Units.Unit[0].time_depart_scene' => 'timeunitclear'
[2026-02-09 22:08:34] [INFO]   -> Found value: 02-09-2026T16:07:27
[2026-02-09 22:08:34] [INFO] Reformatted DD-MM-YYYY date '02-09-2026' (day=02, month=09) to ISO: 2026-09-02T16:07:27
[2026-02-09 22:08:34] [INFO]   -> Set field 'timeunitclear' = "2026-09-02 16:07:27"
[2026-02-09 22:08:34] [INFO] Mapping #20: Extracting 'Units.Unit[0].time_assigned' => 'timedispatch'
[2026-02-09 22:08:34] [INFO]   -> No value found (null or empty)
[2026-02-09 22:08:34] [INFO] Mapping #21: Extracting 'Agency' => 'cADAgencyIdentifier'
[2026-02-09 22:08:34] [INFO]   -> Found value: SDPSFD
[2026-02-09 22:08:34] [INFO]   -> Set field 'cADAgencyIdentifier' = "SDPSFD"
[2026-02-09 22:08:34] [INFO] Finished extracting fields. Total fields extracted: 20
[2026-02-09 22:08:34] [INFO] Built locationCoordinates from lat/lng: 0,0
[2026-02-09 22:08:34] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"26-04178","cADNumber":"26-04178","streetName":"CAMBRIDGE DR","incidentLocationCity":"SIKESTON","incidentLocationStateName":"MO","nERISIncidentPostalCode":63801,"nERISIncidentLatitude":0,"nERISIncidentLongitude":0,"incidentTypeValue1":"ACCIDENT-J2","dispatchNotes":"02-09-2026 15:33:00|2 VEHICLE MVA \nGRAY TOYOTA RAV4 AND BLK NISSAN\nROADWAY IS BLOCKED\n2 SUBJECTS INJURED IN THE RAV4 UNABLE TO GET OUT\n\n\nNMCO ADVISED FOR EMS 02-09-2026 15:36:26|****** Appended notes from Work Area begin ******\nAddress: CAMBRIDGE DR, SIKESTON Intersection: PINE ST\nCategory: ACCIDENT-J2 Priority: 1\nSource: E911 \nLaw Enf: Sikeston Department of Public Safety \nOpened DateTime: 02\/09\/2026 15:33:26\nNotes: Call Received on 02\/09\/2026 @ 15:33\n\nLocation: 100 MITCHELL\n\nCALLER STATES THAT SHE HAS BEEN INVOVLED IN A ACCIDENT\n\nRP IS IN A NISS ROGE\n1 TOYOTA RAV\nUNK INJURIES\n\n****** Appended notes from Work Area end   ******\n 02-09-2026 15:39:50|2 FEMALES - 1 WITH BACK AND NECK PAIN  OTHER WITH ARM PAIN 02-09-2026 15:40:09|566 ADVISED SUBJECTS NOT ENTRAPPED 02-09-2026 15:40:13|NMCO UPDATED 02-09-2026 15:40:59|B49 ADVISED ENG2 CONTINUE 02-09-2026 15:44:54|TODD'S ENROUTE 02-09-2026 15:56:13|10-51 ON SCENE","cADLog":"02-09-2026 15:33:00|2 VEHICLE MVA \nGRAY TOYOTA RAV4 AND BLK NISSAN\nROADWAY IS BLOCKED\n2 SUBJECTS INJURED IN THE RAV4 UNABLE TO GET OUT\n\n\nNMCO ADVISED FOR EMS 02-09-2026 15:36:26|****** Appended notes from Work Area begin ******\nAddress: CAMBRIDGE DR, SIKESTON Intersection: PINE ST\nCategory: ACCIDENT-J2 Priority: 1\nSource: E911 \nLaw Enf: Sikeston Department of Public Safety \nOpened DateTime: 02\/09\/2026 15:33:26\nNotes: Call Received on 02\/09\/2026 @ 15:33\n\nLocation: 100 MITCHELL\n\nCALLER STATES THAT SHE HAS BEEN INVOVLED IN A ACCIDENT\n\nRP IS IN A NISS ROGE\n1 TOYOTA RAV\nUNK INJURIES\n\n****** Appended notes from Work Area end   ******\n 02-09-2026 15:39:50|2 FEMALES - 1 WITH BACK AND NECK PAIN  OTHER WITH ARM PAIN 02-09-2026 15:40:09|566 ADVISED SUBJECTS NOT ENTRAPPED 02-09-2026 15:40:13|NMCO UPDATED 02-09-2026 15:40:59|B49 ADVISED ENG2 CONTINUE 02-09-2026 15:44:54|TODD'S ENROUTE 02-09-2026 15:56:13|10-51 ON SCENE","alarm":"2026-09-02 15:35:58","dispatched":"2026-09-02 15:35:58","onScene":"2026-09-02 15:39:04","cADVehicleID":"ENG2","name":"ENG2","timeenroutetoscene":"2026-09-02 15:37:16","timeonscene":"2026-09-02 15:41:32","timeunitclear":"2026-09-02 16:07:27","cADAgencyIdentifier":"SDPSFD","locationCoordinates":"0,0"}
[2026-02-09 22:08:34] [INFO] Number of extracted fields: 21
[2026-02-09 22:08:34] [INFO] MULTI-AGENCY: Extracted cADAgencyIdentifier = 'SDPSFD'
[2026-02-09 22:08:34] [INFO] Multi-agency routing check: CAD Agency ID raw = 'SDPSFD', Parsed IDs = ["SDPSFD"], Non-empty count = 1, Total agency count = 1, Assigned Agencies count = 2
[2026-02-09 22:08:34] [INFO] Multi-agency mode detected. Checking AgencyCode values in order: ["SDPSFD"]
[2026-02-09 22:08:34] [INFO] Attempting SAASClient lookup for AgencyCode 'SDPSFD' (index 0) within mailbox's assigned agencies
[2026-02-09 22:08:34] [INFO] SUCCESS: Routed to agency 'Sikeston DPS' (ID: 6772cab7157b2ebde) at INDEX 0 based on AgencyCode 'SDPSFD'
[2026-02-09 22:08:34] [INFO] Fetched 4 stations from Stations module for agency 'Sikeston DPS': ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"]
[2026-02-09 22:08:34] [INFO] Final routing: saasclientId = 6772cab7157b2ebde, dispatchStationsIds = ["67d843b7d3670caf0","67d843823ed523b5c","67d8434fe3dc432c7","68d5ab6eaa6dc3961"], matchedAgencyIndex = 0
[2026-02-09 22:08:34] [INFO] Multi-agency routing matched mailbox default agency: 6772cab7157b2ebde (no update needed)
[2026-02-09 22:08:34] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e87be42b7c
[2026-02-09 22:08:36] [INFO] Created new Dispatches record with ID: 698a5ae32f966f299
[2026-02-09 22:08:36] [INFO] Successfully archived file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04178.xml -> /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/archive/2026-02-09/SDPSFD_26-04178.xml
[2026-02-09 22:08:36] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_26-04178.xml
