Библиотеки и псевдокод для физической панели мониторинга / состояния

Хорошо, поэтому вчера я купил 46-дюймовый экран для офиса, и с неизбежным риском быть обвиненным в создании «тщательно продуманной схемы пробития Кубка мира», мне лучше показать моим коллегам, для чего это предназначено;)

Глядя на мой простой эскиз, и в этих великолепных проектах, из которых я был вдохновлен, я хотел бы получить некоторые сведения о следующем:

  1. Псевдокод для скелета: поскольку некоторые методы следует вызывать каждые 24 часа («Сегодняшняя дата в заголовке»), другие с 60-секундными интервалами («результаты Twitter»), что было бы хорошим подходом с использованием JavaScript (jQuery) и PHP?

    EDIT: Alsciende: Я могу согласиться, что №1 и №8 слишком расплывчаты. Поэтому я удаляю # 8 и пытаюсь уточнить # 1: С «Псевдокодом для скелета» я в основном имею в виду, можно ли это сделать полностью с использованием таймеров JavaScript и как бы вы настраивали различные таймеры?

  2. Библиотека для Google Analytics: какие библиотеки поддерживают API Google Analytics и могут создавать аккуратные диаграммы. Предпочтительно HTML5, основанный на JavaScript, как Protovis .

  3. Библиотека для Twitter: какие библиотеки вы бы порекомендовали для получения результатов поиска в twitter и последних твитов из профилей.

  4. Библиотеки для типографии / CSS / HTML5: пытаясь изучить некоторые HTML5 и т. Д. В этом процессе, проконсультируйтесь с любыми другими библиотеками типографии / css, которые могут иметь значение.

  5. Зачистка / Синтаксический? Я приведу вам конкретный пример: пытаясь получить сегодняшнее меню с веб-сайта этого ресторана , как бы вы поступили? (это на шведском языке – но вы понимаете – извините;))

  6. Статистика в реальном времени? Я использую WassUp-плагин для WordPress для отслеживания посетителей в реальном времени на нашем веб-сайте. Другое программное обеспечение для регистрации (AWStats и т. Д.), Вероятно, также установлено на веб-сервере. Любые идеи о том, как извлекать информацию из них и присутствовать в режиме реального времени на панели управления?

  7. Выбор браузера? Какой браузер и ОС вы бы выбрали? Стабильный, полноэкранный, HTML5.

alt text http://img.ruphp.com/html5/www.freeimagehosting.net

Я построил панель, похожую на то, о чем вы говорите, для нашего офиса. Я провел около дня, работая над этим, возможности действительно (в значительной степени) бесконечны. В принципе, все вычислительные вещи, которые я обрабатываю через PHP, и делают интервальные AJAX, вызывают соответствующий PHP-скрипт, который возвращает данные JSON для представления.

# 2: Для графиков я использую / рекомендую флот ( http://code.google.com/p/flot/ ). Документация на самом деле не такая уж большая, но как только вы выясните, как вообще работают вещи – это отличная библиотека, и она генерирует графики с использованием тега Canvas HTML5.

Раньше я еще не интегрировал внешние библиотеки в Google Analytics, но предполагаю, что вы можете извлекать данные из аналитики и форматировать их для флота для построения соответствующих графиков. Это может быть трудным, но я больше знаком с флотом, чем большинство других графических библиотек (и он не сосать, как и многие другие), поэтому для меня это был бы самый простой способ сделай это.

# 3: Для твиттера довольно легко извлечь данные из своего API поиска с помощью JSON-P. В основном, что это делает, динамически добавляет <script> к вашему DOM, параметры GET, который интерпретирует твиттер, а затем вызывает предопределенный javascript-метод (который вы передаете через URI) с хэш-кодом с кодировкой json.

# 5: Очистка и анализ отдельных сайтов будет кропотливым процессом. Каждый сайт будет иметь свой собственный «шаблон» (или не шаблон) для публикации своего ежедневного меню или спец. Я бы создал сценарий «меню», который знал, как назвать несколько функций, и написать функцию / класс для очистки сайта каждого ресторана, который вам интересен, когда вы показываете меню на PHP (или на каком-либо другом языке, который вам удобен с). Он может отвечать json, который является (imo) самым простым способом манипулировать / обрабатывать данные в Javascript.

# 6: Статистика в реальном времени почти такая же, как и # 5. Я бы построил пару классов, которые знали, как получать статистику из любых источников данных, которые меня интересовали, и представить данные в json для javascript через вызов ajax.

# 1: Написание javascript-кода для загрузки данных по таймеру очень просто, посмотрите на методы setInterval , clearInterval , setTimeout и clearTimeout . Все они принимают имя функции (или замыкание) и время ожидания до вызова этой функции (в мс). Вы можете легко вызвать функцию главного таймера каждые 60 секунд, которая в основном будет функцией «планировщик» или «cron», которая просто будет искать материал, который должен был запускаться «прямо сейчас», и выполнять эти функции из планировщика.

Надеюсь, это даст вам некоторые идеи о том, куда идти и как туда добраться.

Для Rails Rumble мы разработали Boarrd, который именно то, что вы хотели бы развивать!

Мы тоже были впечатлены Panic 🙂

На странице нашей команды на RailsRumble вы найдете подробную информацию об используемых инструментах. Я знаю, что это не на PHP, но, может быть, вы попробуете наш инструмент и решите улучшить среду разработки;)