stormcloud-video-player 0.3.63 → 0.3.65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/stormcloud-vp.min.js +3 -1
- package/lib/index.cjs +325 -215
- package/lib/index.cjs.map +1 -1
- package/lib/index.d.cts +35 -1
- package/lib/index.d.ts +35 -1
- package/lib/index.js +266 -216
- package/lib/index.js.map +1 -1
- package/lib/player/StormcloudVideoPlayer.cjs +241 -215
- package/lib/player/StormcloudVideoPlayer.cjs.map +1 -1
- package/lib/player/StormcloudVideoPlayer.d.cts +5 -0
- package/lib/players/HlsPlayer.cjs +241 -215
- package/lib/players/HlsPlayer.cjs.map +1 -1
- package/lib/players/index.cjs +241 -215
- package/lib/players/index.cjs.map +1 -1
- package/lib/ui/StormcloudVideoPlayer.cjs +241 -215
- package/lib/ui/StormcloudVideoPlayer.cjs.map +1 -1
- package/lib/utils/mqttClient.cjs +245 -0
- package/lib/utils/mqttClient.cjs.map +1 -0
- package/lib/utils/mqttClient.d.cts +13 -0
- package/lib/utils/mqttConfig.cjs +141 -0
- package/lib/utils/mqttConfig.cjs.map +1 -0
- package/lib/utils/mqttConfig.d.cts +20 -0
- package/lib/utils/tracking.cjs +182 -170
- package/lib/utils/tracking.cjs.map +1 -1
- package/package.json +3 -1
- package/src/certs/emqxsl-ca.crt +22 -0
package/lib/index.d.cts
CHANGED
|
@@ -145,6 +145,7 @@ declare class StormcloudVideoPlayer {
|
|
|
145
145
|
private inAdBreak;
|
|
146
146
|
private currentAdBreakStartWallClockMs;
|
|
147
147
|
private expectedAdBreakDurationMs;
|
|
148
|
+
private scteAdBreakEndWallClockMs;
|
|
148
149
|
private adStopTimerId;
|
|
149
150
|
private adStartTimerId;
|
|
150
151
|
private adFailsafeTimerId;
|
|
@@ -241,6 +242,9 @@ declare class StormcloudVideoPlayer {
|
|
|
241
242
|
private activatePendingScte35CuesForFragment;
|
|
242
243
|
private onScte35Marker;
|
|
243
244
|
private startScte35AdBreak;
|
|
245
|
+
private resolveScteBreakStartWallClockMs;
|
|
246
|
+
private setAdBreakDurationBoundary;
|
|
247
|
+
private scheduleAdStopAtBreakBoundary;
|
|
244
248
|
private parseCueOutDuration;
|
|
245
249
|
private parseCueOutCont;
|
|
246
250
|
private parseAttributeList;
|
|
@@ -324,6 +328,7 @@ declare class StormcloudVideoPlayer {
|
|
|
324
328
|
private selectVastTagsForBreak;
|
|
325
329
|
private logAdState;
|
|
326
330
|
private getRemainingAdMs;
|
|
331
|
+
private getAdBreakEndWallClockMs;
|
|
327
332
|
private findBreakForTime;
|
|
328
333
|
toggleMute(): void;
|
|
329
334
|
toggleFullscreen(): Promise<void>;
|
|
@@ -4079,6 +4084,35 @@ declare function sendAdLoadedTracking(licenseKey: string | undefined, adLoadedIn
|
|
|
4079
4084
|
declare function sendAdImpressionTracking(licenseKey: string | undefined, adImpressionInfo: AdImpressionInfo, context?: PlayerAnalyticsContext): Promise<void>;
|
|
4080
4085
|
declare function sendHeartbeat(licenseKey?: string, context?: PlayerAnalyticsContext, flags?: PlayerMetricFlags): Promise<void>;
|
|
4081
4086
|
|
|
4087
|
+
declare const MQTT_CA_CERT_FILE = "src/certs/emqxsl-ca.crt";
|
|
4088
|
+
type MQTTConfig = {
|
|
4089
|
+
enabled: boolean;
|
|
4090
|
+
brokerAddress: string;
|
|
4091
|
+
brokerPort: number;
|
|
4092
|
+
wsPort: number;
|
|
4093
|
+
username: string;
|
|
4094
|
+
password: string;
|
|
4095
|
+
topicPrefix: string;
|
|
4096
|
+
qos: 0 | 1 | 2;
|
|
4097
|
+
brokerUrl?: string;
|
|
4098
|
+
};
|
|
4099
|
+
declare const DEFAULT_MQTT_CONFIG: MQTTConfig;
|
|
4100
|
+
declare const mqttConfig: MQTTConfig;
|
|
4101
|
+
declare function applyMQTTConfig(overrides: Partial<MQTTConfig>): void;
|
|
4102
|
+
declare function isMQTTEnabled(): boolean;
|
|
4103
|
+
declare function buildMQTTBrokerUrl(): string;
|
|
4104
|
+
declare function buildPlayerTopic(licenseKey: string, channel: "metrics" | "impressions" | "heartbeat"): string;
|
|
4105
|
+
|
|
4106
|
+
type MQTTStatus = "disconnected" | "connecting" | "connected" | "error";
|
|
4107
|
+
declare function getMQTTStatus(): MQTTStatus;
|
|
4108
|
+
declare function isMQTTConnected(): boolean;
|
|
4109
|
+
declare function isMQTTConfigured(): boolean;
|
|
4110
|
+
declare function configureMQTT(overrides: Partial<MQTTConfig>): void;
|
|
4111
|
+
declare function initMQTTClient(): void;
|
|
4112
|
+
declare function ensureMQTTClient(): void;
|
|
4113
|
+
declare function publishMQTT(topic: string, payload: Record<string, unknown>): boolean;
|
|
4114
|
+
declare function disconnectMQTT(): void;
|
|
4115
|
+
|
|
4082
4116
|
declare function initializePolyfills(): void;
|
|
4083
4117
|
|
|
4084
4118
|
interface NavigatorUAData {
|
|
@@ -4134,4 +4168,4 @@ declare function createHlsAdPlayer(contentVideo: HTMLVideoElement, options?: {
|
|
|
4134
4168
|
mainHlsInstance?: Hls;
|
|
4135
4169
|
}): ImaController;
|
|
4136
4170
|
|
|
4137
|
-
export { type AdBreak, type AdDetectInfo, type AdImpressionInfo, type AdLoadedInfo, type AdSchedule, type BaseStormcloudPlayerProps, type BrowserInfo, type ClientInfo, type HeartbeatData, IS_BROWSER, IS_GLOBAL, IS_IOS, IS_SAFARI, type ImaController, type ImaControllerOptions, type LateJoinPolicy, type OnProgressProps, type PlayerAnalyticsContext, SUPPORTS_DASH, SUPPORTS_HLS, StormcloudPlayer, StormcloudVideoPlayer, StormcloudVideoPlayerComponent, type StormcloudVideoPlayerConfig, type StormcloudVideoPlayerProps, type TrackingData, canPlay, createHlsAdPlayer, createImaController, createStormcloudPlayer, StormcloudVideoPlayerComponent as default, detectBrowser, getBrowserConfigOverrides, getBrowserID, getClientInfo, getRecommendedAdPlayer, initializePolyfills, isMediaStream, lazy, logBrowserInfo, merge, omit, parseQuery, players, randomString, sendAdDetectTracking, sendAdImpressionTracking, sendAdLoadedTracking, sendHeartbeat, sendInitialTracking, supportsFeature, supportsGoogleIMA, supportsModernJS, supportsWebKitPresentationMode };
|
|
4171
|
+
export { type AdBreak, type AdDetectInfo, type AdImpressionInfo, type AdLoadedInfo, type AdSchedule, type BaseStormcloudPlayerProps, type BrowserInfo, type ClientInfo, DEFAULT_MQTT_CONFIG, type HeartbeatData, IS_BROWSER, IS_GLOBAL, IS_IOS, IS_SAFARI, type ImaController, type ImaControllerOptions, type LateJoinPolicy, type MQTTConfig, type MQTTStatus, MQTT_CA_CERT_FILE, type OnProgressProps, type PlayerAnalyticsContext, SUPPORTS_DASH, SUPPORTS_HLS, StormcloudPlayer, StormcloudVideoPlayer, StormcloudVideoPlayerComponent, type StormcloudVideoPlayerConfig, type StormcloudVideoPlayerProps, type TrackingData, applyMQTTConfig, buildMQTTBrokerUrl, buildPlayerTopic, canPlay, configureMQTT, createHlsAdPlayer, createImaController, createStormcloudPlayer, StormcloudVideoPlayerComponent as default, detectBrowser, disconnectMQTT, ensureMQTTClient, getBrowserConfigOverrides, getBrowserID, getClientInfo, getMQTTStatus, getRecommendedAdPlayer, initMQTTClient, initializePolyfills, isMQTTConfigured, isMQTTConnected, isMQTTEnabled, isMediaStream, lazy, logBrowserInfo, merge, mqttConfig, omit, parseQuery, players, publishMQTT, randomString, sendAdDetectTracking, sendAdImpressionTracking, sendAdLoadedTracking, sendHeartbeat, sendInitialTracking, supportsFeature, supportsGoogleIMA, supportsModernJS, supportsWebKitPresentationMode };
|
package/lib/index.d.ts
CHANGED
|
@@ -145,6 +145,7 @@ declare class StormcloudVideoPlayer {
|
|
|
145
145
|
private inAdBreak;
|
|
146
146
|
private currentAdBreakStartWallClockMs;
|
|
147
147
|
private expectedAdBreakDurationMs;
|
|
148
|
+
private scteAdBreakEndWallClockMs;
|
|
148
149
|
private adStopTimerId;
|
|
149
150
|
private adStartTimerId;
|
|
150
151
|
private adFailsafeTimerId;
|
|
@@ -241,6 +242,9 @@ declare class StormcloudVideoPlayer {
|
|
|
241
242
|
private activatePendingScte35CuesForFragment;
|
|
242
243
|
private onScte35Marker;
|
|
243
244
|
private startScte35AdBreak;
|
|
245
|
+
private resolveScteBreakStartWallClockMs;
|
|
246
|
+
private setAdBreakDurationBoundary;
|
|
247
|
+
private scheduleAdStopAtBreakBoundary;
|
|
244
248
|
private parseCueOutDuration;
|
|
245
249
|
private parseCueOutCont;
|
|
246
250
|
private parseAttributeList;
|
|
@@ -324,6 +328,7 @@ declare class StormcloudVideoPlayer {
|
|
|
324
328
|
private selectVastTagsForBreak;
|
|
325
329
|
private logAdState;
|
|
326
330
|
private getRemainingAdMs;
|
|
331
|
+
private getAdBreakEndWallClockMs;
|
|
327
332
|
private findBreakForTime;
|
|
328
333
|
toggleMute(): void;
|
|
329
334
|
toggleFullscreen(): Promise<void>;
|
|
@@ -4079,6 +4084,35 @@ declare function sendAdLoadedTracking(licenseKey: string | undefined, adLoadedIn
|
|
|
4079
4084
|
declare function sendAdImpressionTracking(licenseKey: string | undefined, adImpressionInfo: AdImpressionInfo, context?: PlayerAnalyticsContext): Promise<void>;
|
|
4080
4085
|
declare function sendHeartbeat(licenseKey?: string, context?: PlayerAnalyticsContext, flags?: PlayerMetricFlags): Promise<void>;
|
|
4081
4086
|
|
|
4087
|
+
declare const MQTT_CA_CERT_FILE = "src/certs/emqxsl-ca.crt";
|
|
4088
|
+
type MQTTConfig = {
|
|
4089
|
+
enabled: boolean;
|
|
4090
|
+
brokerAddress: string;
|
|
4091
|
+
brokerPort: number;
|
|
4092
|
+
wsPort: number;
|
|
4093
|
+
username: string;
|
|
4094
|
+
password: string;
|
|
4095
|
+
topicPrefix: string;
|
|
4096
|
+
qos: 0 | 1 | 2;
|
|
4097
|
+
brokerUrl?: string;
|
|
4098
|
+
};
|
|
4099
|
+
declare const DEFAULT_MQTT_CONFIG: MQTTConfig;
|
|
4100
|
+
declare const mqttConfig: MQTTConfig;
|
|
4101
|
+
declare function applyMQTTConfig(overrides: Partial<MQTTConfig>): void;
|
|
4102
|
+
declare function isMQTTEnabled(): boolean;
|
|
4103
|
+
declare function buildMQTTBrokerUrl(): string;
|
|
4104
|
+
declare function buildPlayerTopic(licenseKey: string, channel: "metrics" | "impressions" | "heartbeat"): string;
|
|
4105
|
+
|
|
4106
|
+
type MQTTStatus = "disconnected" | "connecting" | "connected" | "error";
|
|
4107
|
+
declare function getMQTTStatus(): MQTTStatus;
|
|
4108
|
+
declare function isMQTTConnected(): boolean;
|
|
4109
|
+
declare function isMQTTConfigured(): boolean;
|
|
4110
|
+
declare function configureMQTT(overrides: Partial<MQTTConfig>): void;
|
|
4111
|
+
declare function initMQTTClient(): void;
|
|
4112
|
+
declare function ensureMQTTClient(): void;
|
|
4113
|
+
declare function publishMQTT(topic: string, payload: Record<string, unknown>): boolean;
|
|
4114
|
+
declare function disconnectMQTT(): void;
|
|
4115
|
+
|
|
4082
4116
|
declare function initializePolyfills(): void;
|
|
4083
4117
|
|
|
4084
4118
|
interface NavigatorUAData {
|
|
@@ -4134,4 +4168,4 @@ declare function createHlsAdPlayer(contentVideo: HTMLVideoElement, options?: {
|
|
|
4134
4168
|
mainHlsInstance?: Hls;
|
|
4135
4169
|
}): ImaController;
|
|
4136
4170
|
|
|
4137
|
-
export { type AdBreak, type AdDetectInfo, type AdImpressionInfo, type AdLoadedInfo, type AdSchedule, type BaseStormcloudPlayerProps, type BrowserInfo, type ClientInfo, type HeartbeatData, IS_BROWSER, IS_GLOBAL, IS_IOS, IS_SAFARI, type ImaController, type ImaControllerOptions, type LateJoinPolicy, type OnProgressProps, type PlayerAnalyticsContext, SUPPORTS_DASH, SUPPORTS_HLS, StormcloudPlayer, StormcloudVideoPlayer, StormcloudVideoPlayerComponent, type StormcloudVideoPlayerConfig, type StormcloudVideoPlayerProps, type TrackingData, canPlay, createHlsAdPlayer, createImaController, createStormcloudPlayer, StormcloudVideoPlayerComponent as default, detectBrowser, getBrowserConfigOverrides, getBrowserID, getClientInfo, getRecommendedAdPlayer, initializePolyfills, isMediaStream, lazy, logBrowserInfo, merge, omit, parseQuery, players, randomString, sendAdDetectTracking, sendAdImpressionTracking, sendAdLoadedTracking, sendHeartbeat, sendInitialTracking, supportsFeature, supportsGoogleIMA, supportsModernJS, supportsWebKitPresentationMode };
|
|
4171
|
+
export { type AdBreak, type AdDetectInfo, type AdImpressionInfo, type AdLoadedInfo, type AdSchedule, type BaseStormcloudPlayerProps, type BrowserInfo, type ClientInfo, DEFAULT_MQTT_CONFIG, type HeartbeatData, IS_BROWSER, IS_GLOBAL, IS_IOS, IS_SAFARI, type ImaController, type ImaControllerOptions, type LateJoinPolicy, type MQTTConfig, type MQTTStatus, MQTT_CA_CERT_FILE, type OnProgressProps, type PlayerAnalyticsContext, SUPPORTS_DASH, SUPPORTS_HLS, StormcloudPlayer, StormcloudVideoPlayer, StormcloudVideoPlayerComponent, type StormcloudVideoPlayerConfig, type StormcloudVideoPlayerProps, type TrackingData, applyMQTTConfig, buildMQTTBrokerUrl, buildPlayerTopic, canPlay, configureMQTT, createHlsAdPlayer, createImaController, createStormcloudPlayer, StormcloudVideoPlayerComponent as default, detectBrowser, disconnectMQTT, ensureMQTTClient, getBrowserConfigOverrides, getBrowserID, getClientInfo, getMQTTStatus, getRecommendedAdPlayer, initMQTTClient, initializePolyfills, isMQTTConfigured, isMQTTConnected, isMQTTEnabled, isMediaStream, lazy, logBrowserInfo, merge, mqttConfig, omit, parseQuery, players, publishMQTT, randomString, sendAdDetectTracking, sendAdImpressionTracking, sendAdLoadedTracking, sendHeartbeat, sendInitialTracking, supportsFeature, supportsGoogleIMA, supportsModernJS, supportsWebKitPresentationMode };
|