Как стать автором
Обновить

Комментарии 35

Мне кажется, что для конструктивного обсуждения лучше всего пользоваться email рассылкой — инструмент отработан, и количество комментариев на хабре не растет в геометрической прогрессии.
Вы предлагаете добавить в рассылку всех пользователей хабра? :)
Да вы что?! Конечно же нет. Создаете рассылку, а кому интересно — того туда добавляете по запросу.
Относительно связки чайника и приложения считаю, что лучше передавать настройку сети светом. Ибо городить точку доступа в чайнике — это пока перебор (несмотря на то, что сам чайник в wi-fi клиент). Без приложения этот чайник ничем от обычных отличаться по функционалу не будет, а передачу светом можно сделать в приложении, тем самым избавив разработчкиков от реализации схемы «создать точку, поднять dhcp (урезаный вариант, но протокол должен быть реализован), переключиться в режим клиента». Можно реализовать кнопочку, по нажатию которой включается приемник сигнала и пытается получить настройки wi-fi. Хотя могу ошибаться, в силу неосведомленности в области протоколов передачи информации светом.
Не думаю что это сильно ресурсо-затратно, вон SD карты точку доступа создают и ничего
Да, мне тоже больше всего нравится идея с светом. Вариант с WiFi не слишком сложный в разработке, но мне не нравится, что пользователями придется делать слишком много лишних действий:
1)Зайти в настройки WiFi, подключиться к сети чайника
2)Вернуться в приложение, ввести имя и пароль своей сети
3)Опять зайти в настройки, подключиться к своей сети.

Вместо:
1)Ввести имя и пароль, поднести телефон к чайнику.

Но в голосовании лидирует вариант с WiFi-точкой доступа.
В голосовании упомянуты не все возможные варианты :) Из предложенных же — лидирует, по моему мнению, наиболее оптимальный.
Я добавлял те варианты, который знаю, как реализовать. Кроме голосовых команд, BT и USB, что еще можно придумать?
USB не упомянут в вариантах голосования :)
Ну ок, добавил.
А если у пользователя НЕ БУДЕТ телефона? только стационарный и все. Или чайник будет управляться исключительно с телефона? это бред…
тогда ему придется звонить на чайник через VoIP-гейт :)
Стационарный в смысле WiFi-устройство, клиент. А телефон — нокия 3110…
Да, это минус — придется подносить чайник к экрану компьютера для настройки. Или пищать через колонки.
Угу, со стороны будет выглядеть прикольно, подносишь чайник к монитору чтобы он научился отзываться на своё имя… соседи дурку вызовут.
А если авторизоваться по принципу «домофона»?
В смысле, чтобы чайник знал всех своих пользователей. Понятно, что неограниченное количество новых пользователей так не добавить (а это нужно?). Зато можно удалять существующих «поштучно», а не «сбрасывая» всю сеть.
Для начальной авторизации (первое включение) можно аналог WPS с заранее заданным ключом (уникальным для каждого чайника и напечатанным в инструкции, а также где-нибудь в укромном месте под крышкой на винтах на самом чайнике — на случай, если инструкция безвозвратно «уйдёт»). А для связи — своя ТД.
А после первоначальной авторизации (когда чайник начинает «знать» по крайней мере одно приложение как «своё»), уже с этого приложения можно как добавлять новых пользователей, так и настроить чайник (если нужно) с вещания собственной ТД на использование существующей сети.
(в голове почему-то вертится Z-Wave — в смысле то, как у них организована начальная настройка/спаривание/ассоциации — с использованием единственной кнопки на самом ведомом устройстве)
для WiFi это тоже есть, но каждый производитель решает по-своему. Не обращали внимания? Практически на каждом современном роутере есть та или иная кнопка автоматической конфигурации сети.
Есть предложение по авторизации в сети.
На чайнике сделать выбор режима авторизации в сети: либо создать свою сеть(для тех у кого нет Wi-Fi роутера), либо подключиться к существующей(для тех у кого есть домашний Wi-Fi роутер). Во-втором случае, авторизоваться можно и по WPS. Хоть буквально на днях WPS на хабре и разнесли в щепки reaver'ом, но все-таки удобнее ввести только цифры, чем «длинносложныйпароль».
Еще можно рассмотреть вариант первоначальной настройки через телефон. Например, подключает телефон к чайнику шнурком USB, запускаем приложение на телефоне, передаем данные домашней Wi-Fi сети.
Поддерживаю варианты, добавлю свой. Маловероятно, что у человека не окажется ни одного компьютера в пределах доступности. А поэтому — пускай на чайнике будет обычный USB-slave, к которому можно подключиться с компьютера и настроить параметры, да хоть из терминала. Дело в том, что в мире полно телефонов, которые не умеют ни host, ни OTG, как быть таким людям?

В общем, нужно не забывать об Оккаме и не плодить сущности. Наиболее простое решение — и есть лучшее.
Мне не нравится вариант с USB:
1)Нужно добавлять дополнительный разьем, без которого можно обойтись. Прошивку можно вполне обновлять через WiFi прямо с сервера.
2)В схему настройки добавляется еще один элемент — компьютер. Вместо «достал чайник, поставил программу на телефон, настроил, начал пользоваться» у нас получается «достал чайник, поставил программу на компьютер, настроил, поставил программму на телефон, начал пользоваться». Хочется сделать наиболее просто.
Начало похоже с карьера в обрыв. Проектирование началось сразу с авторизации пользователя при этом предварительно ничего не заметил о каком-либо подобии ТЗ или отсылки на него.
А что ТЗ? В нем нет ничего о механизме настройки, потому что мы все еще не решили, каким он будет. Да и не связаны мы ТЗ, это и плюс тоже — можно изменять функционал во время разработки.
Вы смотрите на ТЗ как на некий фиксатор, но в случае, когда сам себе заказчик, менять требования не проблема. ТЗ будет выступать лишь наглядным списком и упорядочит работу.

В конце проекта видно будет с чего начинали, к чему пришли и что получили.
Котенок = Девушка — это читерство!
Не надо так.
Надо же было как-то заставить людей вчитаться в статью :)
К вариантам «передать светом» и «передать звуком» осталось добавить «принимать через Bluetooth» и «принимать голосовые команды»
BT — отдельный контроллер, будет дороже. А для распознания голоса нужен или доступ в интернет, или мощный процессор — тоже будет дорого.
Чтобы осознать бредовость ситуации, нужно довести ее до абсурда :)

Варианты с встраиванием железа, которое требуется исключительно для стартовых настроек, и которое в идеальном случае не потребуется никогда — неоптимальны. Скорее всего, у чайника будет USB-разьем для апдейта софта. Его же и нужно использовать для начальной коммуникации — просто и понятно. В конце концов — это тот самый резервный канал, по которому можно настройки сбросить к дефолту, «если что».
Голосовые команды.

> Рассмотреть картинку в фуллсайзе можно тут.
Ожидал увидеть тут картинку девушки.
попался! :)
Авторизация на чайнике по логину-паролю. Зачем? Это людям нужны пары логин-пароль, для чайника достаточно только одной записи — пароль, причем такой который пользователю знать без надобности — технический. Возможно даже пароль по умолчанию должен быть серийным номером чайника. Несколько чайников на одну сеть? да ради бога… чему это будет мешать? У них будут разные адреса, пароли будут отличаться — чем это плохо? Широковещательным запросом залогинились на всех чайниках в сети — те к которым пароль подошел — откликнулись, не подошел — откликнулись но сказали «кто такой?» никаких конфликтов, клиент всегда может знать какие чайники существуют вокруг и к каким имеет доступ. Может даже дать возможность управлять несколькими чайниками, к которым имеешь доступ, если он будет способен выдать температуру и уровень жидкости — можно прогнозировать на основании «запросов на воду» от пользователей к какому чайнику и когда подходить(да, уже не домашний получается чайник а офисный).

Вот в чем смысл пар логин-пароль когда их можно генерировать автоматически, без участия пользователя? На чайнике только сделать кнопку или функцию регистрации нового пользователя. Нажимаешь на чайнике — на клиенте к которому его надо прописать вводишь пин-код(рандомный — у чайника ведь есть индикатор на 4 цифры?) и готово — чайник передает свой пароль клиенту. А пароль этот сгенерирован на основе серийного номера(в голом чайнике) и/или пользовательского запроса — случайным образом при вызове функции из меню(можно даже использовать статистику по длительности нажатия на кнопки для формирования случайного числа).
Смысл в том, что «логин» ака идентификатор это открытая информация, которую можно перехватить. Он передается в открытом виде, что бы чайник знал, что обращаются именно к нему. И наоборот, для аутентификации чайника на на телефоне/сервере.
Пароль — это закрытая информация, он передается только один раз, при начальной установке. Дальше только challange-response.
Чайник в своей сети будет иметь только один адрес. Другой чайник будет иметь другую сеть/другой адрес… зачем еще один идентификатор? На крайний случай, есть еще и MAC-адреса, как минимум они ими будут отличаться.

И если уж на то пошло, то передача пароля по открытому каналу точно так же небезопасна как и логина. И то и другое можно в принципе перехватить, если не предпринимать дополнительных мер.
В своей сети — да, а «в интернетах» — нет. С чайником-же возможна не только локальная работа.

В том и дело, что пароль в открытом виде передается только один раз в wifi-сети созданной чайником. Во всех остальных случаях, включая работу через интернет непосредственно пароль не передается.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий