OrbitComms Server is the server side of the OrbitComms Project, developped in Node JS.
In order to get a new WebSocket token, you need to send a POST request to the server with the following body:
{
"username": "your_username",
"password": "your_password"
}
If valid, the server will respond with the Token.
All messages follow this structure:
{
"type": "message_type",
"data": { }
}
This type is used to send real-time audio data.
{
"chan": "channel_name",
"bytes": "audio_data"
}
This type is used to manage user actions within a channel.
{
"chan": "channel_name",
"command": "join" | "leave" | "mute" | "priority"
}
This type is used to modify user permissions. (This requires admin permissions)
{
"target": "target_player_name",
"modifier": {
"level": "permission_level",
"chan": "channel_name" (optional)
}
}
This type is used to manage channel operations. (This requires admin permissions)
{
"type": "add" | "delete" | "force_delete" | "change_default",
"name": "channel_name" (for `add`),
"chan": "channel_name" (for `delete` and `force_delete`),
"level": "permission_level" (for `change_default` or optional for `add`)
}
This type is used to send real-time audio data.
{
"chan": "channel_name",
"bytes": "audio_data"
}
This type is used to confirm that a request has been successfully processed.
{
"message": "success_message"
}
This type is used to confirm that a request has been denied.
{
"reason": "denied_message"
}
This type is used to notify the client that his permissions have been updated. One of these messages carries one modified permission. For several permissions, several messages will be sent.
{
"level": "permission_level",
"chan": "channel_name" (optional)
}