-
Notifications
You must be signed in to change notification settings - Fork 5
/
tracking-kafka-asyncapi.yaml
100 lines (100 loc) · 2.77 KB
/
tracking-kafka-asyncapi.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
asyncapi: 3.0.0
info:
title: Zilla Taxi Hailing Kafka Spec
description: Zilla implements the Petstore Kafka spec
version: 1.0.0
license:
name: Aklivity Community License
contact:
name: Aklivity Community
url: https://www.aklivity.io/slack
externalDocs:
description: Find out more about Zilla
url: https://docs.aklivity.io/
defaultContentType: application/json
servers:
local-connections:
host: kafka:9092
protocol: kafka
description: Local broker
channels:
taxiLocations:
address: taxi-locations
messages:
locationUpdate:
$ref: "#/components/messages/locationUpdate"
description: The topic on which taxi locations may be produced and consumed.
busLocations:
address: bus-locations
messages:
locationUpdate:
$ref: "#/components/messages/locationUpdate"
description: The topic on which bus locations may be produced and consumed.
mqttSessions:
description: This channel contains MQTT sessions.
address: mqtt-sessions
mqttMessages:
description: This channel contains MQTT messages.
address: mqtt-messages
mqttRetained:
description: This channel contains MQTT retained messages.
address: mqtt-retained
operations:
sendTaxiUpdate:
action: send
channel:
$ref: "#/channels/taxiLocations"
summary: Update a taxis locations.
messages:
- $ref: "#/channels/taxiLocations/messages/locationUpdate"
getTaxiLocations:
action: receive
channel:
$ref: "#/channels/taxiLocations"
summary: List taxi locations.
messages:
- $ref: "#/channels/taxiLocations/messages/locationUpdate"
getTaxiLocationById:
action: receive
channel:
$ref: "#/channels/taxiLocations"
summary: List a taxi location by ID.
messages:
- $ref: "#/channels/taxiLocations/messages/locationUpdate"
sendBusUpdate:
action: send
channel:
$ref: "#/channels/busLocations"
summary: Update a buses locations.
messages:
- $ref: "#/channels/busLocations/messages/locationUpdate"
getBusLocations:
action: receive
channel:
$ref: "#/channels/busLocations"
summary: List all bus locations.
messages:
- $ref: "#/channels/busLocations/messages/locationUpdate"
components:
messages:
locationUpdate:
name: locationUpdate
title: Location Update
summary: Info the current location for a vehicle with a list of lat long coordinates.
contentType: application/json
payload:
$ref: "#/components/schemas/locationPayload"
schemas:
locationPayload:
required:
- key
properties:
key:
type: string
icon:
type: string
coordinates:
type: array
items:
type: integer
format: int32