panjareh
Version:
Panjareh using aparat and phoenix-video-player to play videos on desktops and tvs.
78 lines (77 loc) • 1.84 kB
JavaScript
import { CollectDataAPI, AdsAPI } from "../api";
import QueryParameter from "../utils/queryParameter";
export const getCollectDataConfig = (
contentToken = "",
userToken = "",
uuid = ""
) => {
function getUserAgent() {
if (typeof window !== "undefined") {
if (window.navigator) return window.navigator.userAgent;
}
return "";
}
/* requiredParameter: [
{ name: 'suid', value: userId },
{ name: 'fmid', value: movieId }
], */
return {
intervalTime: 1000,
action: {
name: "kafka",
method: "POST",
url: "kafka",
body: {
params: {
playTime: "FG-VIDEO_CURRENT_TIME",
resolution: "FG-DEVICE_RESOLUTION",
Authorization: userToken,
content: contentToken,
userAgent: getUserAgent(),
x_live_session: uuid,
},
config: {},
},
call: ({ body }) => {
return CollectDataAPI.kafka(body);
},
},
altAction: [
{
name: "hakim",
method: "POST",
url: "hakim",
body: {
params: {
playTime: "FG-VIDEO_CURRENT_TIME",
resolution: "FG-DEVICE_RESOLUTION",
source: "api",
},
},
call: (data) => {
CollectDataAPI.hakim(data).catch((error) => {
console.error(`PLAYER: ${error?.message}`);
});
},
},
],
};
};
export const getAds = () => {
return AdsAPI.get();
};
export const appendUuidOnUrls = (
sources = [],
queryParameterName,
queryParameterValue
) => {
if (sources.length === 0) throw new Error("Player sources is empty!");
return sources.map((source) => {
source.src = QueryParameter.append(
queryParameterName,
queryParameterValue,
source.src
);
return source;
});
};