[Приложение] мой MjDM (Android)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Аватара пользователя
SmoKE_xDDD
Сообщения: 816
Зарегистрирован: Ср апр 17, 2019 5:00 pm
Откуда: Нижний Новгород

Re: [Приложение] мой MjDM (Android)

Сообщение SmoKE_xDDD »

Есть еще предложение, а можем реализовать следующее:
В настройках указываем адрес страницы, приложение парсит например JSON и создает уведомление в строке состояния и далее проводит опрос, например каждые 5 минут.
Объясню зачем:
Я отдаю в JSON данные например "Никого нет дома, температура +26" и вижу это в строке состояния. Виджет виджетом, но имхо это компактнее и удобнее...
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: [Приложение] мой MjDM (Android)

Сообщение fandaymon »

hc2hunter писал(а): Чт фев 06, 2020 9:26 pm
fandaymon писал(а): Чт фев 06, 2020 8:50 pm Как это нет? На терминале открывается сокет на порту 7999 и слушаются сообщения, которые туда приходят. Если, например, приходит сообщение tts:Текст, то этот текст надо произнести. Всё, после этого терминал добавляется в систему как поддерживающий droidAPI и на него будут приходить сообщения
чтобы они туда приходили, кто-то их должен полылать.
а для этого сначала в системе нужно завести терминал.

но в целом да, все верно. попробуем поработать в этом направлении...
Ну для того чтобы на мажордроид сообщения приходили, его тоже нужно завести как терминал. Просто всё остальное делает сама система, т.е. если у неё есть сообщение и есть терминал с галочкой Может принимать сообщения и типом majordroid, то дальше система сама пришлет в порт 7999 сообщение tts:сообщение
Аватара пользователя
hc2hunter
Сообщения: 511
Зарегистрирован: Сб дек 02, 2017 10:45 am
Откуда: RUS

Re: [Приложение] мой MjDM (Android)

Сообщение hc2hunter »

С сокетом 7999 вроде разобрался... Организовал прием, попробовал.
Да, если устройство завести как терминал, и в системе указать ему "MajorDroid API" и IP-адрес , то по команде sayTo("text",2,"ДЕВАЙС") на него приходит сообщение tts:text

Однако, само API я не нашел нигде... и наверное оно не афишируется? Поэтому сама система думает, что терминал всегда Offline...
Для полноценного обмена, видимо, нужная обратная связь к серверу MDM, чтобы терминал отчитывался о своем состоянии?
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: [Приложение] мой MjDM (Android)

Сообщение fandaymon »

hc2hunter писал(а): Пт фев 07, 2020 11:29 am С сокетом 7999 вроде разобрался... Организовал прием, попробовал.
Да, если устройство завести как терминал, и в системе указать ему "MajorDroid API" и IP-адрес , то по команде sayTo("text",2,"ДЕВАЙС") на него приходит сообщение tts:text

Однако, само API я не нашел нигде... и наверное оно не афишируется? Поэтому сама система думает, что терминал всегда Offline...
Для полноценного обмена, видимо, нужная обратная связь к серверу MDM, чтобы терминал отчитывался о своем состоянии?
Это API и есть 8-) Описание возможных команд и что они должны делать
Терминал офлайн если с ним некоторое время не было общения. Т.е. с него или на него не ходили сообщения. Вернее так раньше было - сейчас вроде дополнительно раз в час пингует ip адрес
Аватара пользователя
hc2hunter
Сообщения: 511
Зарегистрирован: Сб дек 02, 2017 10:45 am
Откуда: RUS

Re: [Приложение] мой MjDM (Android)

Сообщение hc2hunter »

Если это API, то какое-то оно "небогатое"... :)
Ну да ладно... я тоже предположил, что вполне вероятно сервер сам пытается по ICMP периодически проверять терминал на живость. С другой стороны откуда ему знать, что терминал с MajorDroidAPI не заменили на любой другой девайс, просто откликающийся на пинг? Поэтому и предположил, что вполне вероятно существует и обратный отклик, который нигде не документирован.
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: [Приложение] мой MjDM (Android)

Сообщение fandaymon »

hc2hunter писал(а): Пт фев 07, 2020 12:38 pm Если это API, то какое-то оно "небогатое"... :)
Ну да ладно... я тоже предположил, что вполне вероятно сервер сам пытается по ICMP периодически проверять терминал на живость. С другой стороны откуда ему знать, что терминал с MajorDroidAPI не заменили на любой другой девайс, просто откликающийся на пинг? Поэтому и предположил, что вполне вероятно существует и обратный отклик, который нигде не документирован.
Всё что надо там есть - чего же не богатое-то?
Так код открыт же - всегда можно посмотреть откуда у флага online ноги растут. Собственно вот код, отвечающий за onine

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

       } elseif ($event == 'HOURLY') {
            // check terminals
            $terminals = SQLSelect("SELECT * FROM terminals WHERE IS_ONLINE=0 AND HOST!=''");
            foreach ($terminals as $terminal) {
                if (ping($terminal['HOST'])) {
                    $terminal['LATEST_ACTIVITY'] = date('Y-m-d H:i:s');
                    $terminal['IS_ONLINE'] = 1;
                    SQLUpdate('terminals', $terminal);
                }
            }
            SQLExec('UPDATE terminals SET IS_ONLINE=0 WHERE LATEST_ACTIVITY < (NOW() - INTERVAL 90 MINUTE)'); //
Аватара пользователя
hc2hunter
Сообщения: 511
Зарегистрирован: Сб дек 02, 2017 10:45 am
Откуда: RUS

Re: [Приложение] мой MjDM (Android)

Сообщение hc2hunter »

Понаблюдал - да, действительно, сервер определяет "живость" терминала исключительно пингуя его раз в час...
Что, собственно, и видно из куска кода выше.
Аватара пользователя
tarasfrompir
Сообщения: 3217
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: [Приложение] мой MjDM (Android)

Сообщение tarasfrompir »

hc2hunter писал(а): Пт фев 07, 2020 3:36 pm Понаблюдал - да, действительно, сервер определяет "живость" терминала исключительно пингуя его раз в час...
Что, собственно, и видно из куска кода выше.
В некоторых вариациях терминалов - время пинга задается вручную. И проверка проводится - проверкой доступности сервиса
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
tarasfrompir
Сообщения: 3217
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: [Приложение] мой MjDM (Android)

Сообщение tarasfrompir »

hc2hunter писал(а): Пт фев 07, 2020 12:38 pm Если это API, то какое-то оно "небогатое"... :)
Ну да ладно... я тоже предположил, что вполне вероятно сервер сам пытается по ICMP периодически проверять терминал на живость. С другой стороны откуда ему знать, что терминал с MajorDroidAPI не заменили на любой другой девайс, просто откликающийся на пинг? Поэтому и предположил, что вполне вероятно существует и обратный отклик, который нигде не документирован.
Так реализуй апи с описанием - а мы его затянем в МДМ... Помогу если что
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
hc2hunter
Сообщения: 511
Зарегистрирован: Сб дек 02, 2017 10:45 am
Откуда: RUS

Re: [Приложение] мой MjDM (Android)

Сообщение hc2hunter »

tarasfrompir писал(а): Пт фев 07, 2020 5:13 pm Так реализуй апи с описанием - а мы его затянем в МДМ... Помогу если что
Не... спасибо, но пока воздержусь...
Мне бы с хотелками пользователей для начала разобраться, а потом уже мечтать о высоких материях :)

Сейчас, вот, сделал голосовое воспроизведение последней команды sayTo на терминал, и уже столкнулся с тем, что в зависимости от системной LOCALE придется писать нехилую обвязку. Так что, работы полно...
Ответить