konsumer / tplink-lightbulb

Control TP-Link smart lightbulbs from nodejs
MIT License
190 stars 32 forks source link

details #32

Closed konsumer closed 5 years ago

konsumer commented 5 years ago

details call stopped working, which is a bummer because that is how you get important info like colors and stuff.

I need to do some wiresharking to figure out how to get details.

If anyone else can capture dumps, that would be immensely helpful. I basically need detail calls, which probably happens when you first open app on phone, or maybe when you try to see the color/temperature.

Interested @DaveGut or @danodemano ?

DaveGut commented 5 years ago

David, I tested using SmartThings just now and captured data. I then captured the raw data from my node.js server (on my PC). Below is the command/response for a refresh of the LB130. Wireshark to follow in next message.

deviceCommand sending to IP: 192.168.0.102 Command: {"system":{"get_sysinfo":{}}}

{"system":{"get_sysinfo":{"sw_ver":"1.8.6 Build 180809 Rel.091659","hw_ver":"1.0","model":"LB130(US)","description":"Smart Wi-Fi LED Bulb with Color Changing","alias":"Den Center","mic_type":"IOT.SMARTBULB","dev_state":"normal","mic_mac":"50C7BF24E4E4","deviceId":"80121F9D20E920A034D78C8AC2C99C8E180288A7","oemId":"05BF7B3BE1675C5A6867B7A7E4C9F6F7","hwId":"111E35908497A05512E259BB76801E10","is_factory":false,"disco_ver":"1.0","ctrl_protocols":{"name":"Linkie","version":"1.0"},"light_state":{"on_off":1,"mode":"normal","hue":0,"saturation":0,"color_temp":7000,"brightness":100},"is_dimmable":1,"is_color":1,"is_variable_color_temp":1,"preferred_state":[{"index":0,"hue":0,"saturation":0,"color_temp":2700,"brightness":50},{"index":1,"hue":0,"saturation":75,"color_temp":0,"brightness":100},{"index":2,"hue":120,"saturation":75,"color_temp":0,"brightness":100},{"index":3,"hue":240,"saturation":75,"color_temp":0,"brightness":100}],"rssi":-37,"active_mode":"none","heapsize":291352,"err_code":0}}}

Dave

DaveGut commented 5 years ago

David, looked at wireshark. Below is file. Filter: tcp.port ==9999 && ip.host==192.168.0.102 tplink.pcapng.gz dave

konsumer commented 5 years ago

You rock @DaveGut !

konsumer commented 5 years ago

{ system: { get_sysinfo: {} } } is the request for info method, but it looks like they just add more fields for things like color, etc, now, which is nice, we can just drop that from the lib/cli and it should be ok.

Thanks you so much! Going to close this issue.