Здравствуйте!
Может кто сталкивался с таким, или знает как лучше сделать.
Нужна кнопка, которая будет подключаться к wifi сети, но от кнопки нужно следующее - в идеале, чтобы кнопка передавала GET HTTP запрос при нажатии на неё. Т.е.
1. Нажимаю на кнопку
2. Кнопка через подключенный wifi отправляет get запрос по заданному мною адресу.
Чего точно нужно избежать - я знаю что есть zigbee кнопки, но для них нужен шлюз - дополнительно шлюз ставить крайне не хочу. Ну тда, можно развернуть home assistant (он кстати есть), подключить кнопку к нему и на стороне home assistant сделать логику при нажатии на кнопку - тоже не вариант, не хочу завязывать кнопку на свою инфраструктуру
Поэтому вижу вариант какой нибудь wifi кнопки, по типу яндекс умный пульт. Сделать для неё сценарий, что при нажатии на неё будет срабатывать приложение (я могу опубликовать закрытое приложение в яндекс разработчикам) и это приложение уже будет отправлять http запрос.
В общем смысле, мне нужно получать какой то триггер нажатия на эту кнопку, пока что вижу сценарий через яндекс, т.к. к своей структуре пилить не хочу.
Можно конечно через esp запилить подобную кнопку, но не хочется заморачиваться с корпусом.
В сухой выжимке, мне нужна кнопка, чтобы я смог ловить триггер срабатывания кнопки (желательно http запросом) и без покупки дополнительных устройств.
Подскажите пожалуйста идеи или как можно реализовать такую задачку
Если ошибся с категорией, поправьте пожалуйста.
А поверх http нет протокола авторизации в сервисе с получением временного токена для отправки команд?
Точно не нужен SSL?
А модуль wifi кнопки должен держать связь с роутером 24/7 ? - насколько допустимы разрывы связи?
alexalexes, в теории Вы пишите правильные вещи, но тут ничего секретного не будет, поэтому думаю не сильно заморачиваться с авторизацией. В идеале кнопка не должна постоянно держать связь с роутером, а подключаться к wifi только после нажатия на кнопку, отправлять пакет и засыпать - с точки зрения экономия энергии. Но в целом с электричеством я могу решить вопрос и запитать от внешнего источника, поэтому в данном случае это не принципиально. А схема работы для кнопки такая -
1. нажал на кнопку
2. получил уведомление в телегу что кнопка нажата.
Мне нужно получить триггер нажатия на кнопку, не более того, всю остальную логику я реализую в закрытом приложении который разработаю. Т.е. мне нужно получить сигнал что кнопка нажата и всё. Данные в какой чат, токены авторизации будут предварительно настроены на стороне приемника триггера.
От сложности сообщения и его подготовки будет зависеть то, насколько сложна должна быть микросхема до wifi-модуля. Если сообщение фиксированного содержания, и не требует какой-то подготовки, в виде авторизации и рукопожатий, то такое сообщение может хранить и отправлять даже ATTiny85.
Тут еще проблема, что мало активировать эту микросхему, нужно сначала запустить wifi-модуль, дать время ему авторизоваться в сети, получить статус, что он авторизован, а потом уже слать сообщение.
alexalexes, да я понимаю, вот для каких то серьезных целей я бы может так и заморочился и сделал именно как мне нужно с авторизацией и максимальной экономией по питанию, чтобы запитать от батарейки. Но в данном случае, я скорее ищу готовое решение, чем делать собственное. Т.к. в данном случае мне более важен внешний вид конечного устройства + скорость реализации, чем функционал. А функционал у меня примитивный, иметь возможность ловить триггер срабатывания. Так бы я не задумываясь начал пилить на esp т.к. уже знаком с ними и работал, и в целом более устраивает возможности. Но опять же, под конкретно эту задачу не хочу заморачиваться ни с внешним видом, ни с разработкой
Ну у яндекса точно можно сценариями сделать "если нажата кнопка, то включить музыку на станции".
Тут подойдёт любой умный выключатель.
Поэтому вижу вариант какой нибудь wifi кнопки, по типу яндекс умный пульт. Сделать для неё сценарий, что при нажатии на неё будет срабатывать приложение (я могу опубликовать закрытое приложение в яндекс разработчикам) и это приложение уже будет отправлять http запрос.
Да, вполне можно и такой сценарий сделать - при нажатии на кнопку вызывать навык.
Спасибо за ответ, правильно же я понял, что на кнопку можно повесить сценарий, который будет вызывать навык, и собственно этот навык уже будет мне триггером. Я навыки для алисы уже делал, но для колонки, чтобы она включала\выключала правила в моем микротике по блокировке ютуба. А вот с кнопкой не знаю, умеет она такое делать или нет. Имею ввиду привязать её к навыку
Спасибо за подсказку, пойду изучать информацию. А то большинство кнопок заточены под экосистемы и им нужно внешнее управление, а как найти более менее настраиваемую кнопку - ума не приложу.
Да, спасибо! Это ровно то, что я и искал. Встроенный функционал позволяет делать ровно то, что мне нужно, а именно вебхуки. Благодарю за наводку. Ценник правда выше, чем другие решения, но под мою задачу выходит все равно выгоднее чем покупать кнопку+шлюз. Да и сами устройства входят в премиум сегмент, поэтому для меня это просто находка!
Спасибо, esp в этом плане лучше всего будет, но мне не подходит т.к. не хочу с корпусом кнопки заморачиваться. А мне нужен красивый корпус) Отметил бы решением, но я в вопросе написал что ESP и подобное не подходит как раз из за заморочек с корпусом.
'Любой' БУ смартфон, перепрошиваешь на открытую прошивку (чтобы не тупил и не тормозил, наличие таких прошивок и определяет выбор) пишешь примитивное приложение и пользуешься.
Если тебе размеры и энергопотребление критичны, покупаешь плату 'любого' (по размеру) роутера с поддержкой openwrt и на ее базе делаешь что угодно, по соотношению деньги-функционал это самое эффективное решение.
Ищите подходящие по дизайну WiFi кнопки. Потом смотрите, какой внутри чип, часто выкладывают в отзывах и обзорах фото внутренностей, ну или купить и разобрать. Выбираете те, где чип поддерживается esphome (https://esphome.io/#supported-microcontrollers). Находите там uart, конфигурируете и прошиваете esphome.
http запрос по нажатию там делается в пару строк https://esphome.io/components/http_request.html