kasa_control
v0.1.2
Published
Use kasa-cloud to hit your TPLink bulbs in nodejs
Downloads
23
Readme
kasa-control
This will let you use kasa-cloud to hit your TPLink bulbs in nodejs.
If you'd like to hit them directly, on your local network, use tplink-lightbulb. This library is for situations where you want to use a username/password (from tplink cloud.) It will allow you to acces them remotely.
installation
npm i kasa_control
example usage
const KasaControl = require('kasa_control')
const kasa = new KasaControl()
const main = async () => {
await kasa.login('email', 'password')
const devices = await kasa.getDevices()
// turn off first device
await kasa.power(devices[0].deviceId, false)
}
main()
api
send ⇒ Promise
Send a message to a lightbulb (for RAW JS message objects)
Returns: Promise - Resolves with answer
| Param | Type | Description | | --- | --- | --- | | deviceId | string | The deviceId of the device in your kasa app | | msg | Object | Message to send to bulb |
Example
kasa.send('80126E22B048C76F341BEED1A3EA8E77177F3484', {
'smartlife.iot.smartbulb.lightingservice': {
'transition_light_state': {
'on_off': 1,
'transition_period': 0
}
})
.then(response => {
console.log(response)
})
.catch(e => console.error(e))
getDevices ⇒ Promise
Get a list of devices for your Kasa account
Returns: Promise - Resolves to an array of device-objects Example
kasa.getDevices()
.then(devices => {
console.log(devices)
})
.catch(e => console.error(e))
info ⇒ Promise
Get info about a device
Returns: Promise - Resolves to an info-pbject about your device example
kasa.info('80126E22B048C76F341BEED1A3EA8E77177F3484')
.then(info => {
console.log(info)
})
.catch(e => console.error(e))
| Param | Type | Description | | --- | --- | --- | | deviceId | string | The deviceId of the device in your kasa app |
power ⇒ Promise
Set power-state of lightbulb
Returns: Promise - Resolves to output of command
| Param | Type | Description |
| --- | --- | --- |
| deviceId | string | The deviceId of the device in your kasa app |
| powerState | Boolean | On or off |
| transition | Number | Transition to new state in this time |
| options | Object | Object containing mode
, hue
, saturation
, color_temp
, brightness
|
Example
// turn a light on
kasa.power('80126E22B048C76F341BEED1A3EA8E77177F3484', true)
.then(status => {
console.log(status)
})
.catch(err => console.error(err))
thanks
Thanks to itnerd for these 3 articles: