griffith-message-justcome
v1.6.13
Published
griffith message plugin
Downloads
2
Readme
griffith-message
English | 简体中文
Griffith message communication plugin
Usage
import {EVENTS, ACTIONS, createMessageHelper} from 'griffith-message'
createMessageHelper
Cross-window communication
const {subscribeMessage, dispatchMessage} = createMessageHelper(
id,
targetOrigin,
validateId
)
| Name | Type | Description |
| ------------ | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------- |
| id | string \| number
| Unique identifier, each message will contain this id, the receiver can be used to verify. |
| targetOrigin | object
| The targetOrigin parameter when sending a message. If it is not empty, it will check if the origin of the sent message is the same. |
| validateId | boolean
| Will check if the id of the incoming message is the same as the id of the first parameter. |
subscribeMessage
const subscription = subscribeMessage((messageName, data, sourceWindow) => {
// do something
})
subscription.unsubscribe()
| Name | Type | Description |
| ------------ | -------------------- | ------------------------------------------ |
| messageName | string
| Message Name |
| data | object
| Message attached data |
| sourceWindow | MessageEventSource
| Message Event Source |
dispatchMessage
dispatchMessage(targetWindow, messageName, data)
| Name | Type | Description |
| ------------ | -------- | --------------------- |
| targetWindow | Window
| Target Window |
| messageName | string
| Message Name |
| data | object
| Message attached data |
EVENTS
Events received from the player
| messageName
| Description | data
|
| -------------------------------- | ------------------------------------ | ---------------------------------------- |
| EVENTS.DOM.PLAY
| Play | see DOM type data table |
| EVENTS.DOM.PLAYING
| Resume playback from pause or buffer | see DOM type data table |
| EVENTS.DOM.PAUSE
| Pause | see DOM type data table |
| EVENTS.DOM.ENDED
| Ended | see DOM type data table |
| EVENTS.DOM.TIMEUPDATE
| Timeupdate | see DOM type data table |
| EVENTS.DOM.ERROR
| Error | see DOM type data table |
| EVENTS.DOM.WAITING
| Buffer | see DOM type data table |
| EVENTS.PLAYER.REQUEST_PLAY
| User starts playback | null |
| EVENTS.PLAYER.QUALITY_CHANGE
| Play quality switching | {quality: string, prevQuality: string}
|
| EVENTS.PLAYER.PLAY_COUNT
| Playback | null |
| EVENTS.PLAYER.PLAY_FAILED
| Play failed | {currentTime: number}
|
| EVENTS.PLAYER.ENTER_FULLSCREEN
| Enter fullScreen | null |
| EVENTS.PLAYER.EXIT_FULLSCREEN
| Exit fullscreen | null |
DOM type data
| Name | Type | Description |
| ------------- | --------------------------------------------------------- | -------------------------------------------------- |
| currentTime
| number
| Current time |
| duration
| number
| Total video duration |
| error
| {code: number, message: string, name: stirng}
or null
| HTMLMediaElement.error
|
ACTIONS
Event sent to the player
| messageName
| Description | data
| Status |
| --------------------------------- | ---------------- | ----------------------------------------------------------- | --------- |
| ACTIONS.PLAYER.PLAY
| Play | {applyOnFullScreen: boolean}
Applied to full screen video | TODO |
| ACTIONS.PLAYER.PAUSE
| Pause | Applied to full screen video | SUPPORTED |
| ACTIONS.PLAYER.SET_VOLUME
| Set the volume | {volume: number}
Volume value from 0 to 1 | TODO |
| ACTIONS.PLAYER.ENTER_FULLSCREEN
| Enter fullScreen | null | TODO |
| ACTIONS.PLAYER.EXIT_FULLSCREEN
| Exit fullscreen | null | TODO |