Skip to content

ObserveRTC/schemas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

411cc00 · Nov 13, 2023
Apr 27, 2023
Nov 13, 2023
Nov 13, 2023
Nov 13, 2023
Nov 13, 2023
Nov 13, 2023
Nov 13, 2023
Apr 27, 2023
Jun 3, 2021
Mar 29, 2023
Apr 23, 2022
Apr 27, 2023
Apr 27, 2023
Mar 29, 2023
Apr 27, 2023
Apr 27, 2023
Sep 24, 2022
Mar 27, 2022
May 19, 2023
Jul 9, 2023
Jun 16, 2023
Apr 27, 2022
Jul 12, 2023
Apr 30, 2023
Jan 8, 2023
Jan 8, 2023
Apr 27, 2023
Feb 14, 2022
Jun 16, 2023
Nov 13, 2023

Repository files navigation

ObserveRTC Schemas

Schemas describe the communication between services in the ObserveRTC stack. The schema is manifested into different languages to make it easy to integrate ObserveRTC. Currently, the following language bindings are generated from the schema:

  • TypeScript/JavaScript available as an npm library.
  • Redshift to integrate reports for AWS Redshift.
  • CSV when exporting reports in CSV format from the observer, the order of the columns might be important.

Install

NPM

npm i @observertc/schemas

Versioning

Schemas use SemVer version numbers of MAJOR.MINOR.PATCH.

Increasing the number of PATCH, MINOR, or MAJOR implies the following:

  • PATCH indicates a change in the related libraries (e.g., bugfix in encoder/decoder).
  • MINOR the source schema has been altered.
  • MAJOR implies conceptual changes in the schema.

Change the schema

Schema change requests

Depending on which minor (or major) version is coming, you can write it in the discussion.

Create PR for schema changes

Discussion is good to request a schema, PR is better. Step to create a PR (after you cloned the repo):

  1. create your branch
  2. change the source of the schemas, sources/version.txt, trace the change in the sources/CHANGELOG.md.
  3. Generate npm-lib typescripts (see below)
  4. open the PR

Develop

To run the schema generator for npm-lib:

  git clone https://github.com/observertc/schemas && \
  cd schemas && \
  npm i && \
  node index.js