[2025-10-09 06:05:58] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_25-23156.xml
[2025-10-09 06:05:58] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_25-23156.xml for user: 68d56363ec1209189
[2025-10-09 06:05:58] [INFO] File size: 1382 bytes
[2025-10-09 06:05:58] [INFO] Created FTPFiles record with ID: 68e750c640b192206
[2025-10-09 06:05:58] [INFO] WE ARE HERE {"mappings":{"IncidentNumber":"dispatchRunNumber","house_number":"incidentLocationStreetNumber","street":"streetName","apt":"incidentLocationApt","city":"incidentLocationCity","location_name":"businessName","STATE":"incidentLocationStateName","ZIPCODE":"nERISIncidentPostalCode","LATITUDE":"nERISIncidentLatitude","LONGITUDE":"nERISIncidentLongitude","incident_type":"incidentTypeValue1","commentlist.comment":"dispatchNotes","time_first_unit_assigned":["alarm","dispatched"],"time_first_unit_enroute":"enroute","time_first_unit_arrived":"onScene","time_last_unit_cleared":["cleared","inService"]},"selectedRecord":{"id":"68e3d5db09560f860","name":null},"fieldExamples":{"IncidentNumber":{"name":"IncidentNumber","value":"25-23001","type":"text"},"house_number":{"name":"house_number","value":"110","type":"number"},"street":{"name":"street","value":"WILLIAM ST","type":"address"},"apt":{"name":"apt","value":"Array","type":"text"},"city":{"name":"city","value":"Array","type":"address"},"location_name":{"name":"location_name","value":"Array","type":"text"},"STATE":{"name":"STATE","value":"Array","type":"address"},"ZIPCODE":{"name":"ZIPCODE","value":"Array","type":"address"},"LATITUDE":{"name":"LATITUDE","value":"0","type":"coordinate"},"LONGITUDE":{"name":"LONGITUDE","value":"0","type":"coordinate"},"incident_type":{"name":"incident_type","value":"FIRE-GAS LEAK","type":"text"},"commentlist.comment":{"name":"comment","value":"10-06-2025 12:37:49|RP ADVISED WAS ATTEMPTING TO TURN ON STOVE, STRONG ODER OF GAS \n\n\nJOH MCOOLEY 573-620-1861 10-06-2025 12:40:34|PAGED 10-06-2025 12:42:51|LIBERTY HAS BEEN CONTACTED 10-06-2025 12:42:57|566 ADVISED ON SCENE, ADVISED ATTEMPTING TO LOCATE SORCE 10-06-2025 12:44:00|566 ADVISED STRONG ODER COMING FROM GAS LINE TO STOVE 10-06-2025 12:45:44|C86 ADVISED HAS COMMAND OF SCENE 10-06-2025 12:53:21|GAS IS SHUT OFF FROM STOVE, GAS COMPANY IS RESPONDING TO ADDRESS ","type":"text"},"time_first_unit_assigned":{"name":"time_first_unit_assigned","value":"10-06-2025T12:40:07","type":"datetime"},"time_first_unit_enroute":{"name":"time_first_unit_enroute","value":"10-06-2025T12:40:23","type":"datetime"},"time_first_unit_arrived":{"name":"time_first_unit_arrived","value":"10-06-2025T12:43:01","type":"datetime"},"time_last_unit_cleared":{"name":"time_last_unit_cleared","value":"10-06-2025T12:53:26","type":"datetime"}},"timestamp":"2025-10-06T18:05:45.194Z"}
[2025-10-09 06:05:58] [INFO] About to extract fields from XML. File size: 1382 bytes
[2025-10-09 06:05:58] [INFO] Number of mappings: 16
[2025-10-09 06:05:58] [INFO] Starting XML parsing. Content length: 1382
[2025-10-09 06:05:58] [INFO] XML parsed successfully. Root element: Incident
[2025-10-09 06:05:58] [INFO] Processing 16 field mappings
[2025-10-09 06:05:58] [INFO] Mapping #1: Extracting 'IncidentNumber' => 'dispatchRunNumber'
[2025-10-09 06:05:58] [INFO]   -> Found value: 25-23156
[2025-10-09 06:05:58] [INFO]   -> Set field 'dispatchRunNumber' = "25-23156"
[2025-10-09 06:05:58] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2025-10-09 06:05:58] [INFO]   -> Found value: 1551
[2025-10-09 06:05:58] [INFO]   -> Set field 'incidentLocationStreetNumber' = 1551
[2025-10-09 06:05:58] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2025-10-09 06:05:58] [INFO]   -> Found value: W WAKEFIELD AVE
[2025-10-09 06:05:58] [INFO]   -> Set field 'streetName' = "W WAKEFIELD AVE"
[2025-10-09 06:05:58] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2025-10-09 06:05:58] [INFO]   -> No value found (null or empty)
[2025-10-09 06:05:58] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2025-10-09 06:05:58] [INFO]   -> Found value: SIKESTON
[2025-10-09 06:05:58] [INFO]   -> Set field 'incidentLocationCity' = "SIKESTON"
[2025-10-09 06:05:58] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2025-10-09 06:05:58] [INFO]   -> Found value: SIKESTON POWER PLANT
[2025-10-09 06:05:58] [INFO]   -> Set field 'businessName' = "SIKESTON POWER PLANT"
[2025-10-09 06:05:58] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2025-10-09 06:05:58] [INFO]   -> Found value: MO
[2025-10-09 06:05:58] [INFO]   -> Set field 'incidentLocationStateName' = "MO"
[2025-10-09 06:05:58] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2025-10-09 06:05:58] [INFO]   -> Found value: 63801
[2025-10-09 06:05:58] [INFO]   -> Set field 'nERISIncidentPostalCode' = 63801
[2025-10-09 06:05:58] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2025-10-09 06:05:58] [INFO]   -> Found value: 0
[2025-10-09 06:05:58] [INFO]   -> Set field 'nERISIncidentLatitude' = null
[2025-10-09 06:05:58] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2025-10-09 06:05:58] [INFO]   -> Found value: 0
[2025-10-09 06:05:58] [INFO]   -> Set field 'nERISIncidentLongitude' = null
[2025-10-09 06:05:58] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2025-10-09 06:05:58] [INFO]   -> Found value: FIRE-COAL TRAIN STANDBY
[2025-10-09 06:05:58] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-COAL TRAIN STANDBY"
[2025-10-09 06:05:58] [INFO] Mapping #12: Extracting 'commentlist.comment' => 'dispatchNotes'
[2025-10-09 06:05:58] [INFO]   -> Found value: 10-09-2025 00:17:08|COAL TRAIN ARRIVING FROM THE NORTH  10-09-2025 00:17:57|PAGE
[2025-10-09 06:05:58] [INFO]   -> Set field 'dispatchNotes' = "10-09-2025 00:17:08|COAL TRAIN ARRIVING FROM THE NORTH  10-09-2025 00:17:57|PAGE"
[2025-10-09 06:05:58] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2025-10-09 06:05:58] [INFO]   -> Found value: 10-09-2025T00:20:00
[2025-10-09 06:05:58] [INFO]   -> Set field 'alarm' = "2025-09-10 00:20:00"
[2025-10-09 06:05:58] [INFO]   -> Set field 'dispatched' = "2025-09-10 00:20:00"
[2025-10-09 06:05:58] [INFO] Mapping #14: Extracting 'time_first_unit_enroute' => 'enroute'
[2025-10-09 06:05:58] [INFO]   -> No value found (null or empty)
[2025-10-09 06:05:58] [INFO] Mapping #15: Extracting 'time_first_unit_arrived' => 'onScene'
[2025-10-09 06:05:58] [INFO]   -> No value found (null or empty)
[2025-10-09 06:05:58] [INFO] Mapping #16: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2025-10-09 06:05:58] [INFO]   -> No value found (null or empty)
[2025-10-09 06:05:58] [INFO] Finished extracting fields. Total fields extracted: 13
[2025-10-09 06:05:58] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"25-23156","incidentLocationStreetNumber":1551,"streetName":"W WAKEFIELD AVE","incidentLocationCity":"SIKESTON","businessName":"SIKESTON POWER PLANT","incidentLocationStateName":"MO","nERISIncidentPostalCode":63801,"nERISIncidentLatitude":null,"nERISIncidentLongitude":null,"incidentTypeValue1":"FIRE-COAL TRAIN STANDBY","dispatchNotes":"10-09-2025 00:17:08|COAL TRAIN ARRIVING FROM THE NORTH  10-09-2025 00:17:57|PAGE","alarm":"2025-09-10 00:20:00","dispatched":"2025-09-10 00:20:00"}
[2025-10-09 06:05:58] [INFO] Number of extracted fields: 13
[2025-10-09 06:05:58] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e8608a02f9
[2025-10-09 06:05:59] [INFO] Created Dispatches record with ID: 68e750c66b7794104
[2025-10-09 06:05:59] [INFO] Successfully deleted file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_25-23156.xml
[2025-10-09 06:05:59] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_25-23156.xml
[2025-10-09 22:00:05] [INFO] Received file path: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_25-23199.xml
[2025-10-09 22:00:05] [INFO] Processing file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_25-23199.xml for user: 68d56363ec1209189
[2025-10-09 22:00:05] [INFO] File size: 1380 bytes
[2025-10-09 22:00:05] [INFO] Created FTPFiles record with ID: 68e830655becb55f3
[2025-10-09 22:00:05] [INFO] WE ARE HERE {"mappings":{"IncidentNumber":"dispatchRunNumber","house_number":"incidentLocationStreetNumber","street":"streetName","apt":"incidentLocationApt","city":"incidentLocationCity","location_name":"businessName","STATE":"incidentLocationStateName","ZIPCODE":"nERISIncidentPostalCode","LATITUDE":"nERISIncidentLatitude","LONGITUDE":"nERISIncidentLongitude","incident_type":"incidentTypeValue1","commentlist.comment":"dispatchNotes","time_first_unit_assigned":["alarm","dispatched"],"time_first_unit_enroute":"enroute","time_first_unit_arrived":"onScene","time_last_unit_cleared":["cleared","inService"]},"selectedRecord":{"id":"68e3d5db09560f860","name":null},"fieldExamples":{"IncidentNumber":{"name":"IncidentNumber","value":"25-23001","type":"text"},"house_number":{"name":"house_number","value":"110","type":"number"},"street":{"name":"street","value":"WILLIAM ST","type":"address"},"apt":{"name":"apt","value":"Array","type":"text"},"city":{"name":"city","value":"Array","type":"address"},"location_name":{"name":"location_name","value":"Array","type":"text"},"STATE":{"name":"STATE","value":"Array","type":"address"},"ZIPCODE":{"name":"ZIPCODE","value":"Array","type":"address"},"LATITUDE":{"name":"LATITUDE","value":"0","type":"coordinate"},"LONGITUDE":{"name":"LONGITUDE","value":"0","type":"coordinate"},"incident_type":{"name":"incident_type","value":"FIRE-GAS LEAK","type":"text"},"commentlist.comment":{"name":"comment","value":"10-06-2025 12:37:49|RP ADVISED WAS ATTEMPTING TO TURN ON STOVE, STRONG ODER OF GAS \n\n\nJOH MCOOLEY 573-620-1861 10-06-2025 12:40:34|PAGED 10-06-2025 12:42:51|LIBERTY HAS BEEN CONTACTED 10-06-2025 12:42:57|566 ADVISED ON SCENE, ADVISED ATTEMPTING TO LOCATE SORCE 10-06-2025 12:44:00|566 ADVISED STRONG ODER COMING FROM GAS LINE TO STOVE 10-06-2025 12:45:44|C86 ADVISED HAS COMMAND OF SCENE 10-06-2025 12:53:21|GAS IS SHUT OFF FROM STOVE, GAS COMPANY IS RESPONDING TO ADDRESS ","type":"text"},"time_first_unit_assigned":{"name":"time_first_unit_assigned","value":"10-06-2025T12:40:07","type":"datetime"},"time_first_unit_enroute":{"name":"time_first_unit_enroute","value":"10-06-2025T12:40:23","type":"datetime"},"time_first_unit_arrived":{"name":"time_first_unit_arrived","value":"10-06-2025T12:43:01","type":"datetime"},"time_last_unit_cleared":{"name":"time_last_unit_cleared","value":"10-06-2025T12:53:26","type":"datetime"}},"timestamp":"2025-10-06T18:05:45.194Z"}
[2025-10-09 22:00:05] [INFO] About to extract fields from XML. File size: 1380 bytes
[2025-10-09 22:00:05] [INFO] Number of mappings: 16
[2025-10-09 22:00:05] [INFO] Starting XML parsing. Content length: 1380
[2025-10-09 22:00:05] [INFO] XML parsed successfully. Root element: Incident
[2025-10-09 22:00:05] [INFO] Processing 16 field mappings
[2025-10-09 22:00:05] [INFO] Mapping #1: Extracting 'IncidentNumber' => 'dispatchRunNumber'
[2025-10-09 22:00:05] [INFO]   -> Found value: 25-23199
[2025-10-09 22:00:05] [INFO]   -> Set field 'dispatchRunNumber' = "25-23199"
[2025-10-09 22:00:05] [INFO] Mapping #2: Extracting 'house_number' => 'incidentLocationStreetNumber'
[2025-10-09 22:00:05] [INFO]   -> Found value: 211
[2025-10-09 22:00:05] [INFO]   -> Set field 'incidentLocationStreetNumber' = 211
[2025-10-09 22:00:05] [INFO] Mapping #3: Extracting 'street' => 'streetName'
[2025-10-09 22:00:05] [INFO]   -> Found value: LINDA DR
[2025-10-09 22:00:05] [INFO]   -> Set field 'streetName' = "LINDA DR"
[2025-10-09 22:00:05] [INFO] Mapping #4: Extracting 'apt' => 'incidentLocationApt'
[2025-10-09 22:00:05] [INFO]   -> No value found (null or empty)
[2025-10-09 22:00:05] [INFO] Mapping #5: Extracting 'city' => 'incidentLocationCity'
[2025-10-09 22:00:05] [INFO]   -> No value found (null or empty)
[2025-10-09 22:00:05] [INFO] Mapping #6: Extracting 'location_name' => 'businessName'
[2025-10-09 22:00:05] [INFO]   -> No value found (null or empty)
[2025-10-09 22:00:05] [INFO] Mapping #7: Extracting 'STATE' => 'incidentLocationStateName'
[2025-10-09 22:00:05] [INFO]   -> No value found (null or empty)
[2025-10-09 22:00:05] [INFO] Mapping #8: Extracting 'ZIPCODE' => 'nERISIncidentPostalCode'
[2025-10-09 22:00:05] [INFO]   -> No value found (null or empty)
[2025-10-09 22:00:05] [INFO] Mapping #9: Extracting 'LATITUDE' => 'nERISIncidentLatitude'
[2025-10-09 22:00:05] [INFO]   -> No value found (null or empty)
[2025-10-09 22:00:05] [INFO] Mapping #10: Extracting 'LONGITUDE' => 'nERISIncidentLongitude'
[2025-10-09 22:00:05] [INFO]   -> No value found (null or empty)
[2025-10-09 22:00:05] [INFO] Mapping #11: Extracting 'incident_type' => 'incidentTypeValue1'
[2025-10-09 22:00:05] [INFO]   -> Found value: FIRE-GRASS/BRUSH/TREES
[2025-10-09 22:00:05] [INFO]   -> Set field 'incidentTypeValue1' = "FIRE-GRASS\/BRUSH\/TREES"
[2025-10-09 22:00:05] [INFO] Mapping #12: Extracting 'commentlist.comment' => 'dispatchNotes'
[2025-10-09 22:00:05] [INFO]   -> Found value: 10-09-2025 16:38:35|FENCE ON FIRE
[2025-10-09 22:00:05] [INFO]   -> Set field 'dispatchNotes' = "10-09-2025 16:38:35|FENCE ON FIRE"
[2025-10-09 22:00:05] [INFO] Mapping #13: Extracting 'time_first_unit_assigned' => ["alarm","dispatched"]
[2025-10-09 22:00:05] [INFO]   -> Found value: 10-09-2025T16:39:33
[2025-10-09 22:00:05] [INFO]   -> Set field 'alarm' = "2025-09-10 16:39:33"
[2025-10-09 22:00:05] [INFO]   -> Set field 'dispatched' = "2025-09-10 16:39:33"
[2025-10-09 22:00:05] [INFO] Mapping #14: Extracting 'time_first_unit_enroute' => 'enroute'
[2025-10-09 22:00:05] [INFO]   -> Found value: 10-09-2025T16:39:35
[2025-10-09 22:00:05] [INFO]   -> Set field 'enroute' = "2025-09-10 16:39:35"
[2025-10-09 22:00:05] [INFO] Mapping #15: Extracting 'time_first_unit_arrived' => 'onScene'
[2025-10-09 22:00:05] [INFO]   -> Found value: 10-09-2025T16:41:46
[2025-10-09 22:00:05] [INFO]   -> Set field 'onScene' = "2025-09-10 16:41:46"
[2025-10-09 22:00:05] [INFO] Mapping #16: Extracting 'time_last_unit_cleared' => ["cleared","inService"]
[2025-10-09 22:00:05] [INFO]   -> Found value: 10-09-2025T16:59:09
[2025-10-09 22:00:05] [INFO]   -> Set field 'cleared' = "2025-09-10 16:59:09"
[2025-10-09 22:00:05] [INFO]   -> Set field 'inService' = "2025-09-10 16:59:09"
[2025-10-09 22:00:05] [INFO] Finished extracting fields. Total fields extracted: 11
[2025-10-09 22:00:05] [INFO] Extracted parsing rules data: {"dispatchRunNumber":"25-23199","incidentLocationStreetNumber":211,"streetName":"LINDA DR","incidentTypeValue1":"FIRE-GRASS\/BRUSH\/TREES","dispatchNotes":"10-09-2025 16:38:35|FENCE ON FIRE","alarm":"2025-09-10 16:39:33","dispatched":"2025-09-10 16:39:33","enroute":"2025-09-10 16:39:35","onScene":"2025-09-10 16:41:46","cleared":"2025-09-10 16:59:09","inService":"2025-09-10 16:59:09"}
[2025-10-09 22:00:05] [INFO] Number of extracted fields: 11
[2025-10-09 22:00:05] [INFO] Found existing IncidentTypeMapping with ID: 68e4158e87079abb2
[2025-10-09 22:00:06] [INFO] Created Dispatches record with ID: 68e830659294c9d19
[2025-10-09 22:00:06] [INFO] Successfully deleted file: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_25-23199.xml
[2025-10-09 22:00:06] [INFO] File processed successfully: /home/dodom2/public_html/ftp.stationboss.net/dispatch/68d56363ec1209189/SDPSFD_25-23199.xml
