Skip to content

Commit

Permalink
release v3.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
grzegorz914 committed Aug 23, 2024
1 parent 4056521 commit 99e1f7d
Show file tree
Hide file tree
Showing 8 changed files with 213 additions and 156 deletions.
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)

### After update to v3.0.0 RESTFull and MQTT config settings need to be updated

## [3.1.0] - (23.08.2024)

## Changes

- add control over RESTFul POST JSON Object
- bump dependencies
- cleanup

## [3.0.4] - (18.08.2024)

## Changes
Expand Down
69 changes: 43 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ Tested with OLED65G6V, 32LM6300PLA, 49SK8500, OLED65C7T, 55SK800PLB, OLED48CX.
| `sslWebSocket` | If enabled, SSL WebSocket will support TV with new firmware. |
| `serviceMenu` | If enabled, service menu will be available from the input list. |
| `ezAdjustMenu` | If enabled, ez adjust menu will be available from the input list. |
| `infoButtonCommand` | Here select the function of `I` button in RC app.
| `infoButtonCommand` | Here select the function of `I` button in RC app.
| `enableDebugMode` | If enabled, deep log will be present in homebridge console. |
| `disableLogInfo` | If enabled, disable log info, all values and state will not be displayed in Homebridge log console. |
| `disableLogDeviceInfo` | If enabled, add ability to disable log device info by every connections device to the network. |
Expand All @@ -137,35 +137,52 @@ Tested with OLED65G6V, 32LM6300PLA, 49SK8500, OLED65C7T, 55SK800PLB, OLED48CX.

### RESTFul Integration

* Request: `http//homebridge_ip_address:port/path`.
* Path: `systemnfo`, `softwareinfo`, `channels`, `apps`, `power`, `audio`, `currentapp`, `currentchannel`, `picturesettings`, `soundmode`, `soundoutput`, `externalinputlist`.
* Respone as JSON object.
* POST data as a JSON Object `{Power: true}`

### MQTT Integration

| Direction | Topic | Message | Payload Data |
| --- | --- | --- | --- |
| Publish | `System Info`, `Software Info`, `Channels`, `Apps`, `Power`, `Audio`, `Current App`, `Current Channel`, `Picture Settings`, `Sound Mode`, `Sound Output`, `External Input List` | `{"state": Active}` | JSON object. |
| Subscribe | `Set` | `{"Power": true}` | JSON object. |

| Subscribe | Key | Value | Type | Description |
| Method | URL | Path | Response | Type |
| --- | --- | --- | --- | --- |
| LG WebOS| | | | |
| | `Power` | `true`, `false` | boolean | Power state. |
| | `Input` | `input reference` | string | Set input. |
| | `Channel` | `channel reference` | string | Set channel. |
| | `Volume` | `100` | integer | Set volume. |
| | `Mute` | `true`, `false` | boolean | Set mute. |
| | `Brightness` | `100` | integer | Set brightness. |
| | `Backlight` | `100` | integer | Set backlight. |
| | `Contrast` | `100` | integer | Set contrast. |
| | `Color` | `100` | integer | Set color. |
| | `PictureMode` | `picture mode reference` | string | Set picture mode. |
| | `SoundMode` | `sound mode reference` | string | Set sound mode. |
| | `SoundOutput` | `sound output reference` | string | Set sound output. |
| | `RcControl` | `REWIND` | string | Send RC command. |
| GET | `http//ip:port` | `systemnfo`, `softwareinfo`, `channels`, `apps`, `power`, `audio`, `currentapp`, `currentchannel`, `picturesettings`, `soundmode`, `soundoutput`, `externalinputlist`. | `{"state": Active}` | JSON object. |

| Method | URL | Key | Value | Type | Description |
| --- | --- | --- | --- | --- | --- |
| POST | `http//ip:port` | `Power` | `true`, `false` | boolean | Power state. |
| | `http//ip:port` | `Input` | `input reference` | string | Set input. |
| | `http//ip:port` | `Channel` | `channel reference` | string | Set channel. |
| | `http//ip:port` | `Volume` | `100` | integer | Set volume. |
| | `http//ip:port` | `Mute` | `true`, `false` | boolean | Set mute. |
| | `http//ip:port` | `Brightness` | `100` | integer | Set brightness. |
| | `http//ip:port` | `Backlight` | `100` | integer | Set backlight. |
| | `http//ip:port` | `Contrast` | `100` | integer | Set contrast. |
| | `http//ip:port` | `Color` | `100` | integer | Set color. |
| | `http//ip:port` | `PictureMode` | `picture mode reference` | string | Set picture mode. |
| | `http//ip:port` | `SoundMode` | `sound mode reference` | string | Set sound mode. |
| | `http//ip:port` | `SoundOutput` | `sound output reference` | string | Set sound output. |
| | `http//ip:port` | `RcControl` | `REWIND` | string | Send RC command. |

### MQTT Integration

* Subscribe data as a JSON Object `{Power: true}`
* References:
* Picture Mode - `cinema`, `eco`, `expert1`, `expert2`, `game`, `normal`, `photo`, `sports`, `technicolor`, `vivid`, `hdrEffect`, `hdrCinema`, `hdrCinemaBright`, `hdrExternal`, `hdrGame`, `hdrStandard`, `hdrTechnicolor`, `hdrVivid`, `dolbyHdrCinema`, `dolbyHdrCinemaBright`, `dolbyHdrDarkAmazon`, `dolbyHdrGame`, `dolbyHdrStandard`, `dolbyHdrVivid`, `dolbyStandard`.
* Sound Mode - `aiSoundPlus`, `standard`, `movie`, `clearVoice`, `news`, `sport`, `music`, `game`.
* Sound Output - `tv_speaker`, `external_speaker`, `external_optical`, `external_arc`, `lineout`, `headphone`, `tv_external_speaker`, `tv_external_headphone`, `bt_soundbar`, `soundbar`.

| Method | Topic | Message | Type |
| --- | --- | --- | --- |
| Publish | `System Info`, `Software Info`, `Channels`, `Apps`, `Power`, `Audio`, `Current App`, `Current Channel`, `Picture Settings`, `Sound Mode`, `Sound Output`, `External Input List` | `{"state": Active}` | JSON object. |

| Method | Topic | Key | Value | Type | Description |
| --- | --- | --- | --- | --- | --- |
| Subscribe | `Set` | `Power` | `true`, `false` | boolean | Power state. |
| | `Set` | `Input` | `input reference` | string | Set input. |
| | `Set` | `Channel` | `channel reference` | string | Set channel. |
| | `Set` | `Volume` | `100` | integer | Set volume. |
| | `Set` | `Mute` | `true`, `false` | boolean | Set mute. |
| | `Set` | `Brightness` | `100` | integer | Set brightness. |
| | `Set` | `Backlight` | `100` | integer | Set backlight. |
| | `Set` | `Contrast` | `100` | integer | Set contrast. |
| | `Set` | `Color` | `100` | integer | Set color. |
| | `Set` | `PictureMode` | `picture mode reference` | string | Set picture mode. |
| | `Set` | `SoundMode` | `sound mode reference` | string | Set sound mode. |
| | `Set` | `SoundOutput` | `sound output reference` | string | Set sound output. |
| | `Set` | `RcControl` | `REWIND` | string | Send RC command. |
3 changes: 3 additions & 0 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,9 @@ class LgWebOsPlatform {
.on('devInfo', (devInfo) => {
log.info(devInfo);
})
.on('success', (message) => {
log.success(`Device: ${host} ${deviceName}, ${message}`);
})
.on('message', (message) => {
log.info(`Device: ${host} ${deviceName}, ${message}`);
})
Expand Down
6 changes: 3 additions & 3 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"displayName": "LG webOS TV",
"name": "homebridge-lgwebos-tv",
"version": "3.0.7",
"version": "3.1.0",
"description": "Homebridge plugin to control LG webOS TV.",
"license": "MIT",
"author": "grzegorz914",
Expand All @@ -28,7 +28,7 @@
],
"engines": {
"node": ">=18.0.0",
"homebridge": ">=1.6.0"
"homebridge": ">=1.8.0"
},
"dependencies": {
"async-mqtt": "^2.6.3",
Expand Down
Loading

0 comments on commit 99e1f7d

Please sign in to comment.