Piclodio: Raspberry Pi vækkeurradio
Ny version af Piclodio tilgængelig!
Piclodio er en webapplikation til at omdanne Raspberry Pi til en internetclockradio. Jeg havde lavet en artikel til den første version der på et tidspunkt. Selvfølgelig kan du installere applikationen på enhver nunux-maskine, så længe den understøtter Django-rammerne. De følgende kommandoer vil dog kun virke på Debian-basis.
Så hvorfor vil du spørge mig om en ny version? Tja af flere grunde:
- Brug af en ramme (Django). Som bruger er vi ligeglade, men for en udvikler er det vigtigt. Dette vil give applikationen mulighed for at udvikle sig, at vedligeholde den og frem for alt at have en ren base for andre mennesker til at bringe deres masser af funktioner ind i koden.
- Ny grænseflade. Den gamle så godt ud på en smartphone, men var ikke særlig velegnet til terminaler af pc-typen.
- Bedre ydeevne. Skift fra PHP til Python. Rpi elsker python.
- Nye funktioner. Mulighed for at indstille flere vækkeure, vælge dag, stoppe vækkeuret automatisk og administrere flere webradioer
Koden er åben og tilgængelig på Github. Tøv ikke med at fordele og trække-anmode om dine forbedringer. Du kan også bare kommentere dine ideer i denne artikel. Her er en lille forhåndsvisning af grænsefladen
Kort sagt, lad os gå videre til installationen!
Installation
Installation af Django-rammeværket
1
2
3
|
wget https://www.djangoproject.com/download/1.6/tarball/
tar xzf Django–1.6.tar.gz
sudo python setup.py install
|
Du kan bekræfte din installation med følgende kommando. Dette skulle give dig versionen af Django.
1
|
python –c « import django; print(django.get_version()) »
|
Installation af webserveren, medieafspilleren, databasen og pythonmodulet for at forbinde django til webserveren.
1
|
sudo apt–get install mplayer at sqlite3 apache2 libapache2–mod–wsgi
|
Projektet bruger et bestemt python-modul. Dette er 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
|
Vi henter nu Piclodio fra Github. Vi installerer det i webserverbiblioteket og giver rettighederne til denne mappe til apache-brugeren.
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/
|
Vi kopierer konfigurationsfilen til apache (vHost)
1
|
sudo cp /var/www/Piclodio2/apache/piclodio.conf /etc/apache2/sites–available/
|
VHost aktivering
1
|
a2ensite piclodio
|
Denne sidste kommandolinje inviterer os til at genstarte apache.
1
|
service apache2 restart
|
Til sidst skal du autorisere apache-serveren til at bruge multimedieafspilleren. Vi skriver
1
|
sudo visudo
|
og vi tilføjer denne linje i slutningen af filen
1
|
www–data ALL=NOPASSWD:/usr/bin/mplayer* ,/usr/bin/pgrep mplayer ,/usr/bin/killall mplayer, /usr/bin/at
|
Og der går du! Applikationen er tilgængelig på ip-adressen på din Rpi via din browser.
Hvis du vil indstille en bestemt url, skal du ændre vHost i apache-konfigurationsfilen. Hvis jeg for eksempel vil kontakte applikationen via url'en http: // address_ip_du_rpi / piclodio, vil jeg ændre konfigurationsfilen som følger:
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>
|
Genstart apache for at tage højde for dette, og det er godt.