Expand description
Types and traits for the OpenTalk API and signaling protocols.
This crate re-exports items from the crates where they are defined. All of these types can be used directly by importing the crate where they are defined directly. If many types are needed in a project, this crate could be the easier starting point though, because it serves as an index of which crates are available.
§Crate features
In order to allow efficient usage of the referenced items, this crate defines a flag for each of them. In addition some meta features are available that pull in a set of dependencies.
§Meta features
§Types meta features
- types-all - Enables all features that depend on specific datatype crates, indirectly by enabling the api and the signaling-all features.
- api - Enables the api-v1 feature.
- signaling-all - Enables all the signaling datatypes feature for all signaling modules.
§Functionality meta features
- backend -
Should be enabled when implementing the server side of either a signaling module
or an the API. Enables:
- the backend feature of each types crate
- diesel
- kustos
- rand
- redis
- serde
- frontend -
Should be enabled when implemting the client side of either a signaling module
or the API. Enables:
- the frontend feature of each types crate
- serde
§Type features
- api-v1 -
Re-exports
opentalk-types-api-v1crate asapi::v1. - signaling -
Re-exports all content of the
opentalk-types-signalingcrate in thesignalingmodule. - signaling-breakout -
Re-exports
opentalk-types-signaling-breakoutcrate assignaling::breakout. - signaling-chat -
Re-exports
opentalk-types-signaling-chatcrate assignaling::chat. - signaling-control -
Re-exports
opentalk-types-signaling-controlcrate assignaling::control. - signaling-livekit -
Re-exports
opentalk-types-signaling-livekitcrate assignaling::livekit. - signaling-meeting-notes -
Re-exports
opentalk-types-signaling-meeting-notescrate as [signaling::meeting-notes]. - signaling-meeting-report -
Re-exports
opentalk-types-signaling-meeting-reportcrate as [signaling::meeting-report]. - signaling-moderation -
Re-exports
opentalk-types-signaling-moderationcrate assignaling::moderation. - signaling-polls -
Re-exports
opentalk-types-signaling-pollscrate assignaling::polls. - signaling-recording -
Re-exports
opentalk-types-signaling-recordingcrate assignaling::recording. - signaling-recording-service -
Re-exports
opentalk-types-signaling-recording-servicecrate as [signaling::recording-service]. - signaling-shared-folder -
Re-exports
opentalk-types-signaling-shared-foldercrate as [signaling::shared-folder]. - signaling-subroom-audio -
Re-exports
opentalk-types-signaling-subroom-audiocrate as [signaling::subroom-audio]. - signaling-timer -
Re-exports
opentalk-types-signaling-timercrate assignaling::timer. - signaling-training-participation-report -
Re-exports
opentalk-types-signaling-training-participation-reportcrate assignaling::training_participation_report. - signaling-whiteboard -
Re-exports
opentalk-types-signaling-whiteboardcrate assignaling::whiteboard.
§Functionality features
- clap -
Should be enabled when implementing command-line tooling that exposes the
types using
clap. This allows listing the possible values of enumeration types using the builtin--helpfunctionality ofclap. - diesel -
Enabling this feature makes some newtypes storable in a database through the
dieselcrate. Used for implementing the server side with adieseldatabase backend. - kustos -
Adds some metadata to types that represent API resources, so that the
kustospermission enforcement system can determine which permissions it needs to apply to certain endpoints when implementing the server side of the API. - rand -
Adds random generation of some datatypes such as
uuid, so that they can be generated on the server side in the API endpoint implementation or inside signaling modules. - redis - Adds annotations to some signaling data types so that they can be stored inside redis by the server side of a signaling module.
- serde -
Adds
serdeSerializeandDeserializeimplementations for each datatype that is sent over the network. - utoipa -
Adds
utoipaToSchemaandIntoParamsimplementations to all types that are exposed in the OpenTalk Web API, so that they can be used to generate an OpenAPI specification of the Web API.
Re-exports§
pub use opentalk_types_common as common;