Skip to content

Updated to use topic names for presence queue and added region property to externalIds #2

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

Merged
Changes from all 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
64 changes: 22 additions & 42 deletions lsis-asyncapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,12 @@
asyncapi: 3.0.0
info:
title: LSIS Messaging API (AMQP)
version: 0.0.14
version: 0.0.15
description: |
This specification covers the AMQP messaging part of the LSIS system.

> NOTE: LSIS uses Azure Service Bus for messaging, which also supports the HTTPS protocol.

### Event file size

CloudEvents messages can be forwarded to various systems and consumers, including resource-constrained devices.
Expand Down Expand Up @@ -50,20 +52,20 @@ info:

**version 0.0.14**
- Added the overallHealth property to the HealthStatus schema and made it the only required property.

**version 0.0.15**
- Added regions property to the externalIds field of the station presence changed event.
- Updated presence queue names changes to topics with subscriptions.
contact:
name: LSIS Support
email: support@landelijksis.net
servers:
lsis-tst:
host: "broker.landelijksis.net:5672"
protocol: amqp
protocolVersion: 1.0.0
lsis-acc:
host: "broker.landelijksis.net:5672"
host: "ext-events.landelijksis.net:5672"
protocol: amqp
protocolVersion: 1.0.0
lsis-prd:
host: "broker.landelijksis.net:5672"
host: "events.landelijksis.net:5672"
protocol: amqp
protocolVersion: 1.0.0
channels:
Expand All @@ -90,7 +92,9 @@ channels:
examples:
- alliander
- enexis
address: stations.v1.event.presence.{recipient}
subscriptionName:
description: The name of the subscription for the recipient.
address: stations.v1.event.presence.{recipient}/Subscriptions/{subscriptionName}
messages:
publishStationPresenceChanged.message:
contentType: application/cloudevents+json
Expand Down Expand Up @@ -155,17 +159,7 @@ components:
- unhealthy
HealthStatus:
type: object
required:
[
id,
source,
specversion,
type,
data,
time,
datacontenttype,
dataversion,
]
required: [id, source, specversion, type, data]
properties:
id:
description: Identifies the event.
Expand Down Expand Up @@ -237,17 +231,7 @@ components:

StationPresenceChanged:
type: object
required:
[
id,
source,
specversion,
type,
data,
time,
datacontenttype,
dataversion,
]
required: [id, source, specversion, type, data]
properties:
id:
description: Identifies the event.
Expand Down Expand Up @@ -298,7 +282,7 @@ components:
description: External identifiers of the station as known by the grid operators
items:
type: object
required: [sysop, refId]
required: [sysop, refId, regions]
additionalProperties: false
properties:
sysop:
Expand All @@ -307,6 +291,11 @@ components:
refId:
type: string
description: Reference identifier of the station at the grid operator
regions:
type: array
description: A list of regions the station belongs to
items:
type: string
change:
type: object
required: [type, since, userId, fullName, company]
Expand Down Expand Up @@ -362,6 +351,7 @@ components:
externalIds:
- sysop: A123-4563-4B13
refId: "000000002"
regions: ["zuid"]
change:
type: REGISTERED
since: "2024-04-04T10:31:00Z"
Expand All @@ -372,17 +362,7 @@ components:
company: Stedin
StationPresenceAcknowledgement:
type: object
required:
[
id,
source,
specversion,
type,
data,
time,
datacontenttype,
dataversion,
]
required: [id, source, specversion, type, data]
properties:
id:
description: Identifies the event.
Expand Down