Prefeat/companion (#192)

* feat: register missing load event endpoints in websocket
* refactor: rename message socket endpoints
* version bump
This commit is contained in:
Carlos Valente
2022-08-10 13:02:43 +02:00
committed by GitHub
parent b80ae543a4
commit a8ce6f3fc1
4 changed files with 31 additions and 21 deletions
+18 -8
View File
@@ -65,13 +65,14 @@ More documentation available [here](https://cpvalente.gitbook.io/ontime/)
- Public Info
- Picture in Picture
- Studio Clock
- [Make your own?](#make-your-own-viewer)
- [Make your own?](#make-your-own-viewer)
- [x] Configurable realtime Lower Thirds
- [x] Cuesheets with additional custom fields
- [x] Send live messages to different screen types
- [x] Ability to differentiate between backstage and public data
- [x] Manage delays workflow
- [x] Open Sound Control (OSC) Control and Feedback
- [x] Integrate with hardware using Companion or one of the APIs
- [x] Roll mode: run independently using the system clock
- [x] Import event list from Excel
- [x] URL Aliases (define configurable aliases to ease onsite setup)
@@ -80,7 +81,8 @@ More documentation available [here](https://cpvalente.gitbook.io/ontime/)
same as app)
- [x] Multi platform (available on Windows, MacOS and Linux)
- [x] [Headless run](#headless-run) (run server only, configure from a browser locally)
- [x] [Countdown to anything!](https://cpvalente.gitbook.io/ontime/views/countdown): ability to have a countdown to any scheduled event
- [x] [Countdown to anything!](https://cpvalente.gitbook.io/ontime/views/countdown): ability to have
a countdown to any scheduled event
## Unopinionated
@@ -107,7 +109,9 @@ Taking advantage of the integrations in Ontime, we currently use Ontime with:
webmodule
- `OBS`: **render views** using the Browser Module
- `QLab`: trigger ontime using **OSC API**
- `Companion`: trigger ontime and manipulate timer using **OSC API**
- `Companion`: Ontime has a **companion module**. Issue report and feature requests should be done
in
the [repository getontime/ontime](https://github.com/bitfocus/companion-module-getontime-ontime)
### Make your own viewer
@@ -119,12 +123,16 @@ how to get you started and read the docs about
the [Websocket API](https://app.gitbook.com/s/-Mc0giSOToAhq0ROd0CR/control-and-feedback/websocket-api)
### Headless run
You can self host and run ontime in a docker image, the run command should:
- expose the necessary ports (listen in Dockerfile)
- mount a local file to persist your data (in the example: ````$(pwd)/local-data````)
- the image name __getontime/ontime__
The docker image is in [available Docker Hub at getontime/ontime](https://hub.docker.com/r/getontime/ontime)
The docker image is
in [available Docker Hub at getontime/ontime](https://hub.docker.com/r/getontime/ontime)
```bash
docker pull getontime/ontime
```
@@ -177,17 +185,19 @@ or in Linux
```Could Not Display "ontime-linux.AppImage```
You can circumvent this by allowing the execution of the app manually.
You can circumvent this by allowing the execution of the app manually.
- In Windows: click more and select "Run Anyway"
- in macOS: after attempting to run the installer, navigate to System Preferences -> Security & Privacy and allow the execution of the app
- In Linux: right-click the AppImage file -> Properties -> Permissions -> select Allow Executing File as a Program
- in macOS: after attempting to run the installer, navigate to System Preferences -> Security &
Privacy and allow the execution of the app
- In Linux: right-click the AppImage file -> Properties -> Permissions -> select Allow Executing
File as a Program
Long story short: Ontime app is unsigned. </br>Purchasing the certificates for both Mac and Windows
would mean a recurrent expense and is not a priority. This is unlikely to change in future. If you
have tips on how to improve this, or would like to sponsor the code signing,
please [open an issue, so we can discuss it](https://github.com/cpvalente/ontime/issues/new)
#### Safari
There are some issues with Safari versions lower than 13:
@@ -66,22 +66,22 @@ export default function MessageControl() {
(action, payload) => {
switch (action) {
case 'pres-text':
socket.emit('set-timer-text', payload);
socket.emit('set-timer-message-text', payload);
break;
case 'toggle-pres-visible':
socket.emit('set-timer-visible', payload);
socket.emit('set-timer-message-visible', payload);
break;
case 'publ-text':
socket.emit('set-public-text', payload);
socket.emit('set-public-message-text', payload);
break;
case 'toggle-publ-visible':
socket.emit('set-public-visible', payload);
socket.emit('set-public-message-visible', payload);
break;
case 'lower-text':
socket.emit('set-lower-text', payload);
socket.emit('set-lower-message-text', payload);
break;
case 'toggle-lower-visible':
socket.emit('set-lower-visible', payload);
socket.emit('set-lower-message-visible', payload);
break;
case 'toggle-onAir':
socket.emit('set-onAir', payload);
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "ontime",
"version": "1.4.1",
"version": "1.5.0",
"author": "Carlos Valente",
"description": "Time keeping for live events",
"repository": "https://github.com/cpvalente/ontime",
+6 -6
View File
@@ -796,11 +796,11 @@ export class EventTimer extends Timer {
});
// Presenter message
socket.on('set-timer-text', (data) => {
socket.on('set-timer-message-text', (data) => {
this._setTitles('set-timer-text', data);
});
socket.on('set-timer-visible', (data) => {
socket.on('set-timer-message-visible', (data) => {
this._setTitles('set-timer-visible', data);
});
@@ -809,11 +809,11 @@ export class EventTimer extends Timer {
});
/*******************************************/
// Public message
socket.on('set-public-text', (data) => {
socket.on('set-public-message-text', (data) => {
this._setTitles('set-public-text', data);
});
socket.on('set-public-visible', (data) => {
socket.on('set-public-message-visible', (data) => {
this._setTitles('set-public-visible', data);
});
@@ -823,11 +823,11 @@ export class EventTimer extends Timer {
/*******************************************/
// Lower third message
socket.on('set-lower-text', (data) => {
socket.on('set-lower-message-text', (data) => {
this._setTitles('set-lower-text', data);
});
socket.on('set-lower-visible', (data) => {
socket.on('set-lower-message-visible', (data) => {
this._setTitles('set-lower-visible', data);
});