Security News
Weekly Downloads Now Available in npm Package Search Results
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
live-cat-library
Advanced tools
This is a component library for 3DCAT
interface BaseOptionsType {
address: string // address
appId?: string // appId
appKey?: string // appKey
appSecret?: string // appSecret
startType?: StartType
castScreenMaxQty?: number
castScreenNickname?: string
castScreenPwd?: string
isCastScreenMaster?: boolean
serverIp?: string //for coturn server
joinType?: ScreenJoinType //only screen
optionalParam?: string // command line parameters
exeParameter?: string // command line parameters for privatization
enableVirtualCamera?: boolean // setup camera enable
}
Options detail to see live-cat
type UIOptions = Options & loadingOptions & ExtendUIOptions
interface loadingOptions {
loadingImage: string | HTMLImageElement
loadingBgImage: { portrait: string; landscape: string }
loadingBarImage: string | HTMLImageElement
showDefaultLoading: boolean
showFakePercent: boolean
phaseChanged: boolean
percentChanged: boolean
}
interface ExtendUIOptions {
onChange: (cb: OnChange) => void
onQueue: (rank: number) => void
onLoadingError: (err: LoadingError) => void
onTaskId: (taskId: number) => void
onShowUserList: (showCastScreenUsers: boolean) => void
onRunningOptions: (opt: OnRunningOptions) => void
}
interface OnChange {
phase: Phase
fakePercent: number
deltaTime: number
}
type Phase =
| 'initial'
| 'signaling-connected'
| 'node-ready'
| 'end-candidate'
| 'peer-connection-connected'
| 'data-channel-open'
| 'streaming-ready'
| 'loaded-metadata'
| 'streaming-playing'
interface LoadingError {
code: number | string
type: 'app' | 'task' | 'connection' | 'reConnection'
reason: string | ErrorState
}
type ErrorState = 'disconnect' | 'afk' | 'kick' | 'hangup'
interface OnRunningOptions {
token: string
coturns: RTCIceServer[]
signaling: string
}
enum StartType {
NormalMode = 1,
ScreenMode = 3,
}
enum ScreenJoinType {
Secret = 1,
Link,
}
//when terminal is ios and wechat
onPhaseChange: (phase: Phase, deltaTime: number) => {
if (phase === 'data-channel-open') {
/* NOTE: Autoplay video need user activation gesture
* @see https://html.spec.whatwg.org/multipage/interaction.html#user-activation-processing-model
*/
someTriggerElement.addEventListener('click', () => launcherUI?.launcher?.resumeVideoStream())
}
}
//Microphone
//Start capture audio to node
onPhaseChange: (phase: Phase, deltaTime: number) => {
if (phase === 'data-channel-open') {
launcherUI?.launcher?.openMicrophone()
}
}
//Stop
launcherUI?.launcher?.closeMicrophone()
//Camera
const baseOptionsType = {
address: 'xxxx',
appKey: 'xxxx',
startType: 1,
enableVirtualCamera: true,
}
let launcherUI = new LauncherUI(baseOptionsType, container)
//Start capture video to node
onPhaseChange: (phase: Phase, deltaTime: number) => {
if (phase === 'data-channel-open') {
launcherUI?.launcher?.openCamera()
}
}
//Stop
launcherUI?.launcher?.closeCamera()
// Public Cloud
import { LauncherUI } from 'live-cat-library'
const container = document.querySelector('body')
document.querySelector('body').style.width = '100%'
document.querySelector('body').style.height = '100%'
const baseOptionsType = {
address: 'https://app.3dcat.live',
appKey: 'xxxx',
startType: 1,
}
const uiOptions = {
loadingImage: '',
}
let launcherUI = new LauncherUI(baseOptionsType, container, uiOptions)
window.addEventListener('DOMContentLoaded', () => {
if (navigator.userAgent.includes('miniProgram') || navigator.userAgent.includes('MicroMessenger')) {
//wechat
document.addEventListener('WeixinJSBridgeReady', bootstrap, false)
} else {
bootstrap()
}
})
// Private Cloud
import { LauncherPrivateUI } from 'live-cat-library'
const container = document.querySelector('body')
document.querySelector('body').style.width = '100%'
document.querySelector('body').style.height = '100%'
const baseOptionsType = {
address: 'xxxxx',
appKey: 'xxxx',
startType: 1,
}
const uiOptions = {
loadingImage: '',
}
let launcherUI = new LauncherPrivateUI(baseOptionsType, container, uiOptions)
window.addEventListener('DOMContentLoaded', () => {
if (navigator.userAgent.includes('miniProgram') || navigator.userAgent.includes('MicroMessenger')) {
//wechat
document.addEventListener('WeixinJSBridgeReady', bootstrap, false)
} else {
bootstrap()
}
})
MIT
FAQs
This is a component library for [3DCAT](https://www.3dcat.live/)
The npm package live-cat-library receives a total of 108 weekly downloads. As such, live-cat-library popularity was classified as not popular.
We found that live-cat-library demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
Security News
A Stanford study reveals 9.5% of engineers contribute almost nothing, costing tech $90B annually, with remote work fueling the rise of "ghost engineers."
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.