From 40c6c4420880b13de5dcb9a59db528d33e24965f Mon Sep 17 00:00:00 2001 From: Ivan Yourshaw <39739503+iyourshaw@users.noreply.github.com> Date: Thu, 25 Sep 2025 17:33:34 -0600 Subject: [PATCH 1/4] Add topics --- jikkou/kafka-topics-values.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/jikkou/kafka-topics-values.yaml b/jikkou/kafka-topics-values.yaml index 21a60c2..fea4f46 100644 --- a/jikkou/kafka-topics-values.yaml +++ b/jikkou/kafka-topics-values.yaml @@ -88,6 +88,8 @@ apps: - topic.ProcessedMapWKT - topic.ProcessedBsm - topic.ProcessedRtcm + - topic.ProcessedSrm + - topic.ProcessedSsm tableTopics: {} customTopics: {} conflictmonitor: From 3ce52c5457e38f4d04aa0813ac0000578ac06927 Mon Sep 17 00:00:00 2001 From: Ivan Yourshaw <39739503+iyourshaw@users.noreply.github.com> Date: Sun, 28 Sep 2025 19:38:42 -0600 Subject: [PATCH 2/4] cimms priority/preemption event topic --- jikkou/kafka-connectors-values.yaml | 5 ++++- jikkou/kafka-topics-values.yaml | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/jikkou/kafka-connectors-values.yaml b/jikkou/kafka-connectors-values.yaml index e0b5f6b..ef3026c 100644 --- a/jikkou/kafka-connectors-values.yaml +++ b/jikkou/kafka-connectors-values.yaml @@ -271,7 +271,10 @@ apps: collectionName: CmRtcmMinimumDataEventAggregation generateTimestamp: true timestampField: eventGeneratedAt - + - topicName: topic.CmPriorityPreemptionRequestEvent + collectionName: CmPriorityPreemptionRequestEvent + useTimestamp: true + timestampField: eventGeneratedAt # Record BSM events: diff --git a/jikkou/kafka-topics-values.yaml b/jikkou/kafka-topics-values.yaml index fea4f46..55e78a0 100644 --- a/jikkou/kafka-topics-values.yaml +++ b/jikkou/kafka-topics-values.yaml @@ -130,6 +130,7 @@ apps: - topic.CmMapMessageCountProgressionEventAggregation - topic.CmSpatMessageCountProgressionEventAggregation - topic.CmRevocableEnabledLaneAlignmentEventAggregation + - topic.CmPriorityPreemptionRequestEvent tableTopics: - topic.CmLaneDirectionOfTravelNotification - topic.CmConnectionOfTravelNotification From b0c58d7bd3014453fd70f84e459f86567534f66b Mon Sep 17 00:00:00 2001 From: Ivan Yourshaw <39739503+iyourshaw@users.noreply.github.com> Date: Mon, 29 Sep 2025 11:59:26 -0600 Subject: [PATCH 3/4] Add to mongo script --- mongo/create_indexes.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mongo/create_indexes.js b/mongo/create_indexes.js index 0344f5d..64391d5 100644 --- a/mongo/create_indexes.js +++ b/mongo/create_indexes.js @@ -104,7 +104,7 @@ const conflictMonitorCollections = [ { name: "CmTimestampDeltaEvent", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, { name: "CmSpatTransitionEvent", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, { name: "CmEventStateProgressionEvent", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, - + { name: "CmPriorityPreemptionRequestEvent", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, @@ -113,6 +113,7 @@ const conflictMonitorCollections = [ { name: "CmBsmMessageCountProgressionEvents", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, { name: "CmRevocableEnabledLaneAlignmentEvent", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, + { name: "CmSpatMinimumDataEventAggregation", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, { name: "CmMapMinimumDataEventAggregation", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, { name: "CmIntersectionReferenceAlignmentEventAggregation", ttlField: "eventGeneratedAt", timeField: "eventGeneratedAt", intersectionField: "intersectionID", expireTime: expireSeconds }, From 61857f476cfcd8a56df70f464040cf94d6e46eae Mon Sep 17 00:00:00 2001 From: Ivan Yourshaw <39739503+iyourshaw@users.noreply.github.com> Date: Mon, 29 Sep 2025 12:07:54 -0600 Subject: [PATCH 4/4] add processed ssm/srm connectors and mongo collections --- jikkou/kafka-connectors-values.yaml | 6 ++++++ mongo/create_indexes.js | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/jikkou/kafka-connectors-values.yaml b/jikkou/kafka-connectors-values.yaml index ef3026c..04b3357 100644 --- a/jikkou/kafka-connectors-values.yaml +++ b/jikkou/kafka-connectors-values.yaml @@ -103,6 +103,12 @@ apps: - topicName: topic.ProcessedBsm collectionName: ProcessedBsm generateTimestamp: true + - topicName: topic.ProcessedSrm + collectionName: ProcessedSrm + generateTimestamp: true + - topicName: topic.ProcessedSsm + collectionName: ProcessedSsm + generateTimestamp: true intersection_api: name: intersection_api connectors: diff --git a/mongo/create_indexes.js b/mongo/create_indexes.js index 64391d5..d0a1244 100644 --- a/mongo/create_indexes.js +++ b/mongo/create_indexes.js @@ -81,7 +81,9 @@ const odeCollections = [ const geoJsonConverterCollections = [ {name: "ProcessedMap", ttlField: "recordGeneratedAt", timeField: "properties.timeStamp", intersectionField: "properties.intersectionId", expireTime: expireSeconds}, {name: "ProcessedSpat", ttlField: "recordGeneratedAt", timeField: "utcTimeStamp", intersectionField: "intersectionId", expireTime: expireSeconds}, - {name: "ProcessedBsm", ttlField: "recordGeneratedAt", timeField: "timeStamp", geoSpatialField: "geometry.coordinates", expireTime: expireSeconds} + {name: "ProcessedBsm", ttlField: "recordGeneratedAt", timeField: "timeStamp", geoSpatialField: "geometry.coordinates", expireTime: expireSeconds}, + {name: "ProcessedSrm", ttlField: "recordGeneratedAt", timeField: "timeStamp", geoSpatialField: "geometry.coordinates", expireTime: expireSeconds}, + {name: "ProcessedSsm", ttlField: "recordGeneratedAt", timeField: "timeStamp", geoSpatialField: "geometry.coordinates", expireTime: expireSeconds} ];