помогите разобратся с скриптом

Если вы только начинаете осваивать систему MajorDoMo и чего-то не знаете или не можете понять, то задавайте свои вопросы в этой ветке.

Модератор: immortal

Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: помогите разобратся с скриптом

Сообщение Chainik » Чт апр 04, 2019 9:10 pm

lihodeev писал(а):
Чт апр 04, 2019 9:06 pm
...
21:04 Алиса: securityMode=1
21:04 Алиса: pirPRH=1
21:04 Алиса: бла бла бла
Ну все правильно. Действия, указанные между фигурными скобками, выполняются только если оба свойства одновременно = "1".
Разве что-то не так?
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: помогите разобратся с скриптом

Сообщение lihodeev » Чт апр 04, 2019 9:16 pm

21:15 Алиса: securityMode=0
21:15 Алиса: pirPRH=1
21:15 Алиса: бла бла бла
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: помогите разобратся с скриптом

Сообщение Chainik » Чт апр 04, 2019 9:21 pm

Мда... Как говорили в известном мультике: "Ничего не понимаю".
Аватара пользователя
xor
Сообщения: 2039
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 286 раз
Поблагодарили: 629 раз

Re: помогите разобратся с скриптом

Сообщение xor » Чт апр 04, 2019 9:24 pm

Эти знаки препинания уберите

if ((gg('pirPRH.status')=="1") && (gg('ThisComputer.securityMode')=="1"));{
За это сообщение автора xor поблагодарил:
lihodeev (Чт апр 04, 2019 9:32 pm)
Рейтинг: 1.16%
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: помогите разобратся с скриптом

Сообщение Chainik » Чт апр 04, 2019 9:29 pm

xor писал(а):
Чт апр 04, 2019 9:24 pm
Эти знаки препинания уберите

if ((gg('pirPRH.status')=="1") && (gg('ThisComputer.securityMode')=="1"));{
Точно! Глаз "замылился".
За это сообщение автора Chainik поблагодарил:
lihodeev (Чт апр 04, 2019 9:32 pm)
Рейтинг: 1.16%
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: помогите разобратся с скриптом

Сообщение lihodeev » Чт апр 04, 2019 9:34 pm

Мда... Как говорили в известном мультике: "ЗАРАБОТАЛО!!". :lol: спасибо!!!
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: помогите разобратся с скриптом

Сообщение lihodeev » Вт дек 24, 2019 8:05 pm

В активах - малинка с установленным мажором , апельсинка с установленным терминалом. Хотелка - скриптом или иным способом с малинки запустить или остановить службу motion на апельсине . Возможно ли? Если возможно, то как? Да, забыл - все под линухом
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
Yashalta
Сообщения: 315
Зарегистрирован: Вс май 20, 2018 9:27 am
Благодарил (а): 160 раз
Поблагодарили: 29 раз

Re: помогите разобратся с скриптом

Сообщение Yashalta » Вт дек 31, 2019 9:22 pm

lihodeev писал(а):
Вт дек 24, 2019 8:05 pm
В активах - малинка с установленным мажором , апельсинка с установленным терминалом. Хотелка - скриптом или иным способом с малинки запустить или остановить службу motion на апельсине . Возможно ли? Если возможно, то как? Да, забыл - все под линухом
Думаю нужно использовать команду exec() - эта команда запустит скрипт на вашей апельсинке с "MD" и вернет ответ в "MD" если скрип на апельсинке, что либо возвращает!
exec('wget http://<url to the script>)

exec() - Execute an external program
system() - Execute an external program and display the output
passthru() - Execute an external program and display raw output

Пример 1:
На апельсинке создайте файл /var/www/htm/test.php (Должен стоять web сервер)
с таким содержанием

Код: Выделить всё

<?php
system('python /var/www/html/hello.py'); // Для примера создайте питоновский скрипт на апельсинке который выводит "Hello world!".
//echo 'hello world';
?>
На "MD" в скриптах создайте скрипт к примеру test_web c таким кодом

Код: Выделить всё

// создание нового ресурса cURL
$ch = curl_init();
// установка URL и других необходимых параметров
curl_setopt($ch, CURLOPT_URL, "http://192.168.0.15/test.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
// загрузка страницы и выдача её браузеру
curl_exec($ch);
// завершение сеанса и освобождение ресурсов
curl_close($ch);
где 192.168.0.15 - ip "MD"
Запускаете скрипт test_web c MD и получаете вывод Hellow world! с апельсинки.

Пример 2:
Создаете скрипт test_web на MD (Должен стоять web сервер на апельсинке)

Код: Выделить всё

exec("wget --http-user=root --http-password=ПАРОЛЬ 192.168.0.15 python /var/www/html/hello.py");
где
root - имя пользователя на апельсинке
ПАРОЛЬ - это пароль
192.168.0.15 - IP апельсинки
hello.py - ваш скрипт для примера создайте питоновский скрипт на апельсинке который выводит "Hello world!".
Запускаете скрипт test_web c MD и получаете вывод Hellow world! с апельсинки.
За это сообщение автора Yashalta поблагодарили (всего 2):
lihodeev (Чт янв 02, 2020 10:04 pm) • Icik34 (Пн апр 06, 2020 8:39 pm)
Рейтинг: 2.33%
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: помогите разобратся с скриптом

Сообщение lihodeev » Чт янв 02, 2020 10:08 pm

Вы хотите сказать что таким макаром можно обойтись без SSH ключей?
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: помогите разобратся с скриптом

Сообщение lihodeev » Вт янв 07, 2020 10:44 pm

уффф.. конструкция shell_exec('ssh root@192.168.1.3 motion -n'); запускает процесс, но счастье не очень долгое , потому как конструкция shell_exec('ssh root@192.168.1.3 sudo -i killall motion'); дает результат на ~ 25 раз, а из терминала по ssh дает 100% результат. Что не так? да,работает по мотивам - https://coretek.ru/faq/rukovodstva-admi ... arolja/34/
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
Ответить