Client for external control protocol provided on port 8060
npm install @dlenroc/roku-ecpClient for external control protocol provided on port 8060
``sh`
npm install @dlenroc/roku-ecp
`typescript
import { ECPExecutor, launch } from '@dlenroc/roku-ecp';
const ctx = new ECPExecutor({ address: 'http://
await launch(ctx, { appId: 'dev' });
`
`ts`
exitApp(payload: { appId: AppId }): Promise
`ts`
input(payload: Record
`ts`
keydown(payload: { key: string }): Promise
`ts`
keypress(payload: { key: string }): Promise
`ts`
keyup(payload: { key: string }): Promise
`ts`
launch(payload: { appId: AppId; params?: Record
`ts`
queryActiveApp(): Promise
`ts`
queryAppObjectCounts(payload: { appId: AppId }): Promise
`ts`
queryApps(config?: Config
`ts`
queryAppState(payload: { appId: AppId }): Promise
`ts`
queryAppUI(): Promise
`ts`
queryChannelPerformance(payload?: { appId?: AppId; params?: Record
`ts`
queryDeviceInfo(): Promise
`ts`
queryFWBeacons(): Promise
`ts`
queryGraphicsFrameRate(): Promise
`ts`
queryIcon(payload: { appId: AppId }): Promise
`ts`
queryMediaPlayer(): Promise
`ts`
queryR2D2Bitmaps(payload?: { appId?: AppId }): Promise
`ts`
queryRegistry(payload: { appId: AppId }): Promise
`ts`
querySGNodesAll(payload?: { appId?: AppId }): Promise
`ts`
querySGNodesNodes(payload: { appId?: AppId; nodeId: string }): Promise
`ts`
querySGNodesRoots(payload?: { appId?: AppId }): Promise
`ts`
querySGRendezvous(): Promise
`ts`
search(payload: Record
`ts`
trackFWBeacons(payload?: { appId?: AppId }): Promise
`ts`
trackSGRendezvous(payload?: { appId?: AppId }): Promise
`ts`
untrackFWBeacons(payload?: { appId?: AppId }): Promise
`ts``
untrackSGRendezvous(payload?: { appId?: AppId }): Promise