rhandlers

package
v0.0.0-...-18b333a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 23, 2023 License: AGPL-3.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateRoomHandler

func CreateRoomHandler(s *rstructs.State, userID string, c *websocket.Conn, data []byte) error

func GetRoomForeverKey

func GetRoomForeverKey(s *rstructs.State, userID string, c *websocket.Conn, data []byte) error

func GetRoomOneTimeKey

func GetRoomOneTimeKey(s *rstructs.State, userID string, c *websocket.Conn, data []byte) error

func JoinRoomForever

func JoinRoomForever(s *rstructs.State, userID string, c *websocket.Conn, data []byte) error

func JoinRoomOneTime

func JoinRoomOneTime(s *rstructs.State, userID string, c *websocket.Conn, data []byte) error

func ResetRoomKeys

func ResetRoomKeys(s *rstructs.State, userID string, c *websocket.Conn, data []byte) error

func SendMessage

func SendMessage(s *rstructs.State, userID string, c *websocket.Conn, data []byte) error

Types

type CreateRoomRequest

type CreateRoomRequest struct {
	Cmd  string                `json:"cmd"`
	Data CreateRoomRequestData `json:"data"`
}

type CreateRoomRequestData

type CreateRoomRequestData struct {
	Name            string `json:"name"`
	Username        string `json:"username"`
	ClientRoomID    string `json:"client_room_id"`
	PublicKeyString string `json:"public_key_string"`
}

type CreateRoomResponse

type CreateRoomResponse struct {
	Cmd          string         `json:"cmd"`
	Room         *rstructs.Room `json:"room"`
	ClientRoomID string         `json:"client_room_id"`
}

type GetRoomForeverKeyRequest

type GetRoomForeverKeyRequest struct {
	Cmd  string    `json:"cmd"`
	Data RoomIDReq `json:"data"`
}

type GetRoomForeverKeyResponse

type GetRoomForeverKeyResponse struct {
	Cmd  string                        `json:"cmd"`
	Data GetRoomForeverKeyResponseData `json:"data"`
}

type GetRoomForeverKeyResponseData

type GetRoomForeverKeyResponseData struct {
	RoomID         string `json:"room_id"`
	ForeverJoinKey string `json:"forever_join_key"`
}

type GetRoomOneTimeKeyRequest

type GetRoomOneTimeKeyRequest struct {
	Cmd  string    `json:"cmd"`
	Data RoomIDReq `json:"data"`
}

type GetRoomOneTimeKeyResponse

type GetRoomOneTimeKeyResponse struct {
	Cmd  string         `json:"cmd"`
	Data RoomOneTimeKey `json:"data"`
}

type JoinRoomForeverReq

type JoinRoomForeverReq struct {
	Cmd  string                 `json:"cmd"`
	Data JoinRoomForeverReqData `json:"data"`
}

type JoinRoomForeverReqData

type JoinRoomForeverReqData struct {
	RoomID     string `json:"room_id"`
	ForeverKey string `json:"forever_key"`
	Username   string `json:"username"`
	PublicKey  string `json:"public_key"`
}

type JoinRoomForeverRes

type JoinRoomForeverRes struct {
	Cmd  string                 `json:"cmd"`
	Data JoinRoomForeverResData `json:"data"`
}

type JoinRoomForeverResData

type JoinRoomForeverResData struct {
	RoomID    string                `json:"room_id"`
	RoomName  string                `json:"room_name"`
	UserID    string                `json:"user_id"`
	Username  string                `json:"username"`
	PublicKey string                `json:"public_key"`
	Users     []rstructs.JoinedUser `json:"users"`
}

type JoinRoomOneTimeReq

type JoinRoomOneTimeReq struct {
	Cmd  string                 `json:"cmd"`
	Data JoinRoomOneTimeReqData `json:"data"`
}

type JoinRoomOneTimeReqData

type JoinRoomOneTimeReqData struct {
	RoomID     string `json:"room_id"`
	OneTimeKey string `json:"one_time_key"`
	Username   string `json:"username"`
	PublicKey  string `json:"public_key"`
}

type JoinRoomOneTimeRes

type JoinRoomOneTimeRes struct {
	Cmd   string                 `json:"cmd"`
	Data  JoinRoomOneTimeResData `json:"data"`
	Users []rstructs.JoinedUser  `json:"users"`
}

type JoinRoomOneTimeResData

type JoinRoomOneTimeResData struct {
	RoomID    string `json:"room_id"`
	RoomName  string `json:"room_name"`
	UserID    string `json:"user_id"`
	Username  string `json:"username"`
	PublicKey string `json:"public_key"`
}

type ResetRoomKeysReq

type ResetRoomKeysReq struct {
	Cmd  string               `json:"cmd"`
	Data ResetRoomKeysReqData `json:"data"`
}

type ResetRoomKeysReqData

type ResetRoomKeysReqData struct {
	RoomID string `json:"room_id"`
}

type ResetRoomKeysRes

type ResetRoomKeysRes struct {
	Cmd  string               `json:"cmd"`
	Data ResetRoomKeysResData `json:"data"`
}

type ResetRoomKeysResData

type ResetRoomKeysResData struct {
	RoomID string `json:"room_id"`
}

type ResponseError

type ResponseError struct {
	Cmd  string `json:"cmd"`
	Data map[string]string
}

type RoomForeverKey

type RoomForeverKey struct {
	ForeverJoinKey string `json:"forever_join_key"`
}

type RoomIDReq

type RoomIDReq struct {
	RoomID string `json:"room_id"`
}

type RoomOneTimeKey

type RoomOneTimeKey struct {
	RoomID     string `json:"room_id"`
	OneTimeKey string `json:"one_time_key"`
}

type SendMessageReq

type SendMessageReq struct {
	Cmd  string             `json:"cmd"`
	Data SendMessageReqData `json:"data"`
}

type SendMessageReqData

type SendMessageReqData struct {
	RoomID   string `json:"room_id"`
	Content  string `json:"content"`
	ToUserID string `json:"to_user_id"`
}

type SendMessageRes

type SendMessageRes struct {
	Cmd  string             `json:"cmd"`
	Data SendMessageResData `json:"data"`
}

type SendMessageResData

type SendMessageResData struct {
	RoomID   string `json:"room_id"`
	UserID   string `json:"user_id"`
	Username string `json:"username"`
	Content  string `json:"content"`
}

type YouJoinedRoomRes

type YouJoinedRoomRes struct {
	Cmd  string               `json:"cmd"`
	Data YouJoinedRoomResData `json:"data"`
}

type YouJoinedRoomResData

type YouJoinedRoomResData struct {
	UserID   string                `json:"user_id"`
	RoomID   string                `json:"room_id"`
	RoomName string                `json:"room_name"`
	Users    []rstructs.JoinedUser `json:"users"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL