Fixed some typos

2025-12-09 11:22:26 +00:00
parent cc5832e7a4
commit 58a0ecea16

@@ -1,107 +1,107 @@
# Getiyo WebSocket Bridge
Document that describes the messaging standard that Getiyo uses for WebSocket communication with external software and tools.
## Connection
Connect with a WebSocket client to the address of the Getiyo instance, use the port that is specified in your Getiyo config (default 4081).
## Authentication
Once you're connected to the WebSocket server it is very important you immediately send an `AUTH` message. If you are unable to authenticate within 5 seconds you'll be automatically disconnected. For authentication feedback see [errors](#message-type-error), if the authentication is succesful you'll receive the `SYSTEM` message [authOk](#authok).
```JSON
{
"packet": "AUTH",
"channelId": "fakeChannelId123",
"moduleIds": [
"fakeModuleId1",
"fadeModuleId2"
],
"apiKey": "fakeApiKey"
}
```
## Message Encoding/Decoding
Messages are encoded as stringified JSON and **always** includes a `packet` attributes. This attributes specifies the packet type, see the types below. This format applies to both directions of communication.
## Message type `NORMAL`
Normal messaging from module to external service.
```typescript
api.Libs.getWebSocket().broadcast('setScore', 'fakePlayerId123', 10);
```
```JSON
{
"packet": "NORMAL",
"header": "setScore",
"args": [
"fakePlayerId123",
10
]
}
```
Messaging from external service to module.
```JSON
{
"packet": "NORMAL",
"moduleId": "fakeTargetModuleId",
"header": "setScore",
"args": [
"fakePlayerId123",
10
]
}
```
## Message type `ERROR`
There are a messages that can only be send by Getiyo and contain server-side errors. The system message packet **always** contains a `type` attribute which specifies the system message type and a `message` attribute that has the actual error.
```JSON
{
"packet": "SYSTEM",
"type": "auth",
"message": "An error message."
}
```
### `auth`
Invalid authentication.
### `notExist`
Channel/Module/WebSocket Listeners
## Message type `SYSTEM`
There are a messages that can only be send by Getiyo and contain general data. The system message packet **always** contains a `type` attribute which specifies the system message type.
### `id`
The id of the socket client once authentication was completed.
```JSON
{
"packet": "SYSTEM",
"type": "id",
"id": "fakeSocketClientId123"
}
```
### `authOk`
Triggered when the authentication was completed.
```JSON
{
"packet": "SYSTEM",
"type": "authOk",
}
```
# WebSocket Lib Communication Standard
Document that describes the messaging standard that Getiyo uses for WebSocket communication with external software and tools.
## Connection
Connect with a WebSocket client to the address of the Getiyo instance, use the port that is specified in your Getiyo config (default 4081).
## Authentication
Once you're connected to the WebSocket server it is very important you immediately send an `AUTH` message. If you are unable to authenticate within 5 seconds you'll be automatically disconnected. For authentication feedback see [errors](#message-type-error), if the authentication is succesful you'll receive the `SYSTEM` message [authOk](#authok).
```JSON
{
"packet": "AUTH",
"channelId": "fakeChannelId123",
"moduleIds": [
"fakeModuleId1",
"fadeModuleId2"
],
"apiKey": "fakeApiKey"
}
```
## Message Encoding/Decoding
Messages are encoded as stringified JSON and **always** includes a `packet` attributes. This attributes specifies the packet type, see the types below. This format applies to both directions of communication.
## Message type `NORMAL`
Normal messaging from module to external service.
```typescript
api.Libs.getWebSocket().broadcast('setScore', 'fakePlayerId123', 10);
```
```JSON
{
"packet": "NORMAL",
"header": "setScore",
"args": [
"fakePlayerId123",
10
]
}
```
Messaging from external service to module.
```JSON
{
"packet": "NORMAL",
"moduleId": "fakeTargetModuleId",
"header": "setScore",
"args": [
"fakePlayerId123",
10
]
}
```
## Message type `ERROR`
There are a messages that can only be send by Getiyo and contain server-side errors. The system message packet **always** contains a `type` attribute which specifies the system message type and a `message` attribute that has the actual error.
```JSON
{
"packet": "ERROR",
"type": "auth",
"message": "An error message."
}
```
### `auth`
Invalid authentication.
### `notExist`
Channel/Module/WebSocket Listeners
## Message type `SYSTEM`
There are a messages that can only be send by Getiyo and contain general data. The system message packet **always** contains a `type` attribute which specifies the system message type.
### `id`
The id of the socket client once authentication was completed.
```JSON
{
"packet": "SYSTEM",
"type": "id",
"id": "fakeSocketClientId123"
}
```
### `authOk`
Triggered when the authentication was completed.
```JSON
{
"packet": "SYSTEM",
"type": "authOk",
}
```