Kodi ssh python скрипт * без файла или каталога * - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь запустить скрипт python через kodi, который открывает SSH-соединение с моим удаленным Raspberry Pi и запускает скрипт .sh.Однако он выглядит так, как будто Kodi не может разрешить пути очень хорошо.

Я запустил этот же скрипт на python из termux, и он работает нормально.Не уверен, что мне нужно использовать xbmc.translatepath.Любые легенды о коди знают, что я делаю неправильно?

#!/usr/bin/python2
import subprocess

subprocess.call('ssh pi@192.168.1.14 -p 22 -i /storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.hyperion/.ssh/id_rsa bash "/home/pi/hyperion_on.sh"', shell=True)

См. Ошибку ниже.

ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script 
returned the following error<--- NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
Error Type: <type 'exceptions.OSError'>
Error Contents: [Errno 2] No such file or directory
Traceback (most recent call last):
File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.hyperion/hyperion_on.py", line 17, in <module>
subprocess.call('ssh pi@192.168.1.14 -p 22 -i /storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.hyperion/.ssh/id_rsa bash "/home/pi/hyperion_on.sh"', shell=True)
File "/home/jenkins/workspace/Android-ARM/tools/depends/xbmc-depends/arm-linux-    androideabi-android-21/lib/python2.7/subprocess.py", line 523, in call
File "/home/jenkins/workspace/Android-ARM/tools/depends/xbmc-depends/arm-linux-    androideabi-android-21/lib/python2.7/subprocess.py", line 711, in __init__
File "/home/jenkins/workspace/Android-ARM/tools/depends/xbmc-depends/arm-linux-    androideabi-android-21/lib/python2.7/subprocess.py", line 1343, in _execute_child
OSError: [Errno 2] No such file or directory
-->End of Python script error report<--

1 Ответ

0 голосов
/ 25 января 2019

Termux на Android - это отдельная автономная среда.Команды внутри него не являются частью базовой системы Android и не являются путями, которые Kodi будет знать по умолчанию.Если вы запустите which ssh, вы увидите, что это где-то вроде /data/data/com.termux/files/usr/bin/ssh.Я не уверен, что Коди сможет использовать это, хотя.Проверьте следующее, это может помочь:

https://github.com/termux/termux-app/issues/77

...