2013-05-04 5 views
3

Я хочу начать создание веб-сайта, который открывается на мобильном телефоне (любой смартфон). Этот веб-сайт будет иметь функцию управления веб-сайтом, который вы уже открыли на своем компьютере. (У Volkswagen New Century Beetle с 2011 года была функция, которую я мог прокручивать через смартфон на веб-сайте, открывшемся на моем настольном компьютере)Пульт дистанционного управления для веб-сайта

У нас есть потоковый веб-сайт для конных видео, и это будет отличной возможностью для наших клиентов, если бы они могли смотреть потоки на своем умном телевизоре и управлять ими через iphone/android/wp.

Также wilmaa.com из Швейцарии предоставляет дистанционное управление смартфоном для навигации по моему сайту на смарт-теле/​​веб-браузере.

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

Возможно, переполнение стека может помочь мне, давая некоторые отправные точки о том, как это реализовать.

+0

Я также пытаюсь понять это, ознакомьтесь с http://www.diplomatic-cover.com/multi/ – Lobato

ответ

5

Для этого вам нужно какое-то «толкающее» обслуживание, способное преодолеть присущий ему недостаток HTTP, который всегда был системой «только выталкивать» - клиент инициирует запрос, отвечает сервер. В этом случае вы хотите нажать событие с сервера на клиент.

За последние годы это было сделано так называемым «длинным опросом». Это означает, что вы «злоупотребляете» механизмом, присутствующим в браузерах, который защищает сервер от зависания запросов, но позволяет им занять некоторое время. По умолчанию Apache сконфигурирован таким образом, чтобы на большинстве платформ было запрошено 300 секунд. Длительный опрос работает, отправляя запрос Ajax, и если у сервера нет данных, вместо отправки его обратно он просто ждет, пока у него не будет или длительный период, например, минута истекло. Клиент не отправляет новый запрос до получения ответа. Это дает иллюзию конечному пользователю обратной связи в реальном времени, и как это делают сайты, подобные Facebook и др., В течение многих лет.

С нескольких месяцев также можно использовать новую технологию HTML5, которая теперь имеет стабильные реализации во всех основных браузерах: Websockets. Эта технология позволяет серверу обновлять общий запрос на растяжение до полного двунаправленного соединения, обеспечивая связь в реальном времени между браузером и сервером. К сожалению, «регулярные» веб-серверы, такие как Apache, на самом деле не построены для такого рода логики, хотя их можно эмулировать такими фреймворками, как Ratchet. Для реальной части системы текущая платформа выбора для большинства сайтов, включая Stack Overflow здесь, - node.js - serveride асинхронный Javascript.

То, что я рекомендовал бы в вашей ситуации:

  • Настройка отдельный сервер Node.js как диспетчер событий (вы можете получить дешевый экземпляр размера микро EC2 на Amazon за $ 15, как за месяц, который, вероятно, будет хватает, и очень масштабируемый)
  • Храните другой код в обычной среде, где он сейчас, просто добавить логику для связи с диспетчером событий
  • Deploy Socket.io как ваш сервис обработки WebSocket. Он упрощает всю логику Javascript как на стороне сервера, так и на стороне клиента и обматывает соединение в реальном времени таким образом, что он даже совместим с IE5.5, изящно унижаясь к технологиям, поддерживаемым серверами и клиентскими веб-окнами в последних браузерах, длительные опросы или другие технологии в устаревших системах.

С помощью этого решения вы можете легко реализовать с относительно небольшим кодом систему с полной реакцией в реальном времени на нескольких платформах, как вы описали.

Что касается самого управляющего приложения, просто используйте HTML5, с Phonegap, если вы собираетесь распространять его в магазинах приложений.

Смежные вопросы