Verified Commit 96aae68c authored by Chocobozzz's avatar Chocobozzz
Browse files

Add "ended" embed API event

parent b1f3b635
{
"name": "@peertube/embed-api",
"private": false,
"version": "0.0.1",
"version": "0.0.3",
"description": "API to communicate with the PeerTube player embed",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
......
......@@ -80,7 +80,7 @@ export class PeerTubeEmbedApi {
}
private setupStateTracking () {
let currentState: 'playing' | 'paused' | 'unstarted' = 'unstarted'
let currentState: 'playing' | 'paused' | 'unstarted' | 'ended' = 'unstarted'
setInterval(() => {
const position = this.element.currentTime
......@@ -106,6 +106,11 @@ export class PeerTubeEmbedApi {
this.channel.notify({ method: 'playbackStatusChange', params: 'paused' })
})
this.element.addEventListener('ended', ev => {
currentState = 'ended'
this.channel.notify({ method: 'playbackStatusChange', params: 'ended' })
})
// PeerTube specific capabilities
if (this.isWebtorrent()) {
......
......@@ -123,7 +123,8 @@ Fired every half second to provide the current status of playback. The parameter
}
```
The `volume` field contains the volume from `0` (silent) to `1` (full volume). The `playbackState` can be `playing` or `paused`. More states may be added later.
The `volume` field contains the volume from `0` (silent) to `1` (full volume).
The `playbackState` can be `unstarted`, `playing`, `paused` or `ended`. More states may be added later.
## Event `playbackStatusChange`
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment