Piclodio: Radiobudzik Raspberry Pi
Dostępna nowa wersja Piclodio!
Piclodio to aplikacja internetowa do przekształcenia Raspberry Pi w radiobudzik internetowy. W pewnym momencie napisałem tam artykuł do pierwszej wersji. Oczywiście możesz zainstalować aplikację na dowolnej maszynie nunux, o ile obsługuje ona framework Django. Poniższe polecenia będą jednak działać tylko na podstawie Debiana.
Więc dlaczego miałbyś mnie zapytać o nową wersję? Cóż z kilku powodów:
- Korzystanie z frameworka (Django). Jako użytkownik nas to nie obchodzi, ale dla programisty jest to ważne. Pozwoli to aplikacji rozwijać się, utrzymywać ją, a przede wszystkim mieć czystą bazę dla innych osób, która może wprowadzać wiele funkcji do kodu.
- Nowy interfejs. Stary wyglądał dobrze na smartfonie, ale nie był odpowiedni dla terminali typu PC.
- Lepsza wydajność. Przejście z PHP na Python. Rpi kocham pytona.
- Nowe funkcje. Możliwość ustawienia kilku budzików, wyboru dnia, automatycznego zatrzymania budzika i zarządzania kilkoma radiami internetowymi
Kod jest otwarty i dostępny na Github. Nie wahaj się przed rozwidleniem i ciągnięciem żądań ulepszeń. Możesz także po prostu skomentować swoje pomysły w tym artykule. Oto mały podgląd interfejsu
W skrócie przejdźmy do instalacji!
Instalacja
Instalacja frameworka Django
1
2
3
|
wget https://www.djangoproject.com/download/1.6/tarball/
tar xzf Django–1.6.tar.gz
sudo python setup.py install
|
Możesz zweryfikować swoją instalację za pomocą następującego polecenia. To powinno dać ci wersję Django.
1
|
python –c « import django; print(django.get_version()) »
|
Instalacja serwera WWW, odtwarzacza multimediów, bazy danych i modułu Pythona do połączenia django z serwerem WWW.
1
|
sudo apt–get install mplayer at sqlite3 apache2 libapache2–mod–wsgi
|
Projekt wykorzystuje konkretny moduł Pythona. To jest python-crontab.
1
2
3
|
wget https://pypi.python.org/packages/source/p/python–crontab/python–crontab–1.7.0.tar.gz
cd python–crontab–1.7.0/
sudo python setup.py install
|
Teraz pobieramy Piclodio z Github. Instalujemy go w katalogu serwera WWW i nadajemy prawa do tego katalogu użytkownikowi apache.
1
2
3
|
cd /var/www
sudo git clone https://github.com/Sispheor/Piclodio2.git
sudo chown –R www–data:www–data /var/www/Piclodio2/
|
Kopiujemy plik konfiguracyjny dla Apache (vHost)
1
|
sudo cp /var/www/Piclodio2/apache/piclodio.conf /etc/apache2/sites–available/
|
Aktywacja Vhosta
1
|
a2ensite piclodio
|
Ta ostatnia linia poleceń zachęca nas do ponownego uruchomienia Apache.
1
|
service apache2 restart
|
Na koniec musisz autoryzować serwer Apache do korzystania z odtwarzacza multimedialnego. Piszemy
1
|
sudo visudo
|
i dodajemy tę linię na końcu pliku
1
|
www–data ALL=NOPASSWD:/usr/bin/mplayer* ,/usr/bin/pgrep mplayer ,/usr/bin/killall mplayer, /usr/bin/at
|
I proszę bardzo! Aplikacja jest dostępna pod adresem IP Twojego Rpi za pośrednictwem Twojej przeglądarki.
Jeśli chcesz ustawić konkretny adres URL, musisz zmodyfikować vHost w pliku konfiguracyjnym Apache. Na przykład, jeśli chcę skontaktować się z aplikacją za pośrednictwem adresu url http://adres_ip_du_rpi/piclodio, zmodyfikuję plik konfiguracyjny w następujący sposób:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
WSGIScriptAlias /piclodio /var/www/Piclodio2/apache/wsgi.py
Alias /static/ /var/www/Piclodio2/webgui/static/
<Directory /var/www/Piclodio2/apache>
Order deny,allow
Allow from all
# Require all granted # enable it on apache 2.4
</Directory>
<Directory /var/www/Piclodio2/webgui/static/>
Order deny,allow
Allow from all
# Require all granted # enable it on apache 2.4
</Directory>
|
Zrestartuj Apache, aby wziąć to pod uwagę i jest dobrze.