Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update diagrams and Managed Subscribe Readme #51

Merged
merged 3 commits into from
Oct 12, 2023
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions docs/design/diagrams/managed_subscribe_consumer_sequence.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
@startuml Managed Subscribe Consumer
title Managed Subscribe Sequence from Consumer's Perspective
participant "Digital Twin Consumer" as DTConsumer
participant Ibeji
participant Broker

autonumber

DTConsumer -> Ibeji: FindById - request
DTConsumer <- Ibeji: FindById - response
DTConsumer -> Ibeji: GetSubscriptionInfo (entity_id, constraints {freq, acc, etc})
devkelley marked this conversation as resolved.
Show resolved Hide resolved
Ibeji -> DTConsumer: GetSubscriptionInfo - response
note right of DTConsumer: SubInfo {topic, broker endpoint info}
DTConsumer -> Broker: Subscribe (SubInfo.topic)
DTConsumer <- Broker : data
DTConsumer -> Broker: Unsubscribe (SubInfo.topic)
DTConsumer x<- Broker: data
@enduml
28 changes: 28 additions & 0 deletions docs/design/diagrams/managed_subscribe_consumer_sequence.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
@startuml Managed Subscribe Interceptor
title Managed Subscribe Interceptor Sequence
participant "Digital Twin Provider" as DTProvider
box "Ibeji"
participant "Managed Subscribe Module" as ManagedSubscribeModule
ashbeitz marked this conversation as resolved.
Show resolved Hide resolved
participant Ibeji
participant "InVehicle Digital Twin" as Ibeji
end box

autonumber

Expand Down
51 changes: 50 additions & 1 deletion docs/design/diagrams/managed_subscribe_interceptor_sequence.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 3 additions & 1 deletion docs/design/diagrams/managed_subscribe_module_sequence.puml
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
@startuml Managed Subscribe Module
title Managed Subscribe Module Sequence
participant "Digital Twin Provider" as DTProvider
participant Ibeji
box "Ibeji"
participant "InVehicle Digital Twin" as Ibeji
participant "Managed Subscribe Module" as ManagedSubscribeModule
ashbeitz marked this conversation as resolved.
Show resolved Hide resolved
end box
participant "Digital Twin Consumer" as DTConsumer
participant Agemo
participant Broker
Expand Down
78 changes: 77 additions & 1 deletion docs/design/diagrams/managed_subscribe_module_sequence.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
55 changes: 55 additions & 0 deletions docs/design/diagrams/managed_subscribe_provider_sequence.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
@startuml Managed Subscribe Provider
title Managed Subscribe Sequence from Provider's Perspective
participant "Digital Twin Provider" as DTProvider
participant Ibeji
participant Broker

autonumber

DTProvider -> Ibeji: Register - request
note right of DTProvider
// Entry that indicates to Ibeji that the Provider
// wants to utilize the Managed Subscribe Module.
{
protocol: "grpc"
operations: ["ManagedSubscribe"]
uri: "Provider callback uri"
context: ""
}
end note
Ibeji -> DTProvider: Register - response

Ibeji -> DTProvider: TopicManagementCB (action, payload)
note right of DTProvider
// Tells provider to start publishing
devkelley marked this conversation as resolved.
Show resolved Hide resolved
// entity id data on provided topic
// with the given constraints.

action: PUBLISH
payload: {
entity_id,
topic,
constraints, // (type, value)
subscription_info: {
protocol, // MQTT
uri, // MQTT Broker
},
}
end note
DTProvider -> Broker: data
DTProvider <- Ibeji: TopicManagementCB (action, payload)
note right of DTProvider
// Tells provider to stop publishing
// entity id data on provided topic.

action: STOP_PUBLISH
payload: {
entity_id,
topic,
constraints, // (type, value)
subscription_info: None,
}
end note
DTProvider ->x Broker: data
DTProvider -> DTProvider: Remove topic mapping
@enduml
Loading
Loading