diff --git a/docs/Quellen.bib b/docs/Quellen.bib new file mode 100755 index 0000000..6482854 --- /dev/null +++ b/docs/Quellen.bib @@ -0,0 +1,6 @@ +@Misc{screenly , + Title = {Screenly Home Page}, + HowPublished = {\\https://www.screenly.io/ }, + month = {15 } # dez, + year = 2019 +} diff --git a/docs/main.tex b/docs/main.tex index 8f229fb..05f3144 100755 --- a/docs/main.tex +++ b/docs/main.tex @@ -13,6 +13,7 @@ \newcommand{\myAdress}{Goldschmidt Str. 21} \newcommand{\myAdresse}{04103 Leipzig} \newcommand{\rpi}{Raspberry Pi } +\newcommand{\rpis}{Raspberry Pis } % deutsches Sprachpaket für Silbentrennung und deutsche ``Floskeln'' diff --git a/docs/screenly.tex b/docs/screenly.tex index aa73cab..bb415b7 100755 --- a/docs/screenly.tex +++ b/docs/screenly.tex @@ -1,11 +1,48 @@ % !TeX spellcheck = de_DE -\section{Screenly und Screenly Pro} +\section{Screenly OSE und Screenly Pro} + +Screenly ermöglicht es Inhalte auf Bildschirme darzustellen, dies könnten Informationen oder Werbung sein, sie bietet die Möglichkeit Bilder, Videos und Internet-Seiten anzuzeigen. Screenly läuft auf das \rpi auf Raspbian, der eine Distribution von Debian ist. Screenly bietet zwei verschiedene Lösungen, eine ist die OSE (Open Source Edition) Wie bei den meisten Open Source-Produkten kann die Einrichtung und Installation einen gewissen technischen Sachverstand und Kenntnisse erfordern, die andere ist dann die kommerzielle Version "Screenly Pro" dies ist voll Support von Experten. + +\subsection{Screenly OSE} + +Screenly OSE oder Open Source Edition ist eine kostenlose Digital Signage-Software, die von der Community unterstützt und von Screenly, Inc. gepflegt wird. Dies war das erste Produkt von Screenly. + +Sie ist eine einfache Digital Signage-Software. Sie bietet jedoch alles, was Sie für eine erfolgreiche Digital Signage-Anzeige benötigen. Einfach ausgedrückt, Screenly OSE bietet webbasiertes Management für Ihre Digital Signage-Displays für Bild-, Video- und Webinhalte. Dieser Inhalt kann in 1080p HD angezeigt werden. Die Installation von Screenly OSE muss für jeden einzelnen Bildschirm erfolgen. Diese praktische Anforderung gilt auch für die Inhaltsverwaltung mit Screenly OSE, da das Produkt keinen Cloud-Speicher für Inhalte unterstützt. Bei Screenly OSE muss jeder Knoten separat verwaltet werden. Es ist zwar möglich, Knoten per Fernzugriff (über VPN und / oder SSH) zu verwalten, dies ist jedoch keine integrierte Funktion. Ein \rpi kann bis zu der 3 Version nur ein Bildschirm verwalten, der \rpi 4 kommt mit zwei Micro-HDMI-Buchsen statt nur einer in normal großer HDMI-Bauform in den älteren Versionen. + +In den älteren Versionen von Screenly kann jeder Benutzer, der einen Computer im gleichen Netz wie der \rpi hat, den Inhalt von Screenly ändern, diese Schwachstelle wurde aber behoben, Es wurde ein neues Authentifizierungssystem eingerichtet, das den Zugriff auf die Administrationsoberfläche einschränkt. Die Login-Daten könnten über die Admin-Interface oder über das Terminal geändert bzw. angelegt werden indem die Inhalte der Konfigurationsdatei +\begin{lstlisting} + $ sudo vim ~/.screenly/screenly.conf +\end{lstlisting} +bearbeitet werden. Anschließend muss dort einen Benutzernamen und ein Passwort festgelegt werden. Sobald dies getan wurde, müsste den Server neu gestartet werden. Dafür wird dies Kommando: +\begin{lstlisting} + $ pkill -f server.py +\end{lstlisting} +ausgeführt. beim aufrufen der Verwaltungsoberfläche, werden die angegebenen Benutzernamen und das angegebene Kennwort aufgefordert. + +Zusätzliche Funktionseinschränkungen von Screenly OSE umfassen die Unfähigkeit, den Status jedes Knotens und Bildschirms einfach zu verwalten. Knoten geben keine Warnungen aus, wenn sie nicht funktionieren oder Probleme mit Inhalten haben. Es gibt kein zentrales Verwaltungs-Dashboard zum Verwalten mehrerer Screenly-OSE-Knoten. + +Schließlich bietet die Community Support für Screenly OSE an, und es gibt keine kommerzielle Supportoption mit Reaktionszeitgarantien. + +Für die Installation von Screenly werden weder eine Tastatur noch eine Maus benötigt, das ganze wird über ssh konfiguriert, dafür Wird bloß einen Netzwerk Zugang benötigt. \cite{screenly} -\subsection{Screenly} \subsection{Screenly Pro} +Screenly, früher als ''Screenly Pro'' bezeichnet, ist die kostenpflichtige Version von Screenly. Da es sich um eine kostenpflichtige Option handelt, wird Screenly von einem Team von Vollzeitentwicklern unterstützt und verfügt über eine Reihe nützlicher Funktionen, die mit Screenly OSE nicht zu finden sind. Darüber hinaus ist der Screenly-Quellcode nicht öffentlich verfügbar. + +Die oben beschriebenen OSE-Einschränkungen von Screenly spiegeln die Vorteile der kostenpflichtigen Version von Screenly wider. In erster Linie macht Screenly die Bereitstellung und Verwaltung von Digital Signage kinderleicht. Dies gilt insbesondere dann, wenn mehrere Bildschirme zu verwalten sind. Mit Screenly können Inhalte aus der Ferne auf mehrere Digital Signage-Bildschirme hochgeladen, bereitgestellt und verwaltet werden. Dies ist sehr nützlich für Unternehmen mit mehreren Bildschirmen, da hierdurch die für das Digital Signage Management erforderlichen Arbeitsstunden erheblich reduziert werden. + +Wie bei jeder Software- oder Hardwarelösung müssen Probleme auftreten. Screenly hilft Benutzern, diese Probleme schnell zu identifizieren und zu beheben, um eine nahtlose Digital Signage-Erfahrung für ihre Digital Signage-Betrachter zu gewährleisten. Zunächst sendet Screenly Warnungen, wenn Probleme auftreten, die sich auf die Inhaltsanzeige Ihrer Digital Signage auswirken. Zweitens zeigt Screenly diese Warnungen in einem Dashboard an, sodass Sie Probleme mit mehreren Digital Signage-Bildschirmen problemlos verwalten können. Screenly wird außerdem mit Supportplänen mit Reaktionszeitgarantien des Screenly-Teams ausgeliefert, sodass Sie sicher sein können, dass alle heiklen Probleme schnell und effizient behoben werden. + +Zu den weiteren nützlichen Funktionen von Screenly gehört die Speicherung von Inhalten in der Cloud, sodass die digitalen Assets gespeichert und zu einem späteren Zeitpunkt problemlos wiederverwendet werden können. Bei Video-Assets wird das Video automatisch neu codiert, um Probleme bei der Videowiedergabe beim Anzeigen der Videos zu vermeiden. (Cachefähiger) Inhalt wird auch lokal auf dem Screenly Raspberry Pi-Gerät zwischengespeichert. Dies bedeutet, dass die Internetbandbreite nicht unnötig genutzt werden muss, um denselben Inhalt fortlaufend zu streamen. Dies bedeutet auch, dass bei einem Ausfall der Internetverbindung die Anzeige des Digital Signage-Inhalts nicht unterbrochen wird. Eine weitere wichtige Komponente von Screenly ist die im Vergleich zu Screenly OSE verbesserte Sicherheit. Screenly basiert auf Ubuntu Core und das Entwicklungsteam von Screenly verwendet Best Practices für die IoT-security, um sicherzustellen, dass die Geräte und Software auf dem neuesten Stand sind und das System gegen die neuesten Schwachstellen gepatcht ist. + + + \subsection{Eigenentwicklung statt Screenly Pro} - "Programm-Struktur/Aufbau" workflow \ No newline at end of file +% "Programm-Struktur/Aufbau" workflow + +Die neue entwickelte Software kann mit Screenly mehrere Bildschirme verwalten. Es ist möglich, dass alle denselben Inhalt haben. Dies funktioniert auch dann, wenn einige Bildschirme unter anderem gemeinsame Inhalte anzeigen sollen. Diese Software erleichtert die Verwaltung des Screenly erheblich. Die Bereitstellung soll aber von Linux-Experte gemacht werden, da es um eine Installation von Apache-Server handelt, das bedeutet, es sollte zusätzlich einen Linux Server aufgesetzt werden, diese Aufgabe könnte aber auch von einen anderen \rpi erledigt werden. Der Server stellt ein Verzeichnis bereit, das sowohl vom Screenly als auch von den Benutzern erreicht werden kann. Alles was unter diesem Verzeichnis gespeichert, wird alle eine Minute auf dem \rpi synchronisiert, in diesem Verzeichnis können Textdateien, Bilder und Videos kopiert werden. Eine Textdatei wird ein Link von einer Internet-Seiten enthalten, nur die erste Zeile in den Textdateien wird übernommen und überprüft, ob sie auf eine gültige Internet-Seiten zuweist. Videos und Bilder werden ebenfalls als Video und Bild angezeigt. Das Skript prüft regelmäßig auf Änderungen in den Dateien, indem es das Änderungsdatum regelmäßig vergleicht. + +Die Sicherheitsupdates werden regelmäßig durch einen Cron-Job ausgeführt. diff --git a/docs/softwareentwurf.tex b/docs/softwareentwurf.tex index c70db05..a1c261f 100755 --- a/docs/softwareentwurf.tex +++ b/docs/softwareentwurf.tex @@ -2,6 +2,7 @@ \section{Softwareentwurf} + \subsection{Programmaufbau} \subsubsection{Kommunikation zwischen den Einzelkomponenten} @@ -23,15 +24,24 @@ \subsubsection{Kommunikation zwischen den Einzelkomponenten} Wir, die Entwickler, hoffen, dass Sie SQLite nützlich finden, und wir bitten Sie, es gut zu verwenden: gute und schöne Produkte herzustellen, die schnell, zuverlässig und einfach zu verwenden sind. Suchen Sie Vergebung für sich selbst, wie Sie anderen vergeben. Und so wie Sie SQLite kostenlos erhalten haben, so geben Sie auch kostenlos und zahlen die Schulden nach vorne. -SQLite ist eine Embedded SQL-Datenbankanwendung, die die SQL-Datenbanksprache verwendet, von der die meisten im SQL-92-Standard implementiert sind und die alle Funktionen vollständig testet. +SQLite ist eine Embedded SQL-Datenbankanwendung, die die SQL-Datenbanksprache verwendet, von der die meisten im SQL-92-Standard implementiert sind und die alle Funktionen vollständig testet.\clearpage + + +\paragraph{WebDAV} +Es ist ein Protokoll, mit dem Daten über das Netzwerk übertragen werden können. WebDAV steht für "Web Distributed Authoring and Versioning" -\paragraph{webdav} +Das WebDAV1-Protokoll bietet Benutzern ein Framework zum Erstellen, Ändern und Verschieben von Dokumenten auf einem Server. Zu den wichtigsten Funktionen des WebDAV-Protokolls gehören die Verwaltung von Eigenschaften zu einem Autor oder Änderungsdatum, die Namespace-Verwaltung, Sammlungen und der Überschreibschutz. Die Verwaltung von Eigenschaften umfasst das Erstellen, Entfernen und Abfragen von Dateiinformationen. Die Namespace-Verwaltung befasst sich mit der Möglichkeit, Webseiten im Namespace eines Servers zu kopieren und zu verschieben. Sammlungen befassen sich mit dem Erstellen, Entfernen und Auflisten verschiedener Ressourcen. Schließlich behandelt der Überschreibschutz Aspekte im Zusammenhang mit dem Sperren von Dateien. \subsubsection{Programmablauf} + + \subsection{Wahl der Programmiersprache} +Um diesen Skript zum laufen zu bringen wurde eine Programmiersprache ausgesucht, die mit dem \rpi kompatible ist. Als Wahl war Python +In diesem Arbeit wurde die Programmiersprache Python verwendet, + \subsubsection{Vergleich mit anderen Programmiersprachen.} \subsubsection{Externe Module und Pakete}