Приветствую Вас, Гость!
[ Обновленные темы · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: Zeltorix  
Как это сделать
vadyur | 12.06.2024, 18:56 | # 16
Репутация: 0
Цитата Zeltorix ()
Но есть ли встроенная возможность получить значение?В принципе нашёл способ через JSON-RPC.

JSON-RPC - каноничный способ взаимодействия с Коди в дополнениях.
 
Zeltorix | 12.06.2024, 22:03 | # 17
Репутация: 22
qazerrvadyur,  JSON-RPC способ уже я упоминал.
qazerr, на счёт второго, в новых настройках есть пункт <section id="Addon_id">
Вот и вопросик, есть ли у настроек свой ID, чтобы к нему обратится. Так бы было намного меньше кода писать, чем через JSON-RPC.
xbmcaddon.Addon("Addon_id").getSettingBool("api_key")
Сижу и перебираю методом тыка)


Скрывайте ссылки и способы обхода от роскомтян)
 
Zeltorix | 30.06.2024, 08:06 | # 18
Репутация: 22
Возвращаемся к теме с настройками.
Через настройки аддонов можно запустить настройки других аддонов https://kodi.wiki/view/Add-on_settings_conversion#type="action"
Используя https://xbmc.github.io/docs.ko....ns.html
Но вот возник вопрос, возможно ли обратится к категории или группе настроек?
Таким что выше способ написал возможно просто открыть настройки на первой категории, а вот как открыть на конкретной категории или группе не понятно.


Скрывайте ссылки и способы обхода от роскомтян)
 
NIV | 25.11.2024, 21:43 | # 19
Репутация: 7
Доброго дня всем...

Понадобилось добавить в контекстное меню кнопку для открытия страницы с информацией (кнопка i на клавиатуре - на контенте содержащим информацию) для тех, кто использует пульт.
Пульты обычно не содержат нужную кнопку , а нужная информация иногда скрывается именно в том окне - жанры, год, статусы... 

метод через executeJSONRPC известен,но почему-то иногда работает, иногда нет... 

Код
xbmc.executeJSONRPC('{"jsonrpc":"2.0","method":"Input.Info","params":[]}')

--
есть ли другие способы реализовать вызов данного окна?
 
virserg | 12.12.2024, 12:49 | # 20
Репутация: 2
xbmc.executebuildin("Action(Info)") это самое простое.
 
santax | 10.02.2025, 22:51 | # 21
Репутация: 6
Всем привет!

Пишу плагин. Хочу отобразить страницу с изображениями. Страница есть (фанарт отображается), но вот просмотр не происходит, картинка открывается через VideoPlayer, который в конце говорит, что не находит видеотеги. У кого-нибудь есть пример с работающим вариантом?

Вот мой код. С закомментированным тоже не работает. poster удалял, не помогло.. Нагуглить решение пока не смог. 

Спасибо!
Код
def show_images(items):
    xbmcplugin.setPluginCategory(HANDLE, 'Images')
    xbmcplugin.setContent(HANDLE, 'images')
    for item_id,item in enumerate(items,1):
        list_item = xbmcgui.ListItem(f"{item_id}")
        #list_item.setContentLookup(False)
        if item['fullImage']:
            full_image = item['fullImage']['originalUrl']
        else:
            full_image = None
        list_item.setArt({'fanart': full_image, 'poster': full_image, 'thumb': full_image};)
        #list_item.setInfo(type='image', infoLabels={'Title': f"{item_id}"};)
        xbmcplugin.addDirectoryItem(HANDLE, url=full_image, listitem=list_item, isFolder=False)
    xbmcplugin.endOfDirectory(HANDLE)

Логи во вложении.
Прикрепления: kodi_logs.txt (2.8 Kb)


Сообщение отредактировал santax - Понедельник, 10.02.2025, 22:51
 
DayAnger | 11.02.2025, 11:06 | # 22
Репутация: 1
Подскажите каким образом из плагина можно пучить информацию что проигрываемое видео было остановлено на такой-то временной отметке и продолжительность самого видео?
 
vadyur | 12.02.2025, 13:45 | # 23
Репутация: 0
Цитата DayAnger ()
Подскажите каким образом из плагина можно пучить информацию что проигрываемое видео было остановлено на такой-то временной отметке и продолжительность самого видео?

Через JSONRPC. Я использую свою обёртку для работы с этим (можно позаимствовать у меня). Вот код который возвращает нужные данные:
           
Код
from vdlib.kodi.jsonrpc_requests import Files
result = Files.GetFileDetails(file=strm_path, media='video', properties=['playcount', 'resume'])

Или речь идёт о текущем воспроизводимом видео?


Сообщение отредактировал vadyur - Среда, 12.02.2025, 13:52
 
DayAnger | 13.02.2025, 08:44 | # 24
Репутация: 1
Цитата vadyur ()
Или речь идёт о текущем воспроизводимом видео?
Да именно о текущем.
Задумка вот в чем: в плагине запускается видео поток, а при завершении либо остановке просмотра получать (отправлять на сайт) информацию о просмотренном/недосмотренном видео
 
qazerr | 13.02.2025, 13:42 | # 25
Репутация: 9
Цитата DayAnger ()
Задумка вот в чем: в плагине запускается видео поток, а при завершении либо остановке просмотра получать (отправлять на сайт) информацию о просмотренном/недосмотренном видео
Я делал похожее через xbmc.Monitor и его метод onNotification(), фильтруя нужные уведомления, типа Player.OnStop.
https://xbmc.github.io/docs.ko....efbd7e9
https://kodi.wiki/view/JSON-RPC_API/v13#Player.OnStop
Примеры кода:
https://forum.kodi.tv/showthread.php?tid=213688
https://forum.kodi.tv/showthread.php?tid=378821
https://github.com/Simounet/script.flox/blob/main/default.py
Тут собственно даже есть пример самого scrobbling - "отправлять на сайт информацию о просмотренном/недосмотренном видео".
А уже данные о видео через xbmc.Player getPlayingItem() получать, если Коди 20+, иначе через JSON-RPC (см. в конце).
https://xbmc.github.io/docs.ko....6f4611b

Но сейчас поискал, если только события "проигрывания" интересуют, то оказывается ещё можно и через сам xbmc.Player, у него есть готовые методы, типа onPlayBackStopped(), но там вроде всё равно нужен и монитор, просто чуть более явным становится код:
https://xbmc.github.io/docs.ko....801ceb7
https://forum.kodi.tv/showthread.php?tid=378821&pid=3209832#pid3209832
https://github.com/pilluli....ault.py
https://github.com/jbinkley60/MezzmoKodiPlugin/blob/master/service.py

Можно ещё код других scrobblers посмотреть, таких как Simkl или Trakt и прочих.
https://github.com/SIMKL/script.simkl
https://github.com/trakt/script.trakt
Там события через xbmc.Monitor onNotification, но инфа о видео не через новый xbmc.Player getPlayingItem(), а через JSON-RPC Player.GetActivePlayers и Player.GetItem, так как дополнения были давно написаны, ну и для обратной совместимости с старыми Kodi может быть.


Сообщение отредактировал qazerr - Четверг, 13.02.2025, 13:48
 
vadyur | 14.02.2025, 14:30 | # 26
Репутация: 0
Цитата DayAnger ()
Да именно о текущем.Задумка вот в чем: в плагине запускается видео поток, а при завершении либо остановке просмотра получать (отправлять на сайт) информацию о просмотренном/недосмотренном видео
qazerr, много дал полезной информации, если есть проблемы, могу с готовым кодом подсобить
 
DayAnger | 14.02.2025, 15:54 | # 27
Репутация: 1
vadyur и qazerr, спасибо большое за помощь! Хочу попробовать разобраться сам. Если не выйдет буду просить о помощи smile
 
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск: