Crate opentalk_types

source ·
Expand description

Data types for OpenTalk.

This crate contains all data types that are used in the OpenTalk web and signaling APIs.

§Features

§default

This is the “easy” way to use this crate, unless you need specific functionalities for the backend, then you should use the backend feature instead.

Depends on:

  • frontend

§backend

Set the backend feature for using the types anywhere in the backend (e.g., a signaling module, the OpenTalk controller implementation, the OpenTalk room server).

Depends on:

  • diesel
  • redis
  • kustos
  • serde
  • rand

§frontend

Set the frontend feature for using the types in a client. Because the default feature depends on this, you probably don’t need to set it explicitly, unless you have set default-features = false.

§diesel

Adds Diesel type mappings to simple newtypes, so they can be stored in a database through the ORM.

Depends on:

  • serde

§redis

Implements Redis ToRedisArgs and FromRedisValue for types that can be stored on a redis server.

Depends on:

  • serde

§kustos

Annotates identifier newtypes with a kustos resource implementation.

§rand

Some functions for generating values from random numbers are gated by this flag. These are typically used on the backend for creating new identifiers or tokens.

§serde

Derives [serde::Serialize] and [serde::Deserialize] for all types that can be serialized or deserialized for usage in the web and signaling APIs as well as Diesel and Redis.

Modules§

  • This module contains types that are used in different areas of the OpenTalk API endpoints, such as types for the V1 endpoints.
  • This module contains types that are used in different areas of the OpenTalk API, such as the Web API and signaling.
  • This module contains types that are considered to be in the core of OpenTalk.
  • This module contains types that are used by the signaling communication (typically through websockets)
  • This module contains helpers for string-like types.

Macros§