Coursera Smart House
Это курсовой проект для курса "Создание web-сервисов на Python". Задачей было реализовать на Django сервер управления умным домом, имеющий web-интерфейс для настройки и ручного управления, который будет производить периодический опрос датчиков и осуществлять автоматическую реакцию в случае определенных ситуаций, используя API контроллера умного дома.
Web-интерфейс для ручного управления домом расположен тут: http://smarthome.webpython.graders.eldf.ru
Установка
Установите pipenv https://docs.pipenv.org/
$ pip install pipenv
Установите зависимости проекта, включая зависимости для разработки
$ pipenv install --dev
Активируйте virtualenv проекта
$ pipenv shell
Запустите миграции
$ python manage.py migrate
И приступайте к разработке.
Запуск
На главной странице сервиса будет расположена панель управления вашим умным домом.
Для запуска периодического опроса состояния дома, используется celery.
Она запускается как celery -A coursera_house.celery worker -l info -B
Celery использует Redis как брокер, инструкция по установке Redis: https://redis.io/topics/quickstart
Тестирование
Для запуска тестов выполните команду
$ py.test tests