Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Show the current RCS Zetta title on OnAirScreen ====== [[https://www.rcseurope.de/zetta/|RCS Zetta]] can control OnAirScreen natively via **Live Metadata** (older names: **Now Playing Export** / **Billboard**). The **NOW** footer line accepts ''NOW:TEXT''. Same idea for Myriad Playout: [[onairscreen:myriad-en|Show the current Myriad Playout title on OnAirScreen]] API reference: [[oas:api|OnAirScreen API / UDP / HTTP / MQTT]] ===== What OnAirScreen expects ===== ^ Channel ^ Target (default) ^ Example ^ | UDP | Port **3310** | ''NOW:Artist - Title'' | | HTTP | Port **8010** | ''http://<oas-ip>:8010/?cmd=NOW:Artist%20-%20Title'' | | MQTT | Topic ''{base}/text/now/set'' | Payload: ''Artist - Title'' | Optionally the same for the second footer line: ''NEXT:…''. Maximum **500 characters**. OnAirScreen does **not** parse Zetta XML. Default **HTTP POST** of ''Zetta Lite'' / ''Zetta Full'' XML (iono.fm, MetaRadio, and similar) does **not** set the footer. Commands are **GET** ''/?cmd=…'' or **UDP** plaintext. There is no TCP command port. First check that OnAirScreen shows the title at all. After startup the IP is in the first footer line. On **Linux / macOS**: <code bash> echo "NOW:Artist - Title" > /dev/udp/<oas-ip>/3310 curl "http://<oas-ip>:8010/?cmd=NOW:Artist%20-%20Title" </code> On **Windows** (Zetta runs on Windows) use ''oas_send.exe'' from the OnAirScreen license: <code> oas_send.exe --ip 192.168.23.5 "NOW:Artist - Title" oas_send-noconsole.exe --ip 192.168.23.5 "NOW:Artist - Title" </code> If OnAirScreen runs on **the same PC** as Zetta, use ''127.0.0.1'' as the target. ===== Recommended path: Live Metadata → HTTP GET or UDP ===== In Zetta this lives under **Configuration → System → Live Metadata**. Older versions use the **Now Playing Export** or **Billboard** tab. You need a Supervisor login. After saving, restart the **Live Metadata** service in **Startup Manager** on the workstation that processes the export (that machine must stay on). Placeholders (confirm in your Zetta version; Radioplayer uses the same tokens): ^ Token ^ Meaning ^ | ''%SONG_ARTIST%'' | Artist, now | | ''%SONG_TITLE%'' | Title, now | ==== Option A — HTTP GET (usually the simplest) ==== Add a Live Metadata entry: * **Active:** on * **Station / Processed By:** the on-air station and a computer that is always running * **Number of items:** 1 * **Data encoding:** UTF-8 * **Device:** HTTP * **Method:** **GET** (not POST) * **URL:** ''http://<onairscreen-ip>:8010/?cmd=NOW:%SONG_ARTIST% - %SONG_TITLE%'' Some builds put the tokens in the **Output** field instead of the URL. Then use URL ''http://<onairscreen-ip>:8010/'' and Output ''cmd=NOW:%SONG_ARTIST% - %SONG_TITLE%''. Zetta must **URL-encode** spaces, ''&'', and non-ASCII characters. If titles arrive truncated, check encoding in the HTTP options. Firewall: allow TCP **8010** to the OnAirScreen host. A second Live Metadata entry can send the upcoming title as ''NEXT:…'' if your version exposes a next-item placeholder. ==== Option B — UDP (same pattern as RDS) ==== RDS encoders often take a custom string over UDP/TCP plus optional XSLT. OnAirScreen wants the same idea, on UDP **3310**: * **Device:** UDP * **IP address:** OnAirScreen host (or ''127.0.0.1'') * **Port:** **3310** * **Output** (or XSLT result): ''NOW:%SONG_ARTIST% - %SONG_TITLE%'' If **Output** is empty, Zetta sends XML — OnAirScreen will ignore that. Use Output tokens or an XSLT on **Zetta Lite** that emits the ''NOW:…'' line (the same approach DEVA and other RDS setups use with ''DPSTEXT=…''). No HTTP encoding needed. Firewall: allow UDP **3310** to the OnAirScreen host. Do **not** use TCP XML to OnAirScreen (SOUND4 / MetaRadio style). OnAirScreen has no TCP command listener. ===== Songs only, not spots ===== Otherwise commercials and jingles land in the footer. Restrict the export to songs in the XSLT (filter item type ''SONG''), or only fire Live Metadata on song events if your version allows that. ===== Notes ===== * **Replace IPs after 10s:** After startup, NOW often shows IP addresses. The next ''NOW:'' command overwrites that. If 10 seconds pass first and Replace is on, the replacement text (''replacenowtext'') appears instead. * **WARN** hides NOW and NEXT — with an active warning the title is missing even if it was set. * Leave **Output** blank only when the receiver speaks Zetta XML. OnAirScreen does not. * Questions: [[https://www.astrastudio.de/kontakt/|Contact]] ===== Other playout systems ===== [[onairscreen:mairlist-en|mAirList]] · [[onairscreen:radioboss-en|RadioBOSS]] · [[onairscreen:radiodj-en|RadioDJ]] · [[onairscreen:playoutone-en|PlayoutONE]] · [[onairscreen:stationplaylist-en|StationPlaylist]] · [[onairscreen:proppfrexx-en|ProppFrexx]] · [[onairscreen:myriad-en|Myriad Playout]] · [[onairscreen:zetta-en|RCS Zetta]] onairscreen/zetta-en.txt Last modified: 24.09.2026 16:04by 127.0.0.1