You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

193 lines
12 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

![Logo](admin/kodi.png)
[![NPM version](https://img.shields.io/npm/v/yunkong2.kodi.svg)](https://www.npmjs.com/package/yunkong2.kodi)
[![Downloads](https://img.shields.io/npm/dm/yunkong2.kodi.svg)](https://www.npmjs.com/package/yunkong2.kodi)
[![Tests](http://img.shields.io/travis/instalator/yunkong2.kodi/master.svg)](https://travis-ci.org/instalator/yunkong2.kodi)
[![NPM](https://nodei.co/npm/yunkong2.kodi.png?downloads=true)](https://nodei.co/npm/yunkong2.kodi/)
# Kodi's JSON-RPC API for yunkong2
You can find kodi's official documentation of the JSON-RCP API [here](http://kodi.wiki/view/JSON-RPC_API) and the full list of available commands (for protocol version 6) [here](http://kodi.wiki/view/JSON-RPC_API/v6).
***Note: This adapter requires Node 0.12+ (so 0.10 not supported)***
## Конфигурация KODI
Remote control enable.
![Remote control enable.] (admin/remote.jpg)
JSON-RPC API использует **по умолчанию порт 9090**, для того чтобы его изменить необходимо внести изменения в файл [advancedsettings.xml](http://kodi.wiki/view/AdvancedSettings.xml)
_Note: The advancedsettings.xml file does not exist by default. You have to create it first!_
```xml
<jsonrpc>
<compactoutput>true</compactoutput>
<tcpport>9999</tcpport>
</jsonrpc>
```
![http enable.](admin/web.jpg)
## Конфигурация драйвера
В найстройках драйвера указывается IP адрес KODI и порт для JSON-RPC API (по умолчанию 9090).
## Using
### ShowNotif:
Один важный момент, если используется заголовок сообщения, то он должен всегда находится перед самим текстом сообщения (Внимание;Протечка воды), расположение остальных параметров не критично.
**Image:**
Уровень сообщения
* 'info' - 0 (default),
* 'warning' - 1,
* 'error' - 2.
**displaytime:**
Время отображения сообщения в милисекундах, минимум 1500 макс 30000 мс.
**Пример:**
* 1;Внимание;Протечка воды;15000
* Внимание;Протечка воды;2;10000
* Внимание;Протечка воды
* Протечка воды
Так же сообщения можно отправлять из драйвера javascript:
```js
sendTo("kodi.0", {
message: 'Возможно протечка воды ', //Текст сообщения
title: 'ВНИМАНИЕ!!!', //Заголовок сообщения
image: 'https://raw.githubusercontent.com/instalator/yunkong2.kodi/master/admin/kodi.png', //Ссылка на иконку
delay: 7000 //Время отображения сообщения милисекундах (минимум 1500 макс 30000 мс)
});
```
### SwitchPVR:
Переключение PVR IPTV каналов по названию канала в плейлисте.
**Пример:**
ТВ канал - Discovery Science найдет как по полному наименованию так и по discover,
### Youtube:
Для открытия видео с сайта youtube достаточно записать код видео в данный статус. Начиная с версии 0.1.5 и выше можно вставлять прямую ссылку на видео, а также код или полную ссылку на плейлист.
Например: Для открытия этого [видео](https://www.youtube.com/watch?v=Bvmxr24D4TA), необходимо установить в статус - Bvmxr24D4TA
### Open:
Сюда записывается ссылка на медиконтент в сети интернет либо путь до локального медиа файла.
После записи значения начнется воспроизведение на проигрователе KODI.
### Position:
Текущая позиция в плейлисте, так же в этот статус можно записать необходимую позицую и KODI тут же перейдет к воспроизведению этой позиции.
### Seek:
Текущее значение позиции воспроизведения в процентах от 0 до 100.
### Repeat:
Повтор воспроизведения, принимает следующие значения:
* off - повтор воспроизведения отключен
* on - повтор воспроизведения текущего трека
* all - повтор всего плейлиста
### Shuffle:
Перемешивание списка треков в плейлисте для случайного воспроизведения.
Принимает значения true и false
### Play:
Старт воспроизведения (true, false)
### Speed:
Скорость воспроизведения. Фиксированные значения -32, -16, -8, -4, -2, -1, 0, 1, 2, 4, 8, 16, 32, а также increment и decrement
### Directory:
Сюда записывается путь до папки или диска, в ответ в этот статус записывается список каталогов указанной папки или диска.
### ActivateWindow:
Активизирует в проигрывателе окно. Поддерживает следующий список:
```
"home", "programs", "pictures", "filemanager", "files", "settings", "music", "video", "videos", "tv", "pvr", "pvrguideinfo", "pvrrecordinginfo", "pvrtimersetting", "pvrgroupmanager", "pvrchannelmanager", "pvrchannelmanager", "pvrguidesearch", "pvrchannelscan", "pvrupdateprogress", "pvrosdchannels", "pvrosdguide", "pvrosddirector", "pvrosdcutter", "pvrosdteletext", "systeminfo", "testpattern", "screencalibration", "guicalibration", "picturessettings", "programssettings", "weathersettings", "musicsettings", "systemsettings", "videossettings", "networksettings", "servicesettings", "appearancesettings", "pvrsettings", "tvsettings", "scripts", "videofiles", "videolibrary", "videoplaylist", "loginscreen", "profiles", "skinsettings", "addonbrowser", "yesnodialog", "progressdialog", "virtualkeyboard", "volumebar", "submenu", "favourites", "contextmenu", "infodialog", "numericinput", "gamepadinput", "shutdownmenu", "mutebug", "playercontrols", "seekbar", "musicosd", "addonsettings", "visualisationsettings", "visualisationpresetlist", "osdvideosettings", "osdaudiosettings", "videobookmarks", "filebrowser", "networksetup", "mediasource", "profilesettings", "locksettings", "contentsettings", "songinformation", "smartplaylisteditor", "smartplaylistrule", "busydialog", "pictureinfo", "accesspoints", "fullscreeninfo", "karaokeselector", "karaokelargeselector", "sliderdialog", "addoninformation", "musicplaylist", "musicfiles", "musiclibrary", "musicplaylisteditor", "teletext", "selectdialog", "musicinformation", "okdialog", "movieinformation", "textviewer", "fullscreenvideo", "fullscreenlivetv", "visualisation", "slideshow", "filestackingdialog", "karaoke", "weather", "screensaver", "videoosd", "videomenu", "videotimeseek", "musicoverlay", "videooverlay", "startwindow", "startup", "peripherals", "peripheralsettings", "extendedprogressdialog", "mediafilter".
```
### ExecuteAction:
Можно выполнить одно из следующих действий:
```
"left", "right", "up", "down", "pageup", "pagedown", "select", "highlight", "parentdir", "parentfolder", "back", "previousmenu", "info", "pause", "stop", "skipnext", "skipprevious", "fullscreen", "aspectratio", "stepforward", "stepback", "bigstepforward", "bigstepback", "osd", "showsubtitles", "nextsubtitle", "codecinfo", "nextpicture", "previouspicture", "zoomout", "zoomin", "playlist", "queue", "zoomnormal", "zoomlevel1", "zoomlevel2", "zoomlevel3", "zoomlevel4", "zoomlevel5", "zoomlevel6", "zoomlevel7", "zoomlevel8", "zoomlevel9", "nextcalibration", "resetcalibration", "analogmove", "rotate", "rotateccw", "close", "subtitledelayminus", "subtitledelay", "subtitledelayplus", "audiodelayminus", "audiodelay", "audiodelayplus", "subtitleshiftup", "subtitleshiftdown", "subtitlealign", "audionextlanguage", "verticalshiftup", "verticalshiftdown", "nextresolution", "audiotoggledigital", "number0", "number1", "number2", "number3", "number4", "number5", "number6", "number7", "number8", "number9", "osdleft", "osdright", "osdup", "osddown", "osdselect", "osdvalueplus", "osdvalueminus", "smallstepback", "fastforward", "rewind", "play", "playpause", "delete", "copy", "move", "mplayerosd", "hidesubmenu", "screenshot", "rename", "togglewatched", "scanitem", "reloadkeymaps", "volumeup", "volumedown", "mute", "backspace", "scrollup", "scrolldown", "analogfastforward", "analogrewind", "moveitemup", "moveitemdown", "contextmenu", "shift", "symbols", "cursorleft", "cursorright", "showtime", "analogseekforward", "analogseekback", "showpreset", "presetlist", "nextpreset", "previouspreset", "lockpreset", "randompreset", "increasevisrating", "decreasevisrating", "showvideomenu", "enter", "increaserating", "decreaserating", "togglefullscreen", "nextscene", "previousscene", "nextletter", "prevletter", "jumpsms2", "jumpsms3", "jumpsms4", "jumpsms5", "jumpsms6", "jumpsms7", "jumpsms8", "jumpsms9", "filter", "filterclear", "filtersms2", "filtersms3", "filtersms4", "filtersms5", "filtersms6", "filtersms7", "filtersms8", "filtersms9", "firstpage", "lastpage", "guiprofile", "red", "green", "yellow", "blue", "increasepar", "decreasepar", "volampup", "volampdown", "channelup", "channeldown", "previouschannelgroup", "nextchannelgroup", "leftclick", "rightclick", "middleclick", "doubleclick", "wheelup", "wheeldown", "mousedrag", "mousemove", "noop".
```
### System:
- EjectOpticalDrive - Извлекает или закрывает дисковод оптических дисков (если имеется)
- Hibernate - включение спящего режима
- Reboot - перезагрузка системы
- Shutdown - выключает систему
- Suspend - приостанавливает Kodi
## Changelog
#### 1.0.0 (2017-11-13)
* (instalator) up to stable
#### 0.2.4 (2017-10-16)
* (instalator) fix error
#### 0.2.3 (2017-08-15)
* (instalator) fix error switchPVR
* (instalator) Added description "System" to readme
#### 0.2.2 (2017-08-14)
* (instalator) added object - System (EjectOpticalDrive, Hibernate, Reboot, Shutdown, Suspend)
* (instalator) fix playlist widget
#### 0.2.0 (2017-01-07)
* (instalator) added object - state
* (instalator) change repeat to bool
#### 0.1.9 (2017-01-05)
* (instalator) change for vis-players
#### 0.1.8 (2016-12-25)
* (instalator) change open youtube playlist
#### 0.1.6 (2016-12-23)
* (instalator) added Tests
* (instalator) added open youtube playlist and open youtube link
#### 0.1.4 (2016-07-05)
* (instalator) fix error for Open
* (instalator) fix method number
#### 0.1.3
* (bluefox) fix error milti instance
#### 0.1.2 (2016-07-05)
* (instalator) change pvr switch - add stop
* (instalator) change dependencies
* (instalator) fix change play/stop state
#### 0.1.1 (2016-05-30)
* (instalator) change admin setting
* (instalator) Fix error 'playerid' of undefined
#### 0.1.0 (2016-05-22)
* (instalator) beta
#### 0.0.6 (2016-05-08)
* (bluefox) fixed crash when the driver turned on the KODI
* (bluefox) make adapter disabled by default, because no IP set
* (instalator) Thumbnail widget
* (instalator) added GetDirectory, GetVideoLibrary
* (instalator) added Scan & Clean Library
#### 0.0.5 (2016-05-04)
* (instalator) change creating object
* (instalator) added info.connection state
#### 0.0.4 (2016-05-03)
* (instalator) fix error
* (instalator) added VIS widgets
#### 0.0.3 (2016-05-01)
* (instalator) fix error
* (instalator) added send message from JS
#### 0.0.2 (2016-04-24)
* (instalator) remote player
* (instalator) ShowNotification
* (instalator) info playing
* (instalator) GetPVRChannel
#### 0.0.1
* (instalator) initial (17.04.2016)