4 Push your own content onto `Noxon iRadio`__ devices:
5 RSS feeds, text files and MediaTomb server structures.
7 This tool makes it possible to push own data into the menu
8 entries "Internet Radio", "Podcasts" and "My Noxon" without relying
9 on the official Terratec servers.
11 __ http://www.noxonradio.de/
20 - Customize the Noxon iRadio menus "Internet Radio", "Podcasts" and "My Noxon"
21 - Show Mediatomb UPnP server content in "Internet Radio", so that you
22 don't have to restart your iRadio because it does not find the UPnP server
23 after a day of standby
24 - Display text files and run shell scripts from the menu (home automation)
25 - Podcast RSS feed support
26 - Discoverable with your web browser
27 - Transcoding of non-mp3 file types to ``.mp3`` that iRadios can play
28 - Single file mode for children that want to listen to a single story
30 - Paging results with ``?startitems=1&enditems=10`` GET parameters
35 Simpy write a podcast's mp3 RSS feed URL into a ``.url`` file in
36 the ``var/`` directory structure, and your radio will show you a
37 folder with all episodes.
38 Enter an episode to play it.
40 The Noxon iRadios do only allow a single HTTP redirect when they access a URL
41 to play, but many podcast feeds send you for tracking purposes through 3 or
42 more redirects until you reach the final mp3 URL.
44 noxon-gateway resolves the redirections for the iRadio, so that this will
50 You have to know the URL to the podcast's mp3 RSS feed, e.g.
51 ``http://cast.example.org/news.rss``.
53 Create a file ``Cast News.url`` in ``var/podcasts/`` and write the RSS URL
57 When accessing the "Podcasts" menu from your noxon iRadio, you'll see a
58 directory ``Cast News`` that contains all podcast episodes.
63 Your kid only wants to listen to this one single story before sleeping.
64 You start it, set the 15 minute sleep timer and leave the room.
66 After 15 minutes the child comes out and complains that the radio switched
67 off within the second story and it wants to hear it to the end.
69 To get around such issues, you can enable "single file directories"
72 Each folder with audio files within this configured paths have a special
73 directory "Einzeln" (single), which have separate folders for each audio
74 file. Each of this separate folders only have the single audio file in them.
76 When playing this file, the iRadio will stop playing after the one file
82 This is the list of iRadios known to work with ``noxon-gateway``:
84 - `Noxon iRadio`__ (original white version)
85 - `Noxon iRadio cube`__
88 If you know of unlisted radios that do work with this tool, please tell me.
90 __ http://ftp.noxonradio.de/index.php?dir=NOXON%2FNOXON_iRadio%2F
91 __ http://ftp.noxonradio.de/index.php?dir=NOXON%2FNOXON_iRadio_Cube%2F
96 You can discover the noxon-gateway contents with your web browser.
97 Point your browser to the gateway's domain and start browsing:
99 .. image:: docs/screenshots/browsing.png
101 This works because the XML files delivered by noxon-gateway contain the
102 link to an XSLT__ file that converts the XML structure to HTML that
105 Works at least with Firefox 42 and Chromium 45.
107 __ http://www.w3.org/TR/xslt
110 ===================================
111 Customizing the directory structure
112 ===================================
113 The ``var/`` directory contains three directories you can fill with
116 ================ ==================
117 Menu item ``var/`` Directory
118 ================ ==================
119 Internet Radio ``internetradio``
120 Podcasts ``podcasts``
122 ================ ==================
124 You can put folders and files into this directories.
126 The ``internetradio`` directory is hard-coded to display the contents
127 of a MediaTomb UPnP server.
128 You can remove the check in ``index.php#handleRequest()`` if you do not
135 A directory is browsable by your Noxon radio
137 Text files are rendered as un-actionable lists, one list item per line.
139 Empty lines get removed, consecutive spaces get collapsed.
141 Podcast feed URL file.
143 Simply contains the URL to the podcast's MP3 RSS feed.
145 Script is shown as directory and gets executed when navigating
147 Output is shown as it is for ``.txt`` files.
149 I use it to control my house's heating system from the radio.
150 ``*.auto*`` (executable)
151 Script gets executed when browsing the folder.
152 The output is integrated into the directory listing with the same
153 rules as for ``.txt`` files.
155 You can use this to show the current time within the directory listing.
157 Disables menu caching.
159 File extensions get removed for display purposes.
164 Files and directory are sorted alphabetically and get listed
167 You can prefix your files and directories with ``[0-9]+_``,
168 which lets you influence sorting and gets removed in the
171 Consider the following files::
183 (given that ``01_temp.auto.sh`` outputs the temperature string)
188 When going back in the menu strucutre with the left arrow button,
189 Noxon iRadios display a cached version of the menu.
191 If you do not want this - because a script modified values that are
192 displayed in the parent menu, or because the script that displays
193 the time should always be run - you may disable caching.
195 Caching is disabled when a file named ``nocache`` is found in the directory.
204 #. You need a web server (Apache) with PHP.
206 Using nginx, lighttpd or others is possible, but you need to translate
207 the redirects in the ``www/.htaccess`` file into their respective format.
209 #. Clone the Git repository of this noxon-gateway software::
211 $ git clone https://git.cweiske.de/noxon-gateway.git
213 #. Configure your network's DNS server/router, see the "Hosts" section.
215 #. Point your web server's (virtual host) document root to the ``www``
218 Let your web server handle the domain names.
220 #. Open http://gatekeeper.my-noxon.net/ in your browser.
221 You should see the noxon gateway software.
223 If your browser supports XSLT, you will not see XML, but clickable HTML
229 The following hosts must point to your server and be handled
234 gatekeeper.my-noxon.net
237 Configure this in your router or the DNS server your iRadio devices use.
242 To be able to browse a MediaTomb server, copy ``data/config.php.dist`` to
243 ``data/config.php`` and fill it with mediatomb web interface credentials.
245 You also have to install the `Services_Mediatomb`__ library via `PEAR`__::
247 $ pear channel-discover zustellzentrum.cweiske.de
248 $ pear install zz/services_mediatomb-alpha
250 __ http://zustellzentrum.cweiske.de/index.php?package=Services_MediaTomb
251 __ http://pear.php.net/
256 If you have non-mp3 files in your audio collection, install `ffmpeg`__
257 on the noxon-gateway server.
258 Transcoding will start automatically when the player accesses a file
259 that is not in ``audio/mpeg`` format.
261 __ http://ffmpeg.org/
270 ``noxon-gateway`` lives at http://cweiske.de/noxon-gateway.htm
272 The source code is available at http://git.cweiske.de/noxon-gateway.git/
273 and mirrored at https://github.com/cweiske/noxon-gateway.
278 This application is available under the `AGPL v3`__ or later.
280 __ http://www.gnu.org/licenses/agpl.html
285 Written by `Christian Weiske`__, cweiske@cweiske.de
287 __ http://cweiske.de/