Segnetics

Вернуться   Segnetics > Форум Segnetics > Связь с внешним миром

Связь с внешним миром Modbus, RS232, RS485, Lon и другое.

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2022, 17:02   #121
Merke
Member
 
Регистрация: May 2022
Сообщения: 52
Благодарил(а): 5 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Arsie Посмотреть сообщение
Как я понимаю, это вам в техподдержку телеграма. Бот отправляет на сервер телеграма оповещение и уже сервер телеграма раскидывает его по пользователям.
При отключении контроллера от интернета рассылка прекращается до следующего подключения.
При нажатии кнопки "Очистить кэш" рассылка прекращается до следующего события.
Думаю, что рассылает контроллер.
Merke вне форума   Ответить с цитированием
Старый 18.12.2022, 17:06   #122
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 086
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Merke Посмотреть сообщение
Думаю, что рассылает контроллер.
Возможно нужно не удалять чат, а использовать штатную команду "удалить и отписаться"?


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 18.12.2022, 17:17   #123
Merke
Member
 
Регистрация: May 2022
Сообщения: 52
Благодарил(а): 5 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Arsie Посмотреть сообщение
Возможно нужно не удалять чат, а использовать штатную команду "удалить и отписаться"?
Можно поподробней про штатную команду. Я в телефоне вижу только "Удалить чат".
Я так понимаю, что мы контроллеру должны послать команду, чтобы количество зарегистрированных пользователей уменьшилось.
Merke вне форума   Ответить с цитированием
Старый 18.12.2022, 17:36   #124
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

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


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 18.12.2022, 19:07   #125
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

в принципе, тоже самое касается и странички с vnc


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 19.12.2022, 11:29   #126
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от LordN Посмотреть сообщение
было бы неплохо, чтобы страничка бота показывала - а загружена ли дебка этого бота и какой именно версии.
Это было бы и для меня удобно, может что-то придумаю в следующей версии.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 19.12.2022, 11:37   #127
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 086
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Merke Посмотреть сообщение
Можно поподробней про штатную команду. Я в телефоне вижу только "Удалить чат".
Я так понимаю, что мы контроллеру должны послать команду, чтобы количество зарегистрированных пользователей уменьшилось.
У меня в телефоне в приложении когда выходишь из чата с любым ботом предлагает "Остановить и выйти".


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 19.12.2022, 11:55   #128
Merke
Member
 
Регистрация: May 2022
Сообщения: 52
Благодарил(а): 5 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Пользователь который остановил бота или удалил чат вызывает исключение в
Код:
                    for($e = 0; $e < count($UserDB); $e++ ){

                        $telegramApi->sendMessage($UserDB[$e], $messagetext);
                                        echo 'Сообщение отправлено'.$UserDB[$e]."\n";

                    }
Отсюда задержка в 15 сек. Пользователи имеющие меньший индекс, чем $e получают одно и тоже оповещение, т.к. сообщение не удаляется. Пользователи имеющие индекс выше не получают оповещений.

P.S. Это мои предположения, возможно я и не прав.


Добавлено через 9 минут


А теперь предложения:
1. Добавить команду "/stop"
что то типа:
Код:
                else if ($text == '/stop'){ 

                    if (in_array($chat_id, $arraydata )){

                        $telegramApi->sendMessage($chat_id, 'Пока,'. ' ' . $first_name . '! Оповещения отключены. Для включения введите пароль в формате "пароль".');
						unset($arraydata[array_search($chat_id,$arraydata)]);
						file_put_contents('/usr/local/bin/bottelegram/UserDB.txt', json_encode($arraydata, JSON_FORCE_OBJECT));
                    }
2. Пользователя, который вызывает исключение удалять из UserDB.txt.

Последний раз редактировалось Merke, 19.12.2022 в 12:05
Merke вне форума   Ответить с цитированием
Старый 19.12.2022, 12:12   #129
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Merke Посмотреть сообщение
P.S. Это мои предположения, возможно я и не прав.
.
А на практике ваши предположения оправдываются?

Про команду стоп думаю вы правы.

Цитата:
2. Пользователя, который вызывает исключение удалять из UserDB.txt.
Как-то радикально, а если исключение вызвано не остановкой юзером бота?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 19.12.2022, 12:38   #130
Merke
Member
 
Регистрация: May 2022
Сообщения: 52
Благодарил(а): 5 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
А на практике ваши предположения оправдываются?
Да. Насколько я смог проверить. Исключение в этом месте не будет вызвано, если контроллер отключить от интернета, или если телефон пользователя будет выключен.
Merke вне форума   Ответить с цитированием
Старый 19.12.2022, 15:22   #131
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Merke Посмотреть сообщение
Пользователи имеющие меньший индекс, чем $e получают одно и тоже оповещение, т.к. сообщение не удаляется. Пользователи имеющие индекс выше не получают оповещений.
За это поясните, не очень понял.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 19.12.2022, 16:04   #132
Merke
Member
 
Регистрация: May 2022
Сообщения: 52
Благодарил(а): 5 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
За это поясните, не очень понял.
Допустим есть три пользователя с порядковыми номерами от 0 до 2.
Пользователь с номером 1 удалил чат. Пользователю с номером 0 будет приходить сообщение через каждые 15 сек. т.к.
Код:
unlink($Messageway[$i]);
не выполнен, а до пользователя с номером 2 дело
Код:
$telegramApi->sendMessage($UserDB[2], $messagetext);
не доходит.

Я думаю, что так происходит. Практика показывает то же самое.
Merke вне форума   Ответить с цитированием
Старый 19.12.2022, 16:46   #133
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Понял, удаление чата не удаляет пользователя из базы, что вызывает коллизии. Если поправить этот момент, то и сообщения должны приходить нормально. Я правильно вас понял?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 19.12.2022, 16:55   #134
Merke
Member
 
Регистрация: May 2022
Сообщения: 52
Благодарил(а): 5 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Понял, удаление чата не удаляет пользователя из базы, что вызывает коллизии. Если поправить этот момент, то и сообщения должны приходить нормально. Я правильно вас понял?
Да. Пользователь, который удалил у себя чат или остановил бот должен удалятся из базы контроллера.
Merke вне форума   Ответить с цитированием
Старый 19.12.2022, 18:20   #135
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Merke Посмотреть сообщение
Да. Пользователь, который удалил у себя чат или остановил бот должен удалятся из базы контроллера.
Ок, принято. Как сделаю, напишу тут.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 22.12.2022, 16:53   #136
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Merke Посмотреть сообщение
Да. Пользователь, который удалил у себя чат или остановил бот должен удалятся из базы контроллера.
Как я понял, вы сами уже тестировали? Ничего больше не заметили?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 23.12.2022, 00:33   #137
Merke
Member
 
Регистрация: May 2022
Сообщения: 52
Благодарил(а): 5 раз(а)
Поблагодарили: 3 раз(а) в 3 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Ничего больше не заметили?
Заметил, что на команду
Код:
/sensor1
ответ в виде:
Код:
Датчик1:
Sat: {"R_Sat1"} %
O₂: {"R_Con1"} mg/l
t: {"R_t1"} °C
приходит всем зарегистрированным пользователям, что вообщем логично, т.к. это оповещения. Сделать чтобы ответ приходил только пользователю, отправившему команду, я так понимаю не получится.
Изображения
Тип файла: jpg 4.jpg (46.0 Кбайт, 34 просмотров)
Merke вне форума   Ответить с цитированием
Старый 26.12.2022, 11:36   #138
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Merke Посмотреть сообщение
Сделать чтобы ответ приходил только пользователю, отправившему команду, я так понимаю не получится.
Если у вас есть предложения, готов их выслушать.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 28.12.2022, 16:57   #139
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Ок, принято. Как сделаю, напишу тут.
Добавил в первом посте версию 1.03, посмотрите. Чуть позже версию 1.02 удалю.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Благодарность от:
Старый 28.12.2022, 17:25   #140
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Добавил в первом посте версию 1.03, посмотрите. Чуть позже версию 1.02 удалю.
а что делает команда стоп?


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 28.12.2022, 18:02   #141
windy
Senior Member
 
Регистрация: Mar 2014
Адрес: Санкт-Петербург
Сообщения: 408
Благодарил(а): 1 раз(а)
Поблагодарили: 23 раз(а) в 23 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Добавил в первом посте версию 1.03, посмотрите. Чуть позже версию 1.02 удалю.
Если уже стоит версия 1.02 как правильно ставить 1.03. Поверх накатывать или только через форматирование контроллера?
Или может есть вариант с корректным удалением?
windy вне форума   Ответить с цитированием
Старый 28.12.2022, 18:20   #142
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 086
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от windy Посмотреть сообщение
Если уже стоит версия 1.02 как правильно ставить 1.03. Поверх накатывать или только через форматирование контроллера?
Или может есть вариант с корректным удалением?
Вообще используется стандартная система linux уставки программ, поэтому наката сверху должно хватить.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 28.12.2022, 18:33   #143
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Arsie Посмотреть сообщение
Вообще используется стандартная система linux уставки программ, поэтому наката сверху должно хватить.
а все таки, есть какой-нить способ, для дебилов-антилинуксоидов, как снести установленное чтобы выполнить чистую установку?
кроме форматирования.


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 28.12.2022, 18:39   #144
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 086
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от LordN Посмотреть сообщение
а все таки, есть какой-нить способ, для дебилов-антилинуксоидов, как снести установленное чтобы выполнить чистую установку?
кроме форматирования.
Для "дебилов" только форматирование, к сожалению.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Благодарность от:
Старый 29.12.2022, 11:09   #145
malyga
Сотрудник Segnetics
 
Регистрация: Apr 2008
Сообщения: 146
Благодарил(а): 13 раз(а)
Поблагодарили: 21 раз(а) в 20 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от LordN Посмотреть сообщение
а все таки, есть какой-нить способ, для дебилов-антилинуксоидов, как снести установленное чтобы выполнить чистую установку?
кроме форматирования.
Через ssh:
Код:
dpkg --purge bottelegram


__________________
Инженер "Сегнетикс"
malyga вне форума   Ответить с цитированием
Благодарность от:
Старый 29.12.2022, 14:48   #146
windy
Senior Member
 
Регистрация: Mar 2014
Адрес: Санкт-Петербург
Сообщения: 408
Благодарил(а): 1 раз(а)
Поблагодарили: 23 раз(а) в 23 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Добавил в первом посте версию 1.03, посмотрите. Чуть позже версию 1.02 удалю.
Вчера вечером поставил. Пока работает. По команде стоп отключается от чат-бота как я понял:

Код:
/stop
Пока, Alexzander! Доступ отключен. Для доступа к боту введите пароль в формате "пароль".
Если ввести пароль - подключается снова.
Пользователь пока подключен один.
windy вне форума   Ответить с цитированием
Старый 29.12.2022, 14:58   #147
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от windy Посмотреть сообщение
Вчера вечером поставил. Пока работает. По команде стоп отключается от чат-бота как я понял:
Да, нивелирована проблема выше, которая возникала у других пользователей при удалении кого-нибудь.

Цитата:
Если ввести пароль - подключается снова.
Пользователь пока подключен один.
Не понял вас, что-то не так?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 29.12.2022, 15:29   #148
windy
Senior Member
 
Регистрация: Mar 2014
Адрес: Санкт-Петербург
Сообщения: 408
Благодарил(а): 1 раз(а)
Поблагодарили: 23 раз(а) в 23 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Не понял вас, что-то не так?
Все хорошо.
windy вне форума   Ответить с цитированием
Старый 30.12.2022, 09:18   #149
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от malyga Посмотреть сообщение
Через ssh:
Код:
dpkg --purge bottelegram
это типа деинсталляция?

а есть команда для перезапуска телеграммбота по ssh?


__________________
C уважением, LordN
LordN вне форума   Ответить с цитированием
Старый 30.12.2022, 11:09   #150
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Telegram бот с поддержкой команд. Бета-тестирование

Цитата:
Сообщение от LordN Посмотреть сообщение
это типа деинсталляция?

а есть команда для перезапуска телеграммбота по ssh?
А зачем вам перезапуск по SSH, если это можно сделать из админ-панели?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 21:58.


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024