функционал платной подписки
Вид для печати
сегодня столкнулся с некоторой не стыковкой. Если записывать уставку с сайта, то появляется такое окошко Вложение 60302, что очень даже правильно, но запись через API возвращает успешный код response.status_code == 200 что создает впечатление о исправности функционала
Запрос успешно отправлен на сервер и обработан сервером. Поэтому и код 200, а какой ещё можно вернуть код в этом случае?
Команде на запись присвоен номер группы, увидеть его можно в ответе на команду с записью.
Далее можно у сервера спросить прошла ли запись группы параметров успешно используя запрос POST parameters/write-status
https://owen.ru/forum/attachment.php...&d=1649838597Х
ну раз приходит следующий ответ Завершена по таймауту я бы возвращал 408. Да, конечно можно обрабатывать статусы самостоятельно каждому пользователю, но облачный сервис мог бы делать это работу за всех и тогда меньше проблем у конечного пользователя, меньше кодинга, больше плюсов в карму
API в любом случае возвращает в ответ ID группы, и все равно по нему придется проверять, прошла ли запись успешно, так как сервер должен ответить на API запрос сразу, а вот modbus команда на запись встанет в очередь, и может быть выполнена не мгновенно, даже если прибор в сети.
По хорошему, код связанный с проверкой статуса записи нужно писать в любом случае.
но разве если облако знает что прибор не в сети, зачем в очередь вставать?
Я на 100% не знаю как устроен обмен, так как не я писал код. Но имею представление об этом:
Запись происходит не мгновенно а с небольшим лагом. Команда попадает на сервер, а далее в составе пакета приходит на шлюз ПМ210, например, а он уже опрашивает приборы и отдает ответ на сервер.
Это все создает задержку, в случае ПМ210 - вообще довольно ощутимую.
Поэтому если вы дадите несколько команд на запись, они точно все попадут в очередь.
И за время пока они стоят в очереди может, например, пропасть мобильная сеть, из-за чего команда не будет исполнена.
Это даже не говоря о том, что сама информация о том, что шлюз на связи - может быть устаревшей, особенно если интервал опроса - большой.
Не считаю, что 408 код здесь уместен.
https://developer.mozilla.org/ru/doc...TTP/Status/408
Ну и все же, если прибор не в сети, это же не значит что за время ожидания (по умолчанию 900 секунд) он не восстановит соединение, особенно если мы говорим о мобильной сети и ПМ210.
1) да не принципиально, 204 или 504, любой отличный от 200
2) замечательно если восстановится связь, а если на уровне ответа на запись уставки уже маякнуть пользователю, что что то неладно на объекте(даче например), а не ждать гипотетического восстановления
Идея понятна. Но все же, надежнее будет проверять статус записи, а не смотреть на код статуса ответа от сервера.
Так как возможны ситуации когда прибор на связи, а запись не прошла и наоборот.
Поэтому проверку нужно делать в любом случае, какой-бы код не пришел. А раз уж проверку в любом случае нужно делать, то к чему использовать малоиспользуемые коды ответа от сервера.
Сервер команду получил? Получил. Сервер запрос в очередь поставил? Поставил. => API запрос успешно обработан => код 200.
всевозможные проверки, это хорошо для безлимитных тарифов
Здравствуйте.
Возникла проблема. У меня есть профиль где, само собой, зарегистрированы мои приборы. На днях Нам передали объект с установленным на нем другим прибором.
При попытке зарегистрировать его в свой профиль резонно получил сообщение, что "прибор числится за другой компанией".
В профиль самого объекта, по полученным логину/паролю я вхожу, но это получается отдельно от моих прежних приборов. Но мониторить нужно и то и другое, а переключаться постоянно между ними сами понимаете не вариант.
Вопрос, можно ли каким то образом обойти эту ситуацию? Заводить отдельный смартфон?
Добрый день.
Только удалить его из той компании и добавьте в свою основную.
Это приведет к утрате архивов, поэтому их лучше скачать заранее, а так же события, шаблоны, мнемосхемы и т.п. придется создавать заново.
Если прибор не из списка стандартных, то можно сделать экспорт параметров, чтобы руками их потом не вбивать.
Вариант вполне рабочий, но не подойдет если вокруг прибора много различной обвязки, вроде шаблонов, событий, мнемосхем и т.п.
Как вариант, основной аккаунт можно сделать интеграторским, и добавить в него подчиненную компанию.
А уже в эту подчиненную компанию перенести прибор описанным выше способом.
Это позволит из аккаунта интегратора наблюдать за подчиненной компанией, а в подчинённой компании все будет как обычно (от интеграторской компании там не будет и следа)
Подробнее об интеграторских функциях читайте в РП в главе 10 "Системный интегратор"
https://ftp.owen.ru/OwenCloud/01_Docs/rp_owencloud.pdf
Спасибо за ответ.
Первый вариант думаю не подойдёт, ибо там несколько человек уже пользуются приложением, переподключать их возникнут проблемы.
Изучу второй вариант.
Второй вариант, это тот же первый, только компании будут разделены.
Т.е. пользователям нужно будет зарегистрировать новые аккаунты (либо на другую почту, либо на их текущую, предварительно удалив старые из панели администрирования)
А самим пользователям нужно будет перелогиниться.
Как отвязать ПМ210 от одного аккаунта, чтобы добавить его в другой?
Нужно зайти в аккаунт и удалить прибор, который привязан через этот шлюз.
Добрый день.
Подскажите, в чем разница ошибок 255 и 11?
Добрый день! Боюсь, что в OwenCloud не предусмотрено ошибки с кодом 11. А описание ошибки 255 во вложении: Вложение 61854
Случилось не предусмотренное )
Вложение 61856
255 ошибка включает в себя анализ работы шлюза и клауда, а исключения из документации modbus относятся только к обмену по протоколу modbus.
255 - нет ответа от шлюза (облако послало запрос в шлюз и не дождалось ответа от шлюза). Нет связи между шлюзом и облаком.
11 - нет ответа от прибора (шлюз ответил, что на переданный через порт RS-485 запрос никто не ответил - нет связи с самим прибором). Нет связи между шлюзом и прибором.
Хорошо. Раз Вы настаиваете, то я перечитаю стр.20 инструкции.
Добрый день!
Пришлите, пожалуйста, идентификатор ПМ210 и логины обоих аккаунтов на support@owen.ru.
Добрый день! Хочу подключить СПК110 к клауду через роутер. В кодесисе все сделал, в аккаунт тоже добавил (делал по инструкции пользователя OwenCloud). На странице 123 указано что "Для подключения к OwenCloud в контроллере должны быть установлены корректные сетевые
настройки (в частности, адрес шлюза и адреса DNS-серверов)". С ноута (к инету подключает ноут по DHCP) с помощью ipconfig основной шлюз 192.168.1.1, ipv4 192.168.1.86. Какие сетевые настройки нужно дать СПК?
Спасибо! Поставил адреса в одной подсети и заработало.
Если к СПК подключить модули МВ210 и ethernet кабелем подключиться к последнему модулю, то будет ли работать?