aboutsummaryrefslogtreecommitdiff
path: root/config.php
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--config.php511
1 files changed, 511 insertions, 0 deletions
diff --git a/config.php b/config.php
new file mode 100644
index 0000000..0405ccf
--- /dev/null
+++ b/config.php
@@ -0,0 +1,511 @@
+<?php
+date_default_timezone_set('Europe/Berlin');
+
+/**
+ * Während der Entwicklung wird die BASEURL automatisch erraten
+ * In Produktionssituationen sollte manuell eine konfiguriert werden um Überraschungen zu vermeiden
+ */
+//$GLOBALS['CONFIG']['BASEURL'] = 'http://foo.com/bar/';
+
+
+
+/**
+ * Konfiguration der Stream-Übersicht auf der Startseite
+ */
+$GLOBALS['CONFIG']['OVERVIEW'] = array(
+ /**
+ * Abschnitte aud der Startseite und darunter aufgeführte Räume
+ * Es können beliebig neue Gruppen und Räume hinzugefügt werden
+ *
+ * Die Räume müssen in $GLOBALS['CONFIG']['ROOMS'] konfiguriert werden,
+ * sonst werden sie nicht angezeigt.
+ */
+ 'GROUPS' => array(
+ 'Lecture Rooms' => array(
+ 'saal1',
+ 'saal2',
+ 'saalg',
+ 'saal6',
+ ),
+
+ 'Live DJ Sets' => array(
+ 'lounge',
+ 'ambient',
+ ),
+ 'Live Podcasts' => array(
+ 'sendezentrum',
+ ),
+ ),
+
+ /**
+ * Link zu den Recordings
+ * Wird diese Zeile auskommentiert, wird der Link nicht angezeigt
+ */
+ 'RECORDINGS' => 'http://media.ccc.de/browse/congress/2014/index.html',
+
+ /**
+ * Link zu einer (externen) ReLive-Übersichts-Seite
+ * Wird diese Zeile auskommentiert, wird der Link nicht angezeigt
+ */
+ //'RELIVE' => 'https://foo',
+
+ /**
+ * Alternativ kann ein ReLive-Json konfiguriert werden, um die interne
+ * ReLive-Ansicht zu aktivieren.
+ *
+ * Wird beides aktiviert, hat der externe Link Vorrang!
+ * Wird beides auskommentiert, wird der Link nicht angezeigt
+ */
+ 'RELIVE_JSON' => 'http://vod.c3voc.de/relive/index.json',
+);
+
+
+
+/**
+ * Liste der Räume (= Audio & Video Produktionen, also auch DJ-Sets oä.)
+ */
+$GLOBALS['CONFIG']['ROOMS'] = array(
+ /**
+ * Array-Key ist der Raum-Slug, der z.B. auch zum erstellen der URLs,
+ * in $GLOBALS['CONFIG']['OVERVIEW'] oder im Feedback verwendet wird.
+ */
+ 'saal1' => array(
+ /**
+ * Angezeige-Name
+ */
+ 'DISPLAY' => 'Saal 1',
+
+ /**
+ * Vefügbare Streaming-Formate
+ * FIXME: Die Formate müssen in $GLOBALS['CONFIG']['FORMATS'] benannt sein
+ */
+ 'FORMATS' => array(
+ 'rtmp-sd', 'rtmp-hd',
+ 'hls-sd', 'hls-hd',
+ 'webm-sd', 'webm-hd',
+ 'audio-mp3', 'audio-opus',
+ 'slides',
+ ),
+
+ /**
+ * ID des Video/Audio-Streams. Die Stream-ID ist davon abhängig, welches
+ * Event-Case in welchem Raum aufgebaut wird und wird üblicherweise von
+ * s1 bis s5 durchnummeriert.
+ */
+ 'STREAM' => 's1',
+
+ /**
+ * Übersetzungstonspur aktivieren
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist werden nur
+ * die native-Streams verwendet, andernfalls wird native und translated
+ * angeboten und auch für beide Tonspuren eine Player-Seite angezeigt.
+ *
+ * Der Spezialwert 'stereo' (oder ein beliebiger anderer String) kann
+ * verwendet werden, um statt s1_native_sd Streamnamen in der Art von
+ * s1_<string>_sd, also z.B. s1_stereo_sd zu benutzen. Abgesehen von den
+ * anderen Streamnamen verhält sich die Seite, als wäre false gesetzt.
+ */
+ 'TRANSLATION' => true,
+
+ /**
+ * Fahrplan-Ansicht auf der Raum-Seite aktivieren (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird der Raum nicht im Fahrplan gesucht und auch auf der Startseite
+ * findet keine Darstellung statt.
+ *
+ * Ebenso können alle Fahrplan-Funktionialitäten durch auskommentieren
+ * des globalen $GLOBALS['CONFIG']['SCHEDULE']-Blocks deaktiviert werden
+ */
+ 'SCHEDULE' => true,
+
+ /**
+ * Name des Raums im Fahrplan
+ * Wenn diese Zeile auskommentiert ist wird der Raum-Slug verwendet
+ */
+ //'SCHEDULE_NAME' => 'saal-1',
+
+ /**
+ * Feedback anzeigen (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * taucht der Raum auch im globalen Feedback-Formular nicht auf.
+ *
+ * Ebenso können alle Feedback-Funktionialitäten durch auskommentieren
+ * des globalen $GLOBALS['CONFIG']['FEEDBACK']-Blocks deaktiviert werden
+ */
+ 'FEEDBACK' => true,
+
+ /**
+ * Subtitles-Player aktivieren (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird der Subtitles-Button und die damit verbundenen Funktionen deaktiviert.
+ *
+ * Ebenso können alle Subtitles-Funktionialitäten durch auskommentieren
+ * des globalen $GLOBALS['CONFIG']['SUBTITLES']-Blocks deaktiviert werden
+ */
+ 'SUBTITLES' => true,
+
+ /**
+ * IRC-Link aktivieren (boolean)
+ *
+ * Solange Twitter oder IRC aktiviert ist, wird ein "Chat"-Tab mit den
+ * jeweiligen Links angezeigt.
+ *
+ * Ist dieses Feld auf true gesetzt, wird ein irc://-Link angezeigt.
+ * WebIrc wird nach dem Congress nicht mehr unterstützt ;)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird kein IRC-Link angezeigt
+ *
+ * Ebenso können alle IRC-Links durch auskommentieren
+ * des globalen $GLOBALS['CONFIG']['IRC']-Blocks deaktiviert werden
+ */
+ 'IRC' => true,
+
+ /**
+ * Mit dem Angaben in diesem Block können die Vorgaben aus dem
+ * globalen $GLOBALS['CONFIG']['IRC'] Block überschrieben werden.
+ *
+ * Der globale $GLOBALS['CONFIG']['IRC']-Block muss trotzdem existieren,
+ * da sonst überhaupt kein IRC-Link erzeugt wird. (ggf. einfach `= true` setzen)
+ */
+ 'IRC_CONFIG' => array(
+ 'DISPLAY' => '#31C3-hall-1 @ hackint',
+ 'URL' => 'irc://irc.hackint.eu:6667/31C3-hall-1',
+ ),
+
+ /**
+ * Twitter-Link aktivieren (boolean)
+ *
+ * Ist dieses Feld auf true gesetzt, wird ein Link zu Twitter angezeigt.
+ *
+ * Solange Twitter oder IRC aktiviert ist, wird ein "Chat"-Tab mit den
+ * jeweiligen Links angezeigt.
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird kein Twitter-Link angezeigt
+ *
+ * Ebenso können alle Twitter-Links durch auskommentieren
+ * des globalen $GLOBALS['CONFIG']['TWITTER']-Blocks deaktiviert werden
+ **/
+ 'TWITTER' => true,
+
+ /**
+ * Mit dem Angaben in diesem Block können die Vorgaben aus dem
+ * globalen $GLOBALS['CONFIG']['TWITTER'] Block überschrieben werden.
+ *
+ * Der globale $GLOBALS['CONFIG']['TWITTER']-Block muss trotzdem existieren,
+ * da sonst überhaupt kein IRC-Link erzeugt wird. (ggf. einfach `= true` setzen)
+ */
+ 'TWITTER_CONFIG' => array(
+ 'DISPLAY' => '#hall1 @ twitter',
+ 'TEXT' => '#31C3 #hall1',
+ ),
+ ),
+
+ 'saal2' => array(
+ 'DISPLAY' => 'Saal 2',
+ 'FORMATS' => array(
+ 'rtmp-sd', 'rtmp-hd',
+ 'hls-sd', 'hls-hd',
+ 'webm-sd', 'webm-hd',
+ 'audio-mp3', 'audio-opus',
+ 'slides',
+ ),
+ 'STREAM' => 's2',
+ 'TRANSLATION' => true,
+ 'SCHEDULE' => true,
+ 'FEEDBACK' => true,
+ 'SUBTITLES' => true,
+ 'IRC' => true,
+ 'IRC_CONFIG' => array(
+ 'DISPLAY' => '#31C3-hall-2 @ hackint',
+ 'URL' => 'irc://irc.hackint.eu:6667/31C3-hall-2',
+ ),
+ 'TWITTER' => true,
+ 'TWITTER_CONFIG' => array(
+ 'DISPLAY' => '#hall2 @ twitter',
+ 'TEXT' => '#31C3 #hall2',
+ ),
+ ),
+
+ 'saalg' => array(
+ 'DISPLAY' => 'Saal G',
+ 'FORMATS' => array(
+ 'rtmp-sd', 'rtmp-hd',
+ 'hls-sd', 'hls-hd',
+ 'webm-sd',
+ 'audio-mp3', 'audio-opus',
+ 'slides',
+ ),
+ 'STREAM' => 's3',
+ 'TRANSLATION' => true,
+ 'SCHEDULE' => true,
+ 'FEEDBACK' => true,
+ 'SUBTITLES' => true,
+ 'IRC' => true,
+ 'IRC_CONFIG' => array(
+ 'DISPLAY' => '#31C3-hall-g @ hackint',
+ 'URL' => 'irc://irc.hackint.eu:6667/31C3-hall-g',
+ ),
+ 'TWITTER' => true,
+ 'TWITTER_CONFIG' => array(
+ 'DISPLAY' => '#hallg @ twitter',
+ 'TEXT' => '#31C3 #hallg',
+ ),
+ ),
+
+ 'saal6' => array(
+ 'DISPLAY' => 'Saal 6',
+ 'FORMATS' => array(
+ 'rtmp-sd', 'rtmp-hd',
+ 'hls-sd', 'hls-hd',
+ 'webm-sd', 'webm-hd',
+ 'audio-mp3', 'audio-opus',
+ 'slides',
+ ),
+ 'STREAM' => 's4',
+ 'TRANSLATION' => true,
+ 'SCHEDULE' => true,
+ 'FEEDBACK' => true,
+ 'SUBTITLES' => true,
+ 'IRC' => true,
+ 'IRC_CONFIG' => array(
+ 'DISPLAY' => '#31C3-hall-6 @ hackint',
+ 'URL' => 'irc://irc.hackint.eu:6667/31C3-hall-6',
+ ),
+ 'TWITTER' => true,
+ 'TWITTER_CONFIG' => array(
+ 'DISPLAY' => '#hall6 @ twitter',
+ 'TEXT' => '#31C3 #hall6',
+ ),
+ ),
+
+
+ 'lounge' => array(
+ 'DISPLAY' => 'Lounge',
+ 'FORMATS' => array(
+ 'music-mp3', 'music-opus',
+ ),
+ ),
+ 'ambient' => array(
+ 'DISPLAY' => 'Ambient',
+ 'FORMATS' => array(
+ 'music-mp3', 'music-opus',
+ ),
+ ),
+
+
+ 'sendezentrum' => array(
+ 'DISPLAY' => 'Sendezentrum',
+ 'FORMATS' => array(
+ 'rtmp-sd', 'rtmp-hd',
+ 'hls-sd', 'hls-hd',
+ 'webm-sd', 'webm-hd',
+ 'audio-mp3', 'audio-opus',
+ ),
+ 'STREAM' => 's5',
+ 'TRANSLATION' => false,
+ 'SCHEDULE' => false,
+ 'FEEDBACK' => true,
+ 'SUBTITLES' => false,
+ 'IRC' => false,
+ 'TWITTER' => false,
+ ),
+);
+
+
+
+/**
+ * Konfigurationen zum Konferenz-Fahrplan
+ * Wird dieser Block auskommentiert, werden alle Fahrplan-Bezogenen Features deaktiviert
+ */
+$GLOBALS['CONFIG']['SCHEDULE'] = array(
+ 'URL' => 'http://events.ccc.de/congress/2014/Fahrplan/schedule.xml';
+
+ /**
+ * APCU-Cache-Zeit in Sekunden
+ * Wird diese Zeile auskommentiert, werden die apc_*-Methoden nicht verwendet und
+ * der Fahrplan bei jedem Request von der Quelle geladen und geparst
+ */
+ 'CACHE' => 30*60,
+
+ /**
+ * Skalierung der Programm-Vorschau in Sekunden pro Pixel
+ */
+ 'SCALE' => 5,
+
+ /**
+ * Simuliere das Verhalten als wäre die Konferenz bereits heute
+ *
+ * Diese folgende Beispiel-Zeile Simuliert, dass das
+ * Konferenz-Datum 2014-12-29 auf den heutigen Tag 2015-02-24 verschoben ist.
+ */
+ // 'SIMULATE_OFFSET' => strtotime(/* Conference-Date */ '2014-12-29') - strtotime(/* Today */ '2015-02-24'),
+ 'SIMULATE_OFFSET' => 0,
+);
+
+
+
+/**
+ * Konfiguration des Feedback-Formulars
+ *
+ * Wird dieser Block auskommentiert, wird das gesamte Feedback-System deaktiviert
+ */
+$GLOBALS['CONFIG']['FEEDBACK'] = array(
+ /**
+ * DSN zum abspeichern der eingegebenen Daten
+ * die Datenbank muss eine Tabelle enthaltem, die dem in `lib/schema.sql` angegebenen
+ * Schema entspricht.
+ *
+ * Achtung vor Dateirechten: Bei SQLite reicht es nicht, wenn wer Webseiten-Benutzer
+ * die .sqlite3-Datei schreiben darf, er muss auch im übergeordneten Order neue
+ * (Lock-)Dateien anlegen dürfen
+ */
+ 'DSN' => 'sqlite:/opt/31c3-streaming-feedback/feedback.sqlite3'
+
+ /**
+ * Login-Daten für die /feedback/read/-Seite, auf der eingegangenes
+ * Feedback gelesen werden kann.
+ *
+ * Durch auskommentieren der beiden Optionen wird diese Seite komplett deaktiviert,
+ * es kann dann nur noch durch manuelle Inspektion der .sqlite3-Datei auf das Feedback
+ * zugegriffen werden.
+ */
+ 'USERNAME' => 'winke',
+ 'PASSWORD' => 'katze',
+);
+
+/**
+ * Konfiguration des L2S2-Systems
+ * https://github.com/c3subtitles/L2S2
+ *
+ * Wird dieser Block auskommentiert, wird das gesamte Subtitle-System deaktiviert
+ */
+$GLOBALS['CONFIG']['SUBTITLES'] = array(
+ /**
+ * URL des L2S2-Servers
+ */
+ 'URL' => 'http://subtitles.c3voc.de/',
+);
+
+/**
+ * Globale Konfiguration der IRC-Links.
+ *
+ * Wird dieser Block auskommentiert, werden keine IRC-Links mehr erzeugt. Sollen die
+ * IRC-Links für jeden Raum einzeln konfiguriert werden, muss dieser Block trotzdem
+ * existieren sein. ggf. einfach auf true setzen:
+ *
+ * $GLOBALS['CONFIG']['IRC'] = true
+ */
+$GLOBALS['CONFIG']['IRC'] = array(
+ /**
+ * Anzeigetext für die IRC-Links.
+ *
+ * %s wird durch den Raum-Slug ersetzt.
+ * Ist eine weitere Anpassung erfoderlich, kann ein IRC_CONFIG-Block in der
+ * Raum-Konfiguration zum Überschreiben dieser Angaben verwendet werden.
+ */
+ 'DISPLAY' => '#31C3-%s @ hackint',
+
+ /**
+ * URL für die IRC-Links.
+ *
+ * %s wird durch den Raum-Slug ersetzt.
+ * Eine Anpassung kann ebenfalls in der Raum-Konfiguration vorgenommen werden.
+ */
+ 'URL' => 'irc://irc.hackint.eu:6667/31C3-%s',
+);
+
+/**
+ * Globale Konfiguration der Twitter-Links.
+ *
+ * Wird dieser Block auskommentiert, werden keine Twitter-Links mehr erzeugt. Sollen die
+ * Twitter-Links für jeden Raum einzeln konfiguriert werden, muss dieser Block trotzdem
+ * existieren sein. ggf. einfach auf true setzen:
+ *
+ * $GLOBALS['CONFIG']['TWITTER'] = true
+ */
+$GLOBALS['CONFIG']['TWITTER'] = array(
+ /**
+ * Anzeigetext für die Twitter-Links.
+ *
+ * %s wird durch den Raum-Slug ersetzt.
+ * Ist eine weitere Anpassung erfoderlich, kann ein TWITTER_CONFIG-Block in der
+ * Raum-Konfiguration zum Überschreiben dieser Angaben verwendet werden.
+ */
+ 'DISPLAY' => '#%s @ twitter',
+
+ /**
+ * Vorgabe-Tweet-Text für die Twitter-Links.
+ *
+ * %s wird durch den Raum-Slug ersetzt.
+ * Eine Anpassung kann ebenfalls in der Raum-Konfiguration vorgenommen werden.
+ */
+ 'TEXT' => '#31C3 #%s',
+);
+
+
+
+
+/**
+ * Konfiguration der Streaming-Formate
+ *
+ * Achtung: Über diese Sektion können keine zusätzlichen Formate erstellt werden -- dazu
+ * sind Code-Anpassungen erforderlich.
+ *
+ * In diesem Abschnitt können ausschließlich die Anzeigetexte für die verschiedenen
+ * Streaming-Formate bearbeitet werden. Für jedes Streamingformat das in einem Raum
+ * verwendet wird müssen hier Texte hinterlegt sein.
+ */
+$GLOBALS['CONFIG']['FORMATS'] = array(
+ 'rtmp-sd' => array(
+ 'DISPLAY' => 'SD Video',
+ 'TECH' => '1024x576, h264+AAC im FLV-Container via RTMP, 1 MBit/s',
+ ),
+ 'rtmp-hd' => array(
+ 'DISPLAY' => 'FullHD Video',
+ 'TECH' => '1920x1080, h264+AAC im FLV-Container via RTMP, 3 MBit/s',
+ ),
+
+
+ 'hls-sd' => array(
+ 'DISPLAY' => 'SD Video',
+ 'TECH' => '1024x576, h264+AAC im MPEG-TS-Container via HTTP, 1 MBit/s',
+ ),
+ 'hls-hd' => array(
+ 'DISPLAY' => 'FullHD Video',
+ 'TECH' => '1920x1080, h264+AAC im MPEG-TS-Container via HTTP, 3 MBit/s',
+ ),
+
+
+ 'webm-sd' => array(
+ 'DISPLAY' => 'SD Video',
+ 'TECH' => '1024x576, VP8+Vorbis in WebM, 1.5 MBit/s',
+ ),
+ 'webm-hd' => array(
+ 'DISPLAY' => 'SD Video',
+ 'TECH' => '1920x1080, VP8+Vorbis in WebM, 3 MBit/s',
+ ),
+
+
+ 'audio-mp3' => array(
+ 'DISPLAY' => 'Audio',
+ 'TECH' => 'MP3-Audio, 192 kBit/s',
+ ),
+
+
+ 'audio-opus' => array(
+ 'DISPLAY' => 'Audio',
+ 'TECH' => 'Opus-Audi, 128 kBit/s',
+ ),
+
+
+ 'slides' => array(
+ 'DISPLAY' => 'Audio',
+ 'TECH' => '1024x576, h264+AAC, <500 kBit/s',
+ ),
+);