mirror of
https://gitlab.crans.org/nounous/ghostream.git
synced 2025-02-06 17:12:59 +00:00
30 lines
714 B
JavaScript
30 lines
714 B
JavaScript
|
/**
|
||
|
* ViewerCounter show the number of active viewers
|
||
|
*/
|
||
|
export class ViewerCounter {
|
||
|
/**
|
||
|
* @param {HTMLElement} element
|
||
|
* @param {String} streamName
|
||
|
*/
|
||
|
constructor(element, streamName) {
|
||
|
this.element = element;
|
||
|
this.url = "/_stats/" + streamName;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Regulary update counter
|
||
|
*
|
||
|
* @param {Number} updatePeriod
|
||
|
*/
|
||
|
regularUpdate(updatePeriod) {
|
||
|
setInterval(this._refreshViewersCounter, updatePeriod);
|
||
|
}
|
||
|
|
||
|
_refreshViewersCounter() {
|
||
|
fetch(this.url)
|
||
|
.then(response => response.json())
|
||
|
.then((data) => this.element.innerText = data.ConnectedViewers)
|
||
|
.catch(console.log);
|
||
|
}
|
||
|
}
|