| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Обмен между устройствами в неизвестной сети |
| Автор: kami 4.5.2015, 18:42 |
| Доброго времени суток, уважаемые! Так как сформулировать короткий вопрос не получается Исходные данные: 1. FMX, Delphi XE7, куча IPad 2, на которых залочено (но можно разлочить) все что только можно, дабы шаловливые ручки пользователей не жмакали куда не следует, установленное на IPad-ах свое ПО. 2. Пользователей IPad считаем вообще не связанными с IT, посему для них такие понятия как IP-адрес, время видимости Bluetooth и т.п. - из разряда китайских иероглифов. При этом есть грамотные админы, которые заведуют устройствами и правами доступа на них. 3. Периодически 3 - 4 IPad (неизвестно какие, выборка случайна) "уходят" группой в "свободное плавание". GSM-сети нет, вай-фаями не пахнет, но устройства находятся в пределах прямой видимости друг от друга. 4. "Главное" из этих устройств по каким-нибудь аппаратным признакам выделить не получается (п.3 - выборка и раздача пользователям случайны), но одного из пользователей условно можно назвать главным (пусть это будет "капитан", раз у нас "свободное плавание" Задача Необходимо обеспечить обмен данными между устройствами в этом "свободном плавании". Пред-вопрос (вместе с собственными мыслями) Как и чем? Изначально заказчик говорил "давайте по bluetooth". Но связывание по bluetooth - не совсем тривиальная задача на мой взгляд и противоречит п.2. Кроме того - обмен должен идти "от любого (одного) ко всем", а не только к серверу, а с bluetooth такое, вроде (???), не получится. Сейчас я склоняюсь к wi-fi, там (вроде как) пользователю меньше работы, да и побыстрее будет: - администратор настраивает возможность использования wi-fi планшета (всех) в качестве роутера + входит на остальных устройствах в получившиеся сетки, чтобы планшеты запомнили пароли и остальное - после выдачи планшетов "капитан" расшаривает свою сетку, остальные просто включают у себя wi-fi - устройства "остальных" подключаются к сети и... и дальше - затык. Скорее всего - надо будет использовать App Tethering из комплекта поставки Delphi, но поможет ли он при наличии сети с полностью неизвестными параметрами, или надо будет городить свой огород с UDP броадкастами и т.п. ? Сам вопрос: У кого есть опыт/представление построения чего-либо подобного, поделитесь - как сие (и в аппаратном и в программном плане) можно реализовать? |
| Автор: Illusion Dolphin 5.5.2015, 12:08 |
| Опята нету, поэтому только мысли. На счёт bluetooth согласен - это будет не только сложно, но и нестабильно. Wifi вариант лучше, но я не совсем понял, как вы собираетесь настраивать все устройства. По мне проблемы: 1) При росте количества устройств проблема настроек. Если было 10 и добавилось 11е устройство, то надо все 11 донастраивать. Имхо это очень не гут. 2) Если "свободные группы" встречаются, то будет проблема с лидером. Как на счёт того чтобы не выбирать лидера, а носить с собой в группе связку battarypack + wifi и все подсоединяются к этой сети? В таком случае человеку просто надо подключиться к нужному файфай (так собирается группа) и в рамках этой сети можно делать всё. P.S. Вот реализация http://habrahabr.ru/post/216941/ + http://habrahabr.ru/company/touchinstinct/blog/198814/ |
| Автор: Romikgy 5.5.2015, 12:37 |
а в чем собственно затык ? главный wifi hotspot становится сервером, все остальные получать ip по dhcp ... если на сервере будет свой серверный софт, все кто в сети стукнут в него и представятся... а дальше клиент-сервер приложения рулят... в чем сложность? |
| Автор: Illusion Dolphin 5.5.2015, 13:03 | ||
В #3 сказано что нет сервера |
| Автор: Romikgy 5.5.2015, 15:07 |
сервер будет динамический , кто стал hotspotom тот и сервер... |