Package Exports
- androidtv-remote
- androidtv-remote/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (androidtv-remote) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
androidtv-remote
Installation
npm install androidtv-remoteUsage
After first succeeded pairing, you can reuse generated certs with getCertificate() by sending it in constructor options.
let host = "192.168.1.12";
let options = {
pairing_port : 6467,
remote_port : 6466,
name : 'androidtv-remote',
cert: {},
}
let androidRemote = new AndroidRemote(host, options)
androidRemote.on('secret', function (){
line.question("Code : ", async function (code){
androidRemote.sendCode(code);
}.bind(this));
});
androidRemote.on('powered', function (powered){
console.debug("Powered : " + powered)
});
androidRemote.on('volume', function (volume){
console.debug("Volume : " + volume.level + '/' + volume.maximum + " | Muted : " + volume.muted);
});
androidRemote.on('current_app', function (current_app){
console.debug("Current App : " + current_app);
});
androidRemote.on('ready', async function (){
let cert = androidRemote.getCertificate();
androidRemote.sendKey(RemoteKeyCode.MUTE, RemoteDirection.SHORT)
androidRemote.sendAppLink("https://www.disneyplus.com");
}.bind(this))
let started = await androidRemote.start();Events
Event: secret
Emitted when androidtv ask for code.
Event: powered
Emitted when androidtv is powering on/off.
Event: volume
Emitted when androidtv is changing volume/mute.
Event: current_app
Emitted when androidtv is changing current app.
Event: error
Emitted when androidtv has a problem : by example when you send a wrong app_link with sendAppLink(app_link).
Commands
Command: sendCode(code)
code: You need to pass the shown code on the TV when asked
Command: sendKey(KeyCode, Direction)
KeyCode: Any key of https://developer.android.com/reference/android/view/KeyEvent?hl=frDirection:START_LONG: Start long pushEND_LONG: Stop long pushSHORT: Simple push
Command : sendAppLink(app_link)
app_link: You can find them in some Android apps by seeking 'android:host' in Android-Manifest- You can use jadx to decompile the Android app and read Android-Manifest
- Example : "https://www.netflix.com/title.*"
Others
- If you need to decrypt some new messages from android TV, pass an Hexa form of buffer here : https://protogen.marcgravell.com/decode
- You can take a look at my other package for homebridge that use this current one: homebridge-plugin-androidtv
License
MIT