livstream-player
Version:
A lightweight livestream player SDK for React apps
136 lines (135 loc) • 12.8 kB
JavaScript
export const SERVER_URL = 'https://core3.beex.vn:9093';
export const SERVER_AI = 'https://ai1.beex.vn:5799';
export const SERVER_URL_CMS = 'https://resource-api.beex.vn:8050';
export const SERVER_UPLOAD_URL = 'https://s3.beex.vn:8099';
export const CHECK_IP_URL = 'https://core3.beex.vn:8089/checkIp';
export const KEY_EVENT = 'chatevent';
export const TOKEN = 'encoded_token';
export const AUTO_LOGOUT_SESSION = 'auto_logout_session';
export const ALLOW_MULTI_TABS = 'allowMultiTab';
export const NAMESPACE = 'namespace';
export const LANGUAGE = 'language';
export const IS_INTRO = 'intro';
export const PINNED_CAMERAS = 'pinned_cameras';
export const USER_ID = 'user_id';
export const MAP_MARKERS = 'map_markers';
export const APP_ID = '0046548bdefa0a0ed04ba8ksid987olh';
export const AZURE_APP_ID = 'azureAppId';
export const AZURE_USER_NAME = 'azureUserName';
export const AZURE_REDIRECT_URI = window.location.origin;
// STUNS: https://gist.github.com/yetithefoot/7592580
export const ICE_SERVER = 'stun:stun.l.google.com:19302';
export const AUTH_LOGOUT_SESSION = 'auth_logout_session';
export const FINGERPRINT_KEY = 'fingerPrintKey';
export const DECODED_ACCESS_TOKEN = 'decodedAccessToken';
export const NOTIFIES = {
SUCCESS: 'success',
INFO: 'info',
WARNING: 'warning',
ERROR: 'error',
};
export const ZOOM_STATE = {
ONE: 1,
TWO: 2,
THREE: 3,
FOUR: 4,
SIX: 6,
};
export const VIEW_STREAM_SERVICE_EXTEND = {
normal: 4,
};
export default {
isPhoneOrEmail: /^(?:((\+84|0|84)+(9|8|7|5|3))+([0-9]{8})\b|[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4})$/i, // check là số điện thoại hoặc email
isfullName: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ]{1}[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ ]{2,49}$$/i, // check tên có dấu nhưng không có ký tự đặc biệt
isphone: /^(\+84[9|8|7|5|3]|0[9|8|7|5|3]|84[9|8|7|5|3])+([0-9]{2})+([ ]?)+([0-9]{3})+([ ]?)+([0-9]{3})\b$/i, // check số điện thoại
// isName: /^[a-zA-Z0-9/!@#$%^&*]*$/, // check tên chỉ có chữ, số và ký tự đặc biệt không dấu
isComponent: /^[a-zA-Z0-9/]*$/, // check số và chữ
isUserNameApi: /^[a-zA-Z0-9_@.]{3,50}$/i, // check chữ số và _
isNumber: /^[0-9]{1,100}$/i, // check là số
isfullNameNnumber: /^[A-Za-zÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ ]{3,50}$$/i, // check tên có dấu nhưng không có ký tự đặc biệt
isfullNameNnumberAdd: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ]{1}[A-Za-z0-9ĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ\-+*?@#$%^&_.=: ]{2,49}$$/i, // check tên có dấu nhưng không có ký tự đặc biệt
isTextOrNumber: /^[a-zA-Z0-9_]{6,50}$/i, // check chỉ số chữ và _
isfullNameNnumberAddNew: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ ]{2,}$$/i, // check tên có dấu nhưng không có ký tự đặc biệt
isNameMedi: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ]{1}[A-Za-z0-9ĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôố ồổộỗờớỡợ/ởơùúụủũứừửữựưýỳỷỹỵ,-]{2,49}$$/i, // check tên có dấu nhưng không có ký tự đặc biệt
isfullNameNnumberAddUnit: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ0-9 ]{0,49}$$/i,
isfullNameNnumberAddPackages: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ]{1}[A-Za-z0-9ĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ(),;-\\+\\/ ]{2,49}$$/i, // check tên có dấu nhưng không có ký tự đặc biệt
iscode: /^[A-Za-z0-9ĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợ/ở ơùúụủũứừửữựưýỳỷỹỵ-]{1,100}$$/i, // check tên có dấu nhưng không có ký tự đặc biệt
isbarcode: /^[A-Za-zĐ0-9/-]{0,20}$$/i,
invoiceCode: /^[A-Za-zĐ0-9/-_]{0,100}$$/i,
isTextNumberOrEmail: /^([a-zA-Z0-9_]{6,50}|[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4})$/i, // check là số từ 6 đến 50 kí tự và email
isGroupName: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ]{1}[A-Za-z0-9ĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ(),;-\\\\/ ]{1,49}$$/i,
isName: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ 0-9-:_,&]*$/i,
isNameShort: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ 0-9-:_]{1,80}$$/i,
isNameLong: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ 0-9-:_]{1,200}$$/i,
isMobile: /^(\+84|84|0|1){1}([0-9]{7,10})\b$/i,
isNameMAC: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ 0-9-:_]*$/i,
isurl: /^[a-zA-Z0-9/\-+*?@#$%^&_.=:]*?$/,
isPassword: /^[a-zA-Z0-9/\-+*?@#$%^&_.=:]*?$/,
isPasswordStrong: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,80}$/,
isText: /^[A-Za-zĐÀÁẢẠÃẦẤẨẬẪÂẮẰẶẴĂẲÈÉẸẺẼỂẾỀỆỄÊỊÌÍĨỈÒÓỎỌÕÔỐỒỔỘỖỜỚỠỢỞƠÙÚỤỦŨỨỪỬỮỰƯÝỲỶỸỴđàáảạãầấẩậẫâắằặẵăẳèéẹẻẽểếềệễêịìíĩỉòóỏọõôốồổộỗờớỡợởơùúụủũứừửữựưýỳỷỹỵ 0-9/\-+*?@#$%^&_.=:]*?$/,
};
export const STATE_MAINTAIN = 2;
export const STATE_ON = 1;
export const STATE_OFF = 0;
export const key_main = '0d6KQWnEcL6ffz1RJ60TF1k6hq4dv2eA';
export const PHONE_STATES = {
NOT_SET: 'NOT_SET',
RINGING: 'RINGING',
IN_CALL: 'IN_CALL',
TERMINATED: 'TERMINATED',
REJECTED: 'REJECTED',
CALLING_OUT: 'CALLING_OUT',
COMING_CALL: 'COMING_CALL',
};
export const PHONE_REGISTER_STATUS = {
UNSET: 'UNSET',
REGISTERING: 'REGISTERING',
READY: 'READY',
ERROR: 'ERROR',
};
export const MAX_DELAY_SHOW_WARNING = 4000;
export const ACTION_LOGS = {
DISCONNECTED_DEVICE: 'Disconnected',
LOGIN: 'Login',
ADD_DEVICE: 'Add',
DELETE_DEVICE: 'Delete',
DOWNLOAD_DATA: 'Download',
DELETE_STORAGE_FILE: 'Delete_Storage_File',
ADD_MEMBER: 'Add_Member',
REMOVE_MEMBER: 'Remove_Member',
UPDATE_MEMBER: 'Update_Member',
SHARE_CAMERA: 'Share_Camera',
REMOVE_SHARE_CAMERA: 'Remove_Share_Camera',
REMOVE_GROUP_SHARE_CAMERA: 'Remove_Group_Share_Camera',
ACTIVE_LICENSE: 'Active_License',
DE_ACTIVE_LICENSE: 'De_Active_License',
CHANGE_CAMERA_SOURCE: 'Change_Camera_Source',
CHANGE_DEVICE_INFO: 'Change_Device_Info',
ADD_GROUP_DEVICE: 'Add_Group_Device',
UPDATE_GROUP_DEVICE: 'Update_Group_Device',
REMOVE_GROUP_DEVICE: 'Remove_Group_Device',
ADD_GROUP_ACCOUNT: 'Add_Group_Account',
UPDATE_GROUP_ACCOUNT: 'Update_Group_Account',
REMOVE_GROUP_ACCOUNT: 'Remove_Group_Account',
CONFIG_SERVICE: 'Config_Service',
};
export const GOOGLE_CLIENT_ID = 'google_client_id';
export const GOOGLE_NAMESPACE = 'google_namespace_id';
export const GOOGLE_USERNAME = 'google_username';
export const DEFAULT_QUALITY_LEVEL = 'default_quality_level';
export const LAST_ACTIVE_TIME = 'last_active_time';
export const MAX_ENABLE_INACTIVE_LOGOUT = 'max_enable_inactive_logout';
export const ACCOUNT_STATUS = {
ACTIVE: 'available',
BLOCKED: 'blocked'
};
export const USER_TYPE_OPTIONS = [
{
label: 'Member',
value: 'member',
},
{
label: 'Administrator',
value: 'admin',
},
];