RadioButler — User Manual

AI-generated content for your radio station, podcast or online news portal — news, local news, weather, traffic, features, music moderation and full audio streams, produced automatically and delivered just before they go on air.

Automated radio content AI news & features Music scheduling Text-to-speech voices Streaming & podcasts
🌐 Languages: This wiki is being built in five languages (English, Deutsch, Français, Español, Íslenska). The English version is ready now; the other languages can be switched on from the language bar once their translation is added.

What is RadioButler?

RadioButler is a web application made by DigitalAnna UG (based on the island of Helgoland, Germany) that lets you run a modern radio station almost entirely with automatically produced content. Instead of recording every news bulletin, weather report or presenter link yourself, you describe what you want — topics, voices, timing, music style — and RadioButler writes the texts with Artificial Intelligence (AI), turns them into spoken audio with realistic text-to-speech voices, mixes in music, jingles and adverts, and assembles a ready-to-broadcast program for every hour of the day.

You can use as much or as little of it as you like. Some stations only buy single news bulletins as audio files; others let RadioButler build and stream a complete 24/7 station — music, presenter chat, hourly world news, local news, weather, traffic, listener call-ins and advertising included.

What it can do, in plain words

  • News & local news: collects articles from sources you choose (RSS feeds, websites, e-mails), rewrites them into broadcast-ready bulletins with AI, and speaks them in the voice you pick.
  • Weather & traffic: generates spoken weather forecasts for your area and live traffic reports within a chosen radius of your station.
  • Features & stories: longer AI-written segments (e.g. "this day in rock history", business news, horoscopes) on a schedule.
  • Music: manages your music library, sorts songs into "Music Boxes" by genre/mood/popularity, builds playlists, and can have the presenter talk about the songs.
  • Presenters & voices: create on-air presenter personas, each tied to a realistic AI voice (ElevenLabs or Google), with their own style and audio processing.
  • Programs & scheduling: design what every hour sounds like (a "Radio Program"), save reusable templates ("Program Schedules"), and place them on a weekly calendar (the "Scheduler").
  • Jingles, blocks & adverts: insert station jingles, timed audio blocks and advertising campaigns automatically.
  • Streaming & podcasts: send the finished audio to streaming servers (e.g. Icecast/DAB+) and produce podcast episodes.
  • Listener calls: take phone-in calls handled by AI agents, transcribe and review them, and broadcast the good ones.
  • Radio player & billing: an embeddable web player for your website, plus a pay-as-you-go account you top up via PayPal.
How the money works (pay-as-you-go) You only pay for what you order. Indicative list prices are: news / local news ≈ €0.04 each, feature ≈ €0.06, traffic ≈ €0.08, weather ≈ €0.05, opener/outro ≈ €0.01 each — plus the text-to-speech cost (ElevenLabs ≈ €0.25 / 1000 characters or Google ≈ €0.0625 / 1000 characters) plus VAT. You load credit onto your RadioButler account and the cost of each produced item is deducted automatically.

How to read this manual

The manual follows the menu you see after logging in, from top to bottom, and adds the detail/sub-pages that open when you click an item in a list. Every screen has its own chapter, and inside each chapter every field, checkbox, drop-down and button is explained in a table — even the obvious ones — so that someone who has never used the program can follow along.

Useful symbols used throughout:

  • Menu › Item shows where to find a screen in the left navigation of RadioButler.
  • The Field name column in tables matches the label you see on screen.
  • Blue note = background information.
  • Green tip = practical advice.
  • Orange warning = be careful, this can delete data or cost money.

Table of contents

Basics

Core concepts & glossary

RadioButler uses a handful of recurring building blocks. Understanding these makes every later screen much easier. They fit together like this: a Radio station has Presenters (who each use a Voice), pulls text from Sources via Requests to create News and Features, plays music organised in Music Boxes, and broadcasts it all according to Radio Programs placed on the Scheduler.

TermWhat it means in RadioButler
Customer / AccountYour company login. One account can own several radio stations and holds the credit balance that pays for produced content.
Radio station (Radio)One station you operate. Almost every setting (voices, news defaults, weather location, music, streaming) belongs to a specific radio station.
Presenter (Anchor / Moderator)An on-air personality. Each presenter is linked to a Voice and has a name, style/character, greetings and audio processing. Presenters read the news, features and music chat.
VoiceThe technical text-to-speech voice (from ElevenLabs or Google) that turns written text into spoken audio. A presenter "uses" a voice.
AI (machine) modelThe Large Language Model that writes the texts (e.g. an OpenAI/Gemini/DeepSeek-style model). You register models with their API key and pick which one writes news, features, etc.
SourceWhere raw information comes from: an RSS feed, a web page to scrape, or an e-mail inbox. Sources deliver the articles the AI rewrites.
RequestA saved "ask" that filters sources by keywords/topics and tells the AI how to turn the result into a finished news item or feature.
NewsA single finished, broadcast-ready news story (text + audio). "Local news" is the regional variant.
FeatureA longer recurring AI segment (story, business report, "day in history", etc.) with its own schedule.
Radio ProgramThe recipe for a single hour (or hour range) on a given date: which news, weather, traffic, music, presenters, openers and outros it contains.
Program Schedule (template)A reusable Radio Program blueprint for recurring hours (e.g. "weekday morning show"), placed on the weekly Scheduler so programs are generated automatically.
SchedulerThe weekly calendar grid where you assign Program Schedules to days and hours.
Music BoxA defined "pool" of music — a set of rules (genre, popularity, mood, tempo, language…) that selects which songs may play.
BlockA timed audio element that must appear at a precise moment (e.g. a top-of-hour time signal or sponsored slot).
JingleA short station audio ident inserted automatically between elements.
Campaign / SpotAdvertising: a campaign groups adverts ("spots") with run dates, hours and weighting.
Streaming providerAn output server (e.g. Icecast, DAB+) that receives the finished live audio.
BedBackground music/audio that plays under spoken content (e.g. a "news bed"). Its three timing values are explained in Bed timing below.

Bed timing: Cue-in, Start next & Fade-out

A bed is background audio that plays under spoken content (news, weather, traffic, a feature, an opener…). These three timing values — which appear in many places across the app — control exactly how the voice sits on the bed. All are in seconds and may use decimals; some accept negative values.

ValueWhat it does
Cue-inThe entry point into the bed file. The bed is fast-forwarded by this many seconds, so the first Cue-in seconds of the file are skipped — handy to jump past the bed's own intro and land on the part that should sit under the voice. A value of 0 (or less) plays the bed from its very beginning.
Start nextHow long the bed plays alone before the next element (the voice) comes in. The voice is delayed by this amount, giving the bed an intro of Start next seconds; the total length becomes Start next + voice length. More generally it is the moment — measured from the start of the current element — at which the next element begins (and, together with Fade-out, where the current one starts fading).
Fade-outThe length of the fade at the end. The bed fades out over its last Fade-out seconds (the fade starts at total length − Fade-out), so it overlaps the tail of the voice and dies away smoothly.
Negative values (important): a negative Start next is measured from the END of the audio, not from the start. A positive value is "this many seconds after the start"; a negative value is "this many seconds before the end". Example: on a 30-second element, Start next = 25 and Start next = -5 both make the next element begin at the 25-second mark — but the negative form keeps working unchanged even if the audio's length varies, so the next element always comes in 5 seconds before the end (a constant 5-second overlap/crossfade). This is the easiest way to say "start the next item N seconds before this one ends" without knowing its exact length.
About the background programs: Behind the website runs a large collection of small helper programs (news collectors like GetWDRNews, weather/traffic fetchers, the MasterStreamer/RadioStreamer, AI producers such as CreateAIFeatures, CreateAIPodcasts, music importers, and so on). You never operate these directly — the switches and fields on the website tell them what to do. This manual mentions them only where it helps explain what a button actually triggers.
Basics

Getting started: register & log in

Registration (the public home page)

On the public site index.aspx the "Start your radio here" form creates your account and first station in a few minutes. You can refine everything later, so don't worry about getting every choice perfect now.

FieldWhat to enter
CompanyYour company or organisation name (the billing entity). Required.
Name of your radio stationThe on-air name of your first station, e.g. "The Rock Radio". Required.
Music GenreOne favourite genre to start with (drop-down). You add more, finer genres later. Required.
TimezoneThe time zone the station broadcasts in — controls when hourly content is produced. Required.
LanguageThe main language of the station (also the language news and presenters use). If yours is missing, e-mail support and they add it. Required.
World news at the beginning of each hourCheckbox — switch on to get an automatic world-news bulletin at the top of every hour.
Country weather after the newsCheckbox — adds a national weather forecast after the news (can be narrowed to a city/region later).
Actual traffic 25 km around your zip codeCheckbox — adds live traffic reports around your postcode (radius adjustable later).
First name / Last nameYour name as the account contact. Required.
Address line 1 / 2, City, ZipPostal address of the billing company.
CountryCountry of your station — used to check service availability. If missing, e-mail to request it. Required.
eMail / Confirm eMailYour login e-mail address, entered twice so typos are caught. Required and must match.
Password / Confirm passwordYour login password, entered twice. Required and must match.
I agree with your terms…Checkbox confirming the terms & conditions and privacy statement. Required to register.
Register (button)Creates the account. If something is missing, a pop-up lists exactly what to fix.

The same home page also contains an About, Workflow, Pricing, Who we are and Contact section (with a contact form: Your name, Your email, Subject, Message → Send message). These are informational and don't require an account.

Logging in

The login box sits at the bottom of the left sidebar on the public pages.

FieldWhat to enter
Your usernameThe e-mail address you registered with.
passwordYour account password (hidden as you type).
Login (button)Signs you in and opens the Overview dashboard.
forgot password?Starts the password-reset process by e-mail.
Not registered yet?Jumps to the registration form.
Session timeout: For security the session ends after a period of inactivity. If you see a "Session Timeout" message, simply log in again — your saved data is untouched.

After login the left sidebar shows the full menu. Items appear roughly in the order you'd set a station up: from Overview down through content, music, voices, billing and Logout. Some items (such as Test getdata) are only visible to administrator accounts. The chapters of this manual follow this same order.

Menu › Overview

Overview (dashboard)

The Overview is the first screen after login and a launch pad for the three things every station needs. It lists what you already have and gives an "Add…" link for each.

SectionWhat it shows / does
Your radio stationsEvery station on your account, each clickable to open its settings. Add radio station opens a blank station form (see Radio stations).
Your presenterYour on-air presenter personas. Add presenter opens the presenter editor (see Presenters).
Your AI machine modelsThe AI language models you've registered. Add AI machine model opens the model editor (see AI Models).
Suggested order for a new station: 1) add at least one AI model, 2) add a Voice and a Presenter, 3) open your Radio station settings, 4) set up Sources & Requests, 5) build a Program Schedule and place it on the Scheduler.
Menu › Overview › (a radio station) — page radio.aspx

Radio stations

This is the master settings page for one station. It is long because almost everything the station does — how it speaks, what news/weather/traffic it makes, how loud it is, how it advertises — is configured here. You reach it by clicking a station on the Overview, or via Add radio station. Settings are grouped between horizontal divider lines; each group is explained below. At the very bottom, Save changes stores everything and Delete radio station removes the station and all its data.

Identity

FieldMeaning
NameThe station's name, used on air and across the system.
CountryCountry the station operates in (drop-down). Affects available content/services. If missing, e-mail addcountry@radiobutler.com.
Standard languageDefault language for generated text and speech. Individual programs can override it.
TimezoneThe station's time zone — all "produce at hour X" timing is based on it.

DAB+ (digital radio broadcasting)

FieldMeaning
DAB+ IdYour station identifier on the DAB+ digital-radio platform (only if you broadcast via DAB+).
DAB+ TokenThe access token/key that authorises uploads to that DAB+ service.

Music & replay behaviour

FieldMeaning
Uses MusicBoxCheckbox. If ticked, the station's music is chosen by Music Boxes (rule-based pools). Unticking disables the three "Replay songs" fields below.
Music talk probability — After the songPercentage chance that, within a moderation, the presenter mentions the song that was just played. It does not decide whether there is a moderation — only whether the just-played track is referred to.
Music talk probability — Before the songPercentage chance that, within a moderation, the presenter announces/teases the song coming up next. Again, it only controls whether the upcoming track is mentioned, not whether a moderation happens.
Replay songs (Relevance > 70)Minimum hours before a highly-relevant/popular song may repeat.
Replay songs (Relevance > 50)Minimum hours before a medium-relevance song may repeat.
Replay songs (Relevance < 50)Minimum hours before a low-relevance song may repeat.
Min time between jinglesMinimum minutes that must pass before another jingle is allowed.

Incoming call auto-check

FieldMeaning
Autocheck incoming callsCheckbox. If on, AI automatically reviews phone-in calls for suitability before they can be broadcast.
Minimum messages in callA call must contain at least this many exchanged messages to count as usable.
Check call promptThe instruction given to the AI when judging a call. As the hint says: tell the AI to answer ONLY with a 0 if your "reject" criteria are found in the text.
Check call machine modelWhich registered AI model performs the call check.

Facebook auto-posting

Lets the station automatically publish posts (e.g. about what's playing or breaking news) to a Facebook page.

FieldMeaning
Facebook machine modelAI model that writes the Facebook posts.
Facebook PageIdThe numeric ID of your Facebook page.
Facebook AccessTokenThe access token that authorises posting to that page.
Default facebook promptStandard instruction telling the AI how to write each post.
Facebook Message FooterFixed text appended to every post (e.g. hashtags, station tagline).
Facebook Message Image UrlDefault image shown with posts.

Sum compressor (loudness processing on the final mix)

A dynamics compressor evens out volume so the station sounds consistent and "loud" like commercial radio. These are standard audio-engineering parameters.

FieldMeaning
Sum compressorCheckbox to switch the compressor on for the whole output.
Threshold (db)Level above which the compressor starts reducing volume.
Ratio 1:xHow strongly volume above the threshold is reduced (e.g. 1:4).
Attack (ms)How quickly it reacts when sound gets loud.
Release (ms)How quickly it stops compressing when sound gets quiet again.
MakeUp (db)Volume added back after compression to restore overall loudness.
Knee (db)How gradually compression eases in around the threshold (a "soft knee" sounds smoother).

News & weather (station defaults)

These defaults apply when a program doesn't specify its own news settings.

FieldMeaning
Radio wants news / weatherMaster switch: does this station produce news/weather at all.
Default news request 1/2/3 & countUp to three default news Requests and how many items to take from each.
Default news presenterWhich presenter reads the news by default.
News BedUpload a background-music file that plays under the news.
NewsBed StartNext (seconds)How many seconds into the bed the spoken news begins.
News SeperatorUpload a short audio sting played between individual news items.
News Seperator StartNext (seconds)Timing of the next item relative to the separator.
Default news promptStandard AI instruction for writing news bulletins.
Default news max tokensMaximum length (in AI "tokens") of a generated news text — a length/cost limit.
Default news temperatureAI "creativity" 0–1; lower = more factual/repeatable, higher = more varied wording.
Count news in programsHow many news items a normal program includes by default.
Min / Max words in newsAllowed word-count range per news item.

Opener (hourly intro)

FieldMeaning
OpenerUpload the opener background/jingle bed.
Opener Min Length (seconds)The minimum amount of the opener that must play before the next song starts. If the upcoming song has a very long intro ramp (Ramp1), the song would otherwise begin so early that the opener is barely heard — or skipped entirely. This minimum forces the opener to run at least this long first; the next song is then trimmed at the front so that its vocals begin right after the opener's spoken text. (Note: in the current build this safeguard is effectively driven by the opener's StartNext lead-in plus the song's Ramp1; the stored Min Length value may not be actively read.)
Opener StartNext (seconds)When the spoken opener starts over the bed.

Local news

FieldMeaning
Default local news presenterPresenter who reads local news.
Local News Bed / StartNextBackground audio for local news and when speech begins over it.
Default local news promptAI instruction for local-news writing.
Default news max tokens (local)Length limit for local-news texts.
Default local news temperatureAI creativity for local news.
Count local news in programsDefault number of local-news items per program.

Weather

FieldMeaning
Default weather presenterPresenter who reads the forecast.
Weather urlData source URL for weather information.
Weather location name / Weather zip codeThe place and postcode the forecast is about.
Weather Bed (Active + upload)Tick "Active" and upload background music for the weather segment.
Weather Bed StartNext (seconds)When speech starts over the weather bed.
Default weather promptAI instruction for the forecast wording.
Default weather max tokensLength limit for the forecast text.
Default weather temperatureAI creativity for weather.

Upload Weather to an FTP server (optional)

If you also publish the weather audio to your own server: Active switch plus Host, UserName, Password, RootPath (target folder) and Port.

Traffic

FieldMeaning
Traffic default AI ModelAI model that writes traffic reports.
Default traffic presenterPresenter who reads traffic.
Traffic Bed / StartNextBackground audio for traffic and when speech begins.
TomTom API Key / Here.com API KeyKeys for the live-traffic data providers (TomTom and/or HERE).
Radius center latitude / longitudeThe geographic centre point around which traffic is gathered.
Radius (km) / Radius max (km)Normal and maximum search radius around that centre.
Minimum delay (seconds)Only report congestion that causes at least this much delay.
Traffic default promptAI instruction for writing the traffic report.
No traffic found promptWhat the AI should say when there's nothing to report ("roads are clear").
Max trafficsMaximum number of incidents mentioned.
Traffic max tokens / temperatureLength limit and creativity for traffic text.
How to get trafficRead-only help describing the manual call/download URLs to trigger and fetch a traffic announcement on demand.

Feature length limits

FieldMeaning
Words in featuresTarget word count for feature segments.
Max source wordsHard cap on how much source text is fed to the AI (controls cost/length).

Advertising defaults

FieldMeaning
Ad seperatorUpload a sting played before/after the advertising block.
Ad positionWhere ads run: None, Just before news, or Just before local news.
Default spot times (Minutes)Used only when Ad position = None: the minutes-past-the-hour to play ads, separated by a pipe |.
Max spotsMaximum adverts per break.

Activation & saving

FieldMeaning
ActiveCheckbox — whether the station is live/producing. Untick to pause it.
Save changesStores all settings on this page.
Delete radio stationPermanently removes the station and its requests, presenters, songs etc.
No undo: Deleting a station erases all its data — requests, moderators, songs and more. A confirmation pop-up appears first; there is no way to recover afterwards.
Overview › Add presenter — page anchor.aspx

Presenters (Anchors / Moderators)

A presenter is the on-air personality that reads your content. Each presenter is bound to one text-to-speech Voice and carries its own name, character, greetings and audio processing, so different shows can sound like different people.

FieldMeaning
NameThe presenter's full name (used internally and possibly on air).
Nick nameShort/on-air name the presenter is referred to by.
RadioWhich station this presenter belongs to.
LanguageThe language this presenter speaks.
GenderThe presenter's voice gender (helps the AI write fitting wording).
VoiceThe text-to-speech Voice used to speak this presenter's lines.
Google voices onlyCheckbox to restrict the Voice picker to Google voices.
ElevenLabs VoiceAgent IDIf using an ElevenLabs conversational agent (e.g. for calls), its agent identifier.
Voice pitch / Voice speedFine-tune the pitch (higher/lower) and talking speed of the voice.
Character / DescriptionA free-text personality brief (e.g. "warm, witty, speaks casually") the AI uses to colour the presenter's style.
News HellosA set of opening greetings the presenter can use, so intros vary naturally.
Image / PictureA photo/avatar of the presenter (e.g. for the web player).
Test text + Test audioType a sample sentence and press Test to hear how this presenter/voice sounds.
ActiveWhether the presenter is available for use.

Audio processing (EQ / Compressor / Normalizer)

Optional per-presenter sound shaping so each voice sits well in the mix:

GroupFields & meaning
EQLoudness / Bass / Treble — basic tone controls for the voice.
CompressorAttack (ms) / Ratio (1:x) / Threshold (db) — evens out the voice's volume (same idea as the station sum compressor).
NormalizerBrings the voice to a consistent target level.
ButtonAction
Save changesStores the presenter.
Refresh / Refresh radio presenterReloads/re-syncs the presenter's data (e.g. after changing the linked voice/agent).
Delete radio presenterRemoves this presenter.
Menu › Voices — pages voices.aspx / voice.aspx

Voices

Voices lists every text-to-speech voice available to your account; clicking one opens its editor (voice.aspx). A voice is the raw "vocal cords" — a presenter then uses it. Voices come from a Provider (ElevenLabs or Google), and some fields only apply to one provider (the labels say so).

FieldMeaning
NameA label for this voice in your list.
First nameThe human first name associated with the voice.
DescriptionNotes about how the voice sounds (e.g. "deep male, calm").
GenderVoice gender.
LanguageLanguage the voice is intended for.
ProviderThe TTS service: ElevenLabs or Google.
Voice provided by / Voice char currencyAttribution and the currency used for this voice's character pricing.
External ID (ElevenLabs only)The voice's ID inside ElevenLabs.
Default API BearerThe API key/token used to call the provider for this voice.
Only for radioRestrict the voice to a specific station.
Picture path / Path sound exampleOptional image and a sample-audio file path to preview the voice.
Char net price / 1000 chars & currencyThe cost per 1000 characters spoken with this voice (drives your billing).
Stability (ElevenLabs only)How consistent vs. expressive the voice is (lower = more emotional variation).
Similarity boost (ElevenLabs only)How closely it sticks to the original voice's timbre.
Style (ElevenLabs only)Amount of stylistic exaggeration.
Speaker boost (ElevenLabs only)Enhances clarity/presence of the speaker.
Voice speed (ElevenLabs / Google)Talking speed (each provider has its own field).
Voice pitch (Google only)Raises/lowers the pitch for Google voices.
Save changes / Delete voiceStore or remove this voice.
A voice's price feeds the pay-as-you-go cost: each produced item is billed by characters spoken × this voice's price, on top of the content fee.
Menu › (Admin) / Overview › Add AI machine model — page aimodels.aspx

AI Models (machine models)

These are the Large Language Models that write your texts. You register each model once with its access key, then choose it wherever a screen asks for an "AI model" (news, features, traffic, calls, Facebook…).

FieldMeaning
Model nameA name you recognise (often the model's technical name, e.g. a GPT/Gemini/DeepSeek model).
API BearerThe secret API key ("bearer token") that authorises calls to this model.
System messageA base instruction sent with every request to this model (sets overall behaviour/tone).
Use streamingCheckbox — whether responses are streamed back token-by-token (technical option).
Save changes / Delete ai modelStore or remove the model.
Menu › Radio Player — page radioplayer.aspx

Radio Player

Creates a ready-made web player you can embed on your own website so visitors can listen and see what's playing. You style it here and copy the supplied HTML snippet.

FieldMeaning
RadioWhich station this player plays.
Title / Your radio nameThe name shown in the player.
Player languageLanguage of the player's interface texts.
Text ColorColour of the player's text.
Path main imageLink to the main logo/artwork.
Path FaviconLink to the small browser-tab icon.
No known song image (background) / Small no known song imagePlaceholder images shown when the current song has no artwork.
Footer text color / Footer background colorColours for the player's footer bar.
Footer HTMLCustom HTML for the footer area.
Imprint HTMLCustom HTML for legal/imprint text inside the player.
Show next programsWhether the player lists upcoming programs.
Player HTMLAdvanced: the player's own HTML body.
Radio Player URLThe direct link to the hosted player.
Example HTML to integrate…A copy-ready snippet to paste into your website.
Save changes / Delete radio playerStore or remove this player configuration.
Menu › Scheduler — page scheduler.aspx

Scheduler

The Scheduler is the weekly calendar of your station. It shows the seven days across the top and the 24 hours down the side, as a grid. Into each slot you place a Program Schedule (a reusable template), and RadioButler then automatically generates the actual hourly programs from those templates.

ElementMeaning
Customer / radio drop-downAt the top: pick which station's week you are looking at.
Week headerShows the week being displayed; navigation lets you move to other weeks.
Top row (days)The days of the week as columns.
Grid cells (hours × days)Each cell is one hour on one day. Assign a Program Schedule to fill that hour. Click a cell to edit/assign.
Think of the Scheduler as a TV guide you fill once. Because it uses templates, a single "weekday morning show" template can cover Mon–Fri 06:00–10:00 in one go.
Menu › Program templates — page programtemplates.aspx

Program templates

This screen lists your Program Schedules — the reusable templates that the Scheduler places into the week. From here you create a new template or open an existing one to edit it (which opens the Program Schedule detail page). A template defines the standard "shape" of an hour so you don't rebuild it every day.

ElementMeaning
List of templatesEach row is a Program Schedule; click to edit.
Add / NewCreates a fresh template.
Program templates › (a template) — page progschedule.aspx

Program Schedule (template detail)

This is where a recurring hour is defined in full. It has the same building blocks as a single Radio Program, but the values here are the standard/defaults used every time the template runs, plus the days and hours it applies to. Many fields are therefore prefixed "Standard" or "Default".

When programs are generated: every evening shortly before midnight, RadioButler automatically builds the actual hourly programs for the next two days from your Program Schedules — but only for hours that don't already have a program. So changes you make to a template take effect for days that haven't been generated yet; already-generated days keep their existing programs unless you edit them directly.

Identity & timing

FieldMeaning
NameTemplate name (e.g. "Weekday Morning Show").
RadioStation the template belongs to.
LanguageLanguage for this template's content.
DaysCheckboxes Mon–Sun: which weekdays the template runs on.
Start hour / End hourThe hour range each chosen day this template covers.
Repeat allowedWhether the same generated content may repeat across runs.
MusicBoxWhich Music Box supplies the music for these hours.
SourceDefault content source for the hour.

Presenters & AI requests

FieldMeaning
Standard presenter 1–4Up to four presenters who host these hours (the system will pair them).
Standard AI Request 1–5Up to five default content Requests fed into the hour (news/feature asks).

Standard news / local news / weather / traffic

For each of these four content types the template carries the same set of defaults (identical idea to the station defaults, but specific to this template):

Repeated field (per content type)Meaning
… presenterWho reads this content type.
… AI modelWhich AI writes it.
… promptThe writing instruction.
… countHow many items (news/local news).
… max tokensLength/cost limit of the text.
… temperatureAI creativity 0–1.
… greetingsIntro phrases for the segment (news/weather).

Traffic additionally has Default roads (which roads to watch) and Default max traffics (max incidents). Weather/traffic use their own Default … AI model and presenter as listed.

Opener, Outro & extras

FieldMeaning
Opener AI model / AI promptHow the hour's spoken intro is written.
Opener Bed / Min Length / StartNextThe intro's background audio, the minimum amount of the opener that must play before the next song starts (so a song with a long intro ramp can't push the opener aside — the song is then trimmed at the front so its vocals begin right after the opener text), and when the spoken opener starts over the bed.
Outro AI model / AI promptHow the hour's closing is written.
Include next hour info in OutroTease what's coming next hour at the end.
Include top feature in OpenerPromote the best feature at the start.
Default music expert AI model / presenter / song positionsThe "music expert" segment that talks about songs: which AI/presenter, and at which song positions it speaks.
Fun moderations AI model / AI prompt / Count fun moderationsLight-hearted presenter chatter: which AI writes it, the instruction, and how many per hour.
Moderation music only probabilityThe probability (%) that a moderation talks only about the music (the songs) instead of doing a news-/topic-based moderation. When it triggers, the presenter does a music-themed link rather than presenting news; there is still a moderation, just with different content.
Talk about music if no moderation is foundFallback to song talk when no other moderation applies.
Count features / Count wishes / Count allowed incoming callsHow many features, listener song-wishes and call-ins to include.
ButtonAction
Save changesStores the template.
CopyDuplicates the template as a starting point for a new one.
Delete radio programRemoves this template.
page radioprogram.aspx

Radio Program (single hour detail)

A Radio Program is one concrete hour on one concrete date — often generated automatically from a Program Schedule, but fully editable by hand. The fields mirror the template, minus the "Standard/Default" wording, because here they are the real values for this specific hour.

Identity & timing

FieldMeaning
NameName of this program.
DescriptionFree notes about the program.
DateThe calendar day it airs.
Start hour / End hourThe hour(s) it occupies that day.
RadioStation it belongs to.
LanguageLanguage for this program.
MusicBoxMusic pool used this hour.
SourceContent source for the hour (or "--- no source ---").

Presenters & AI requests

FieldMeaning
Presenter 1–4The presenters hosting this hour.
AI Request 1–5The content Requests that feed this hour.

News, Local news, Weather, Traffic

Each content type has its own block of fields. They behave exactly like the station/template versions:

Field (per type)Meaning
News presenter / News AI modelWho reads it and which AI writes it.
News promptWriting instruction for this hour's news.
News countHow many news items.
News max tokens / News temperatureLength limit and creativity.
News greetingsIntro phrases for the news.
News audio pathWhere the produced news audio file is stored (read/reference).
Local news … (same set)Same fields for the regional bulletin, incl. Local news count.
Weather presenter / AI model / prompt / max tokens / temperature / greetings / audio pathThe weather segment's full configuration.
Traffic AI Model / presenter / prompt / max tokens / temperatureThe traffic segment's configuration.
Roads / Max trafficsWhich roads to watch and the max number of incidents.
Traffic audio path / Weather audio pathStorage paths for the produced audio.

Opener, Outro, Music expert & moderation

FieldMeaning
Opener AI model / AI prompt / Bed / Min Length / StartNext / audio pathThe hour's spoken intro and its background audio settings.
Outro AI model / AI prompt / audio pathThe hour's closing segment.
Include next hour info in Outro / Include top feature in OpenerTease next hour / promote best feature.
Music expert AI model / presenter / song positions / audio pathSegment where the presenter discusses songs, and where in the hour it appears.
Fun moderations AI model / AI prompt / Count fun moderationsCasual presenter chatter configuration.
Moderation music only probabilityThe probability (%) that a moderation talks only about the music (the songs) instead of a news-/topic-based moderation. When it triggers, the presenter does a music-themed link rather than presenting news.
Talk about music if no moderation is foundFallback song talk.
Count features / Count listener wishes / Count allowed incoming calls / Count fun moderationsHow many of each element this hour includes.

Within the source/news editing area you may also see small helper buttons such as Title / Changed title (edit the headline), Summerize text (have the AI shorten a text) and Count wishes — these act on the individual item you're editing.

ButtonAction
Save changesStores this program.
Delete radio programRemoves this hour's program.
Menu › News — pages newslist.aspx / news.aspx / newsdetails.aspx

News

The News menu (page newslist.aspx, titled "Actual news") shows the current pool of finished news stories the system has gathered and written. Clicking a story opens it for viewing (newsdetails.aspx) or editing (news.aspx), where you can correct the headline or text before it airs.

Editing a single news item (news.aspx)

FieldMeaning
TitleThe original headline of the story.
Changed TitleYour edited headline; used on air instead of the original if filled.
Description / Changed descriptionThe story's summary and your edited version.
Details linkURL to the full original article.
Image linkURL of an image for the story.
Original textThe raw text as collected from the source.
RSS textThe text as it arrived from the RSS feed.
News textThe AI-rewritten, broadcast-ready news version (this is what gets spoken).
Feature textA longer "feature" rewrite of the same story, if produced.
Save changes / Delete newsStore your edits or remove the story.
You normally don't need to touch individual stories — the AI handles them. Edit here only to fix a name, correct a fact, or drop a story you don't want on air.
Menu › Requests — pages listrequests.aspx / newsrequest.aspx

Requests

A Request is a saved instruction that turns raw source material into finished content. It says which sources to read, what to look for (keywords/topics), and how the AI should write the result. The Requests menu lists them; clicking one opens the editor (newsrequest.aspx).

Basics

FieldMeaning
NameA label for the request (e.g. "World news", "Local Helgoland").
RadioStation this request belongs to.
Language / CountryTarget language and country for the produced content.
Request typeThe kind of content (e.g. news vs. feature/local) this request produces.
ActiveWhether the request is currently in use.

What to include / exclude

FieldMeaning
KeywordsWords/topics the story should be about — drives selection from the sources.
Ignore topicsTopics to filter out.
Check topicsTopics the AI should verify/confirm relevance against.
SourcesWhich Sources this request draws from.
Max age for news (hours)Ignore articles older than this many hours.
Broadcast again (hours)How long before the same story may be used again.
Fallback requestAnother request to fall back on if this one finds nothing.

How the AI writes it

FieldMeaning
Default AI ModelThe AI model used to write the result.
Result max wordsTarget maximum length of the finished item.
Combine results AI Model / Combine result prompt / max tokens / temperatureWhen several articles are merged into one item: which AI does it, the instruction, and its length/creativity limits.
Shorten text AI Model / Shorten text result prompt / Shorten results max tokens / temperatureFor trimming a long result down: the AI, instruction and limits.

Extras

FieldMeaning
Create imageAlso generate an image for the story.
Facebook Min RelevanceOnly auto-post to Facebook if the story's relevance score is at least this value.
Save changes / Delete requestStore or remove the request.
Menu › Sources — pages listnewssource.aspx / newssource.aspx

Sources

A Source is where raw information enters RadioButler: an RSS feed, a web page that is scraped, or an e-mail inbox. The Sources menu lists them; the editor (newssource.aspx) is detailed because it must teach the system how to read each particular feed and how to turn it into clean text. You can also test a source right here. There are several built-in sources (e.g. "News of the world", regional feeds); you can add nearly any source, and the team can build custom ones for a small fee.

Identity & fetching

FieldMeaning
NameInternal source name.
Non admin nameThe name normal (non-admin) users see.
TypeThe kind of source (RSS, web scrape, e-mail, …).
UrlThe web address of the feed/page.
ActiveWhether the source is in use.
Refresh rate (minutes)How often to re-fetch the source.
EncodingCharacter encoding of the source (e.g. UTF-8) so special characters read correctly.
eMail accountIf the source is an inbox: which e-mail account to read.
Delete after / before, Latest search start / end, Result expected in, Latest resultHousekeeping & status fields: time windows for searching and the last result/time observed.

Reading the feed (RSS/XML tag mapping)

RSS feeds wrap each article's parts in named "tags". These fields tell RadioButler which tag holds which part, so it can extract the right text.

FieldMeaning
SplitterThe marker/tag that separates one article from the next.
PubDate tagTag holding each article's publish date.
PubTitle tagTag holding the headline.
PubLink tagTag holding the link to the full article.
PubDescription tagTag holding the summary/description.
TextIn tagTag holding the main body text.
Other tags to copyAny extra tags to keep verbatim.
Get details directly / Use source 'as is'Whether to fetch the full article from its link, and whether to use the feed text unchanged.
Create own guidGenerate a unique ID per item when the feed lacks one.
Father (link) / Father (image)Parent/base references used to resolve relative links and images.
RSS File / RSS File PathIf the source is produced as an RSS file, its file and path.

Cleaning the text

FieldMeaning
Stop words (title) / (link) / (text) / (sentence)If these words appear in the respective place, the item (or sentence) is discarded — a filter against junk/ads.
Min paragraph count / Min word countReject items that are too short to be real articles.
Auto delete phrasesPhrases automatically stripped from the text (e.g. "Read more", cookie notices).
Text infront resultFixed text placed before the extracted content.

AI rewriting (headline / news / feature text)

A source can carry its own AI instructions for three outputs. Each has a model, prompt, token limit and temperature.

GroupFields
HeadlineHeadline AI Model, Headline prompt, Headline max tokens, Headline temperature, Headline change type (how aggressively to rewrite the title).
NewsNews AI Model, News prompt, News max tokens, News temperature — produces the spoken news version.
FeatureText AI Model, Text prompt, Text max tokens, Text temperature — produces a longer feature version.
DescriptionDescription AI Model plus the matching prompt/limits.
Auto promptsAuto headline / Auto text / Auto description prompt (+ their max-tokens) — used for fully automatic processing without manual review.
ButtonAction
Test GetDataRuns the source now and shows what it would fetch — invaluable when setting up tag mappings.
Save changesStores the source.
Delete all newsClears the stored articles collected from this source.
Delete sourceRemoves the source entirely.
Menu › Select news — page selectnews.aspx

Select news

This screen lets you hand-pick which available stories go into a program's news block, instead of letting the system choose automatically. You first choose the station (top drop-down); the page then shows the program and a list of available news with checkboxes.

ElementMeaning
Radio drop-downChoose which station you're selecting news for.
ProgramShows the program the selection applies to.
Available News (checkboxes)Tick the stories you want included.
Select for news (button)Confirms your ticked stories as the program's news.
Menu › Features — pages features.aspx / feature.aspx

Features

Features are longer, recurring AI-produced segments — stories, "this day in history", business round-ups, and so on. The Features menu (features.aspx) lists them in a table (Title, Status, Radio, Created); clicking one opens the editor (feature.aspx).

Header & AI

FieldMeaning
StatusRead-only production state of this feature (e.g. NEW → produced).
RadioStation the feature belongs to (changing it reloads matching options).
LanguageLanguage of the feature.
AI ModelThe AI model that writes the feature.
TitleThe feature's title (required).
InstructionThe main brief telling the AI what to produce.
History depthHow many previous editions the AI should "remember" to avoid repeating itself.

Content source

FieldMeaning
Story TextOptional fixed input text. If filled it is used directly; otherwise the top-rated news from the chosen request is used.
Don't reuse news for:Hours during which already-used news won't be reused (0 = always allow reuse).
News RequestWhich Request supplies the source news when no Story Text is given.
Count NewsHow many news items to draw in.

When it runs

FieldMeaning
Hours (+ Select all)Checkboxes 00–23: which hours of the day this feature is produced. "Select all" toggles them together.
Days (+ Select all)Checkboxes for weekdays it runs on.
Minute in hourAt which minute past the hour it is generated.

Shape & sound

FieldMeaning
Length (seconds) Min – MaxTarget duration range of the finished audio.
Words per segment Min – MaxHow long each spoken segment should be.
Sound effects (SFX)Checkbox to include sound effects.
SFX count Min – MaxHow many sound effects (leave empty to auto-calculate).
Intro (upload) + Timing (Cue-in / Start next / Fade-out)An intro music bed plus its three timing values — where to start in the bed file, how long it plays before the speech enters, and its fade-out length. See Bed timing for exactly how these work (negative values allowed).
Outro (upload)Closing music bed.
ElevenLabs API KeyOptional key just for this feature (empty = use system default).
PresenterCheckbox list of presenters. If none chosen, the AI auto-picks from the station's contributors.
ButtonAction
SaveStores the feature.
Reset to NEWSets the status back to NEW so it will be produced again.
DeleteRemoves the feature.
CancelLeaves without saving.

When editing an existing feature, a Quick Access URL and a Productions history (past generated episodes) may also appear below the buttons.

Menu › Blocks — pages block.aspx / blockdetails.aspx

Blocks

A Block is a piece of audio that must appear at a precise, fixed moment — for example a fixed insert tied to the news, a switch to an external live stream, or a station element that always plays at a certain second of the hour. The Blocks menu (block.aspx) lists existing blocks (Name, Language, Radio); clicking one opens the detail editor (blockdetails.aspx). A block is a container: it defines when (type, time, days/hours, validity) and holds one or more BlockItems — the actual audio pieces that play.

Block (the container)

FieldMeaning
BlocktypeWhat kind of block this is — it decides at which point in the hour the block is used. The live streamer regularly asks "is a block of this type due now?" and, if so, plays the block's items at the block's StartTime. Options:
  • News (NEWS) — a fixed element belonging to the main news slot (e.g. a news intro/time-signal that must sit exactly on the news).
  • LocalNews (LOCALNEWS) — the same, but for the regional/local news slot.
  • Additional news (ADDNEWS) — an extra news insert outside the normal news.
  • External Stream (STREAM) — at the block's time the station switches to an external live stream (e.g. to carry a relayed programme) instead of its own audio.
  • Moderation (MODERATION) — a fixed presenter/moderation insert at a precise time.
RadioButler also ships global default blocks (e.g. a default NEWS block per language/country) that apply when you haven't defined your own.
NameA name for the block.
LanguageLanguage the block applies to (lets one block target only one language).
CountryCountry the block applies to ("--- all ---" = every country).
RadioStation the block belongs to.
Valid from / Valid untilDate range during which the block is active (outside it the block is ignored).
StartTime (mm:ss)The exact minute:second within the hour the block should play, e.g. 00:00 for the very top of the hour.
Precision (seconds)The tolerance window around StartTime — how far before/after the exact second the block may still be slotted in (so it doesn't cut a song mid-word).
Hours (+ Select all)Checkboxes 00–23: which hours of the day the block runs in.
Days (+ Select all)Which weekdays the block runs on.
+ Add BlockItemAdds another audio item to this block; a complete item row is built dynamically on the page (see below).
Save BlockStores the block and all its items.
Delete Complete BlockRemoves the whole block including its items.

BlockItem (added dynamically with “+ Add BlockItem”)

Each click on + Add BlockItem inserts a fresh item row on the page. A block can hold several items; when the block is due, RadioButler picks an item to play (each item carries its own probability, validity and hour/day rules, so the same block can vary what it plays). Every item row contains:

FieldMeaning
NameA label for this item.
Order NoThe position/sequence of this item within the block.
ProbabilityThe chance (0–100%) that this item is the one chosen when the block fires — lets you rotate alternatives. Values are clamped to 0–100.
Use from / Use untilDate range in which this item may be used.
File typeWhere the audio comes from: Static file (STATIC, an uploaded file), Download file (URL, fetched from a download address), or Stream (STREAM, an external live stream). On an existing item this is locked.
File upload / Download URLThe actual audio: upload a file (for Static) or enter the address (for Download/Stream).
Cue InEntry point into the item's audio (skip the first N seconds). See Bed timing.
Start NextWhen the following element begins relative to this item (negative = measured from the end). See Bed timing.
Fade OutLength of the fade-out at the item's end.
Cue OutThe point at which the item is cut off (its effective end).
Hours / Days (+ Select all)Per-item restriction of the hours and weekdays this specific item may play (narrower than the block's own hours/days). If you are not using rotating BlockItems (i.e. this block has just one item, or all items should always be eligible), it makes sense to tick all checkboxes of the item via “Select all”.
Delete (item)Removes just this one item from the block.
Menu › Jingles — page jingles.aspx

Jingles

Jingles are short station idents (sung names, sound logos) inserted automatically between elements. The page lists your jingles (Name, Description, Path, Actions) and has an Add New Jingle form. How often jingles may play is also limited by "Min time between jingles" on the Radio station page.

FieldMeaning
Jingle NameA name for the jingle.
File PathThe audio file for the jingle.
Total durationThe jingle's length (seconds).
StartNextWhen the following element should begin relative to the jingle (lets the next audio start over the jingle's tail).
Hours 00–23 (checkboxes)Which hours this jingle is allowed in.
Days Mon–Sun (checkboxes)Which weekdays it is allowed on.
SaveAdds/updates the jingle.
Actions (in list)Per-row edit/delete controls for existing jingles.
Menu › Playlist — page songsplayed.aspx

Playlist (songs played)

This is the play log: every song the station has played, newest first, with a search box. From here you can also block a song or artist so it never plays again.

Column / controlMeaning
Search (Artist or song)Type to filter the log by artist or title, then press Search.
ProgramThe program during which the song played.
Artist / SongPerformer and title.
GenreThe song's genre.
Started / EndedTime the song started and finished.
TypeThe kind of entry (song, jingle, etc.).
Block songBan this exact song from future play.
Block artistBan everything by this artist.
Banned songs / artists (link)Opens the Banned songs list to review/undo bans.
Menu › Song upload — page songsupload.aspx

Song upload

Adds your own music to the library. You upload a ZIP archive of audio files; RadioButler extracts and catalogues them. Maximum size is 2 GB. Sub-folders inside the ZIP are fine, but do not put ZIP files inside the ZIP (nested archives won't work).

FieldMeaning
Sub-GenreChoose the sub-genre the uploaded songs belong to, so they're filed correctly.
File uploadSelect your .zip of songs.
Upload and extractUploads the archive and unpacks/catalogues the songs.
StatusShows progress and the result of the upload.
To protect the music archive, uploads are only enabled after some paperwork. If you don't see an upload button, contact support.
Menu › Music Boxes — pages musicbox.aspx / musicboxdetail.aspx

Music Boxes

A Music Box is a rule-based pool of songs. Instead of building fixed playlists, you describe the kind of music you want (genre, popularity, mood, tempo, language, complexity…) and the Music Box automatically selects matching songs. The menu (musicbox.aspx) lists your boxes (Name, Description, Age Groups, Radio); clicking one opens the detail editor (musicboxdetail.aspx).

Basics

FieldMeaning
RadioStation the box belongs to.
Name / DescriptionLabel and notes for the box.
Age groupsTarget listener age bands (5-15, 15-25, 25-35, 35-65, 65+) the music should suit.

Selection rules (relevance, popularity, complexity)

Every song carries three scores from 0 to 100:

  • Relevance — how significant the song is in the context of music history (its lasting importance), independent of how well-known it is.
  • Popularity — how popular the song actually became (in parts of the world).
  • Complexity — how musically complex/demanding the song is.

For each score you set a minimum (and, for popularity/complexity, a maximum) that a song must meet to enter the box. A minimum of 0 means "no minimum"; a maximum of 100 means "no maximum".

How "Allow less / more … for" works (important): these are percentages, not absolute amounts. The value is the share of song picks in which the corresponding limit is simply ignored, so the pool is temporarily widened. Example: with Minimum popularity = 60 and Allow less popularity for = 20, roughly 80% of the time only songs with popularity ≥ 60 are eligible, and in the other ~20% the popularity floor is dropped so less-popular songs can also be chosen. Set such a field to 100 to waive that limit every time, or 0 to enforce it strictly.
FieldMeaning
Minimum relevanceA song needs at least this music-history relevance score (0–100) to be included. 0 = don't filter by relevance.
Minimum / Maximum popularityThe allowed popularity band (0–100): a song's popularity must be ≥ minimum and ≤ maximum.
Minimum / Maximum complexityThe allowed complexity band (0–100): a song's complexity must be ≥ minimum and ≤ maximum.
Allow less relevance for% of picks in which the minimum relevance is ignored (lets in less historically relevant songs that often).
Allow less popularity for% of picks in which the minimum popularity is ignored (lets in less popular songs).
Allow more popularity for% of picks in which the maximum popularity is ignored (lets in more popular songs than the cap).
Allow less complexity for% of picks in which the minimum complexity is ignored (lets in simpler songs).
Allow more complexity for% of picks in which the maximum complexity is ignored (lets in more complex songs than the cap).
Allow RemixesIf off, remix versions are excluded; if on, they may be selected.
Take unknownIf on, songs that have no rating yet (relevance/popularity/complexity of 0 or unknown speed) are still allowed in, instead of being filtered out.

Tempo & language mix

FieldMeaning
Slow / Medium / Fast / Very fast songsThe desired share of each tempo band in the rotation.
Songs Language (several rows)The desired percentage mix of song languages. The remainder up to 100% is shared by all languages; using more than 100% total can cause unexpected behaviour.

Character lists

Using the + / buttons you build lists that further shape the box:

ListMeaning
Song speedsSpecific tempo characteristics to include.
Song moodsDesired moods (happy, melancholic, energetic…).
Lyric themesSubject matter of the lyrics.
Energy LevelsDesired energy of the tracks.
GenresThe genres/sub-genres the box draws from.
ButtonAction
Speichern (Save)Stores the Music Box.
Löschen (Delete)Removes the box.
Abbrechen (Cancel)Leaves without saving.
Some buttons on this screen are labelled in German (Speichern = Save, Löschen = Delete, Abbrechen = Cancel) in the current build.
Menu › MusicBox Analysis — pages musicboxdetails.aspx / musicboxsongs.aspx

MusicBox Analysis

This report shows how many songs each Music Box actually yields as its rules get progressively relaxed — so you can see whether a box is too strict (too few songs) or too loose. Pick a station first; if none is chosen you'll see "Please select a radio to see its MusicBoxes."

ColumnMeaning
MusicBoxThe box being analysed.
GenresGenres the box uses.
Pool (genre)How many songs exist in those genres at all.
After hard filtersSongs remaining after the strict, non-negotiable rules.
Strict (~85% case)Typical pool size under normal strict matching.
+ Relax relevance / popularity / complexityHow the pool grows as each constraint is loosened.
Universe (max.)The absolute maximum number of candidate songs.
Played 90d / Plays 90dHow many of the box's songs were played in the last 90 days, and the total number of plays.
RatingAn overall health rating for the box.

Songs in a box (musicboxsongs.aspx)

Lists the individual Artist / Song entries a box currently contains, each with Block song / Block artist controls and a link to the banned list.

Playlist › Banned songs / artists — page bannedsongs.aspx

Banned songs & artists

The list of everything you've blocked. It has two tables — banned songs and banned artists — and lets you lift a ban.

ColumnMeaning
Artist (/ Song)The banned artist, or artist + title for a banned song.
bannedWhen the ban was set.
Remove banUn-blocks the song/artist so it can play again.

If nothing is blocked you'll see "No banned songs found." / "No banned artists found."

Menu › Streaming — pages streaming.aspx / streamingdetail.aspx

Streaming

This is where the finished live audio is sent out to one or more streaming providers (servers that listeners or platforms connect to, such as Icecast or a DAB+ feed). The menu (streaming.aspx, "Streaming Providers") lists configured outputs (Active, Name, URL, Radio, Type); clicking one opens the detail editor.

FieldMeaning
RadioWhich station's audio this output carries.
NameA label for this streaming output.
Radio Program onThe program/source feeding this stream.
TypeThe streaming server type (e.g. Icecast).
Hostname or IPAddress of the streaming server.
PortNetwork port the server listens on.
MountpointThe path on the server this stream is published at (e.g. /live).
Username / PasswordCredentials to push audio to the server.
CodecAudio format used (e.g. MP3, AAC).
BitrateStreaming quality in kbps (higher = better quality, more bandwidth).
Metadata FormatHow "now playing" info is sent to the server.
Stream Name / Stream DescriptionPublic title and description shown in directories/players.
Public Stream URLThe address listeners use.
GenreGenre tag advertised for the stream.
Is activeWhether this output is currently streaming.
Save / Delete / CancelStore, remove, or discard changes.
Behind the scenes the MasterStreamer / RadioStreamer background programs read these settings and push the audio to the server. You configure them here — you never run them yourself.
Menu › Podcasts — pages listpodcast.aspx / podcast.aspx

Podcasts

RadioButler can also produce podcast episodes automatically from your news/requests. The menu lists your podcasts; clicking one opens its editor.

FieldMeaning
Name / DescriptionTitle and description of the podcast.
RadioStation the podcast belongs to.
DaysWeekdays a new episode is produced.
Create timeThe time of day the episode is generated.
Podcast AI modelAI model that writes the episode script.
Podcast RequestWhich Request supplies the content.
Count newsHow many news items to include.
News max tokensLength limit per news text.
Podcast promptThe writing instruction for the episode.
Podcast temperatureAI creativity 0–1.
Presenter 1 / Presenter 2The voice(s) hosting the podcast (two enable a dialogue).
Podcast Intro (and bed)Opening audio/music bed.
Podcast OutroClosing audio.
Speech start (seconds)When speaking begins over the intro bed.
Save changes / Delete podcastStore or remove the podcast.
Menu › eMail accounts — pages EMailList.aspx / emailaccount.aspx

eMail accounts

An e-mail account lets RadioButler receive information by e-mail and turn it into on-air content — for example breaking-news alerts or listener submissions sent to a dedicated mailbox. The menu lists your accounts; the editor configures one inbox and how incoming mail is processed.

Mailbox connection

FieldMeaning
Your Name of the EMail AccountA label you recognise this account by.
RadioStation this mailbox feeds.
ActiveWhether the account is being checked.
HostnameThe incoming mail server (IMAP host).
PortMail server port.
UserName / PasswordMailbox login credentials.
Use SSLConnect securely (encrypted).
CheckInterval (seconds)How often to check for new mail.
Allow EMail AddressesA sender whitelist — only mail from matching senders is processed. Enter a comma-separated list (case-insensitive). Matching is by substring, not wildcards: * does not work. You may enter full addresses (news@example.com) or a domain part (@example.com allows the whole domain). An empty field blocks everything (nothing is processed). To allow all senders, enter a fragment every address contains, e.g. @.

Processing incoming mail into content

FieldMeaning
Source / RequestThe Source and Request used to turn the e-mail into a news item.
SpeakerWhich presenter reads the resulting content.
AI machine modelAI model used to rewrite the e-mail.
PromptInstruction telling the AI how to convert the mail.
Max tokens / TemperatureLength limit and creativity for the rewrite.
Breakingnews bedBackground audio used when the item airs as breaking news.
StartnextWhen speech starts over that bed.
Save changes / Delete eMailAccountStore or remove the account.
Menu › Calls — page calls.aspx

Calls

Incoming calls lists recent listener phone-ins handled by ElevenLabs AI voice agents. Click a date to see a summary and full transcript of the call. You review them here and decide which may be broadcast. (Whether calls are auto-checked first is set on the Radio station page.)

ColumnMeaning
DateWhen the call happened (click to open the summary/transcript).
RadioStation that received the call.
SpeakerThe presenter/agent that handled it.
DurationLength of the call.
MessagesNumber of message exchanges in the call.
Song requestedAny song the caller asked for.
Original audioThe raw recording.
Edited audioThe cleaned/trimmed version for air.
BroadcastedWhether it has been aired.
CheckedWhether it has been reviewed/approved.
Löschen (Delete)Removes the call record.

If there are none you'll see "No calls".

Menu › Campaigns — pages listcampaigns.aspx / campaign.aspx / spot.aspx

Campaigns (advertising)

Advertising is organised as Campaigns, each containing one or more Spots (the individual adverts). A campaign defines when and how often its spots run; the station's Ad position / Max spots settings decide where in the hour they land. The menu lists campaigns; clicking one opens the campaign editor.

Campaign editor (campaign.aspx)

FieldMeaning
Campaign nameA label for the campaign.
Play from / Play untilThe start and end dates the campaign is live.
WeightPriority/frequency of this campaign relative to others (higher = plays more often).
Hours (00h–23h checkboxes)Which hours of the day the spots may run.
Days (Mon–Sun checkboxes)Which weekdays the spots may run.
Add spotAdds a new advert to the campaign (opens the spot editor).
Save changes / Delete campaignStore or remove the campaign.

Spot editor (spot.aspx)

FieldMeaning
Spot nameName of the individual advert.
Spot descriptionNotes about the advert (and where its audio is managed).
Save changes / Delete spotStore or remove the spot.
Menu › Account — pages account.aspx / transaction.aspx

Account & balance

Your Account page shows your prepaid credit and the history of what you've spent and topped up. RadioButler is pay-as-you-go: each produced item is deducted from this balance.

ElementMeaning
Actual balanceYour current remaining credit.
TransactionsA list of all movements — top-ups (e.g. via PayPal) and charges for produced content. Click one to open its detail (transaction.aspx).
You load credit (any amount) onto the account, typically via PayPal, and start ordering content immediately. Costs are deducted automatically per item as described in the introduction.
page customer.aspx

Customer profile

Your own account/company details — the billing contact behind the login. Reached from account-related links.

FieldMeaning
Company name / NameYour company/organisation name.
First name / Last nameThe contact person's name.
Address line 1 / Address line 2Street address.
City / Zip / CountryTown, postcode and country.
eMailYour login/contact e-mail address.
Reset passwordChange your account password.
Save changesStores your profile.
Delete your accountCloses your account.
Deleting your account is permanent. It removes your login and associated data — a confirmation is required first.
Menu › (Admin) Test getdata, etc.

Admin & test tools

Administrator accounts see a few extra items used for setup and troubleshooting. Normal users can ignore this chapter.

ToolPurpose
Test getdata (testrequestsource.aspx)Runs a source/request on demand and shows the raw data it returns — used to verify a Source is configured correctly. The Get data button triggers the fetch.
AI test dialog (dialog.aspx)A scratch page to try a single AI prompt: pick an AI Model, type a Prompt and some Raw information, and see the result. Handy for tuning prompts before saving them on a real screen.
Test music expert (testmusicexpert.aspx)Tries the "music expert" song-talk generation in isolation.
Internal helper pagesSeveral non-menu URLs exist for the system itself (e.g. runscheduler, getstreamurl, stopstream, streamisactive, checkCall, listenerinfos). These are called automatically by the background programs, not used by hand.
Reference

Background programs (overview only)

RadioButler's website is the control panel; the actual work is done by a large set of small background programs running on the server. You never start or operate these directly — the switches and fields on the website tell them what to do. They are listed here only so you understand what a button on a page actually sets in motion. (Per your request, these are mentioned, not individually documented.)

CategoryExamples & what they do (triggered by website settings)
News collectorsDozens of fetchers such as GetAINews, GetWDRNews, GetSpiegelOnline, GetIcelandNews, GetBusinessNews, GetGamingNews, regional and Schlager feeds, etc. They read the Sources and Requests you define.
Weather & trafficCreateAIWeather, GetCountryWeather, GetTomTomTraffic, GetBingTraffic, GetTraffic — fed by the weather/traffic fields on the Radio station page.
AI content producersCreateAIFeatures, CreateAIAudioNews, CreateAILocalNews, CreateAIPodcasts, DayInRockHistory, GetHoroscope — produce the Features, news and Podcasts you configure.
StreamingMasterStreamer, RadioStreamer, SingleRadioStreamer, Stream2IceCast, CheckAndRestartIceCastAndMasterStreamer — send the live audio to the Streaming providers and keep them running.
Music managementGetAndCopyMusic, InsertMusicFromExternSource, HandleUnhandledSongs, CheckForMissingSongs, DeleteDuplicates, PlayListCreator, MusicExpert — build and maintain the library and Music Boxes.
Voice / speech & callsSpeechMaster, Text2Speech, ElevenLabs, GetElevenLabsConversations — turn text into audio and fetch call transcripts.
E-mail, listeners & billingReadEMails/EMailCollector (feed eMail accounts), GetActualListeners/ListenerInfos (audience stats), Invoicer (billing), BuildProgramFromSchedule (turns your templates into hourly programs).
There are also numerous …Test… projects (e.g. RadioStreamerTest2…11). These are developer experiments and have no role in day-to-day operation.
Music Archive — separate web application

Music Archive — overview

The RadioButler Music Archive is a separate web application (titled "RadioButler music archive") used to curate the central music library: the artists, the songs and all the metadata that the main RadioButler uses to choose music. It is where songs get their genres, moods, energy and other tags — exactly the properties the Music Boxes later filter on. You log in with your account; some actions (e.g. seeing every radio's genres) are reserved for administrators.

Area (top menu)Purpose
Search (Home)Find artists and songs, merge duplicates, and open a song or artist to edit it.
GenresManage Genres and Sub-Genres and the links between them (the heart of how music is organised).
Login / LogoutSign in to your archive account; sign out.
How the Archive connects to your station: Songs are uploaded in the main app (Song upload) under a Sub-Genre. In the Archive those Sub-Genres are bundled into Genres. Your Music Boxes select by Genre, which expands to its Sub-Genres, which resolve to the actual songs. So the Archive's Genre/Sub-Genre structure directly decides what a Music Box can play.
Music Archive › Genres

Genres & Sub-Genres

This is the most important screen in the Archive. RadioButler organises music on two levels, and this page manages both and the link between them.

LevelWhat it is
GenreA broad, top-level category (e.g. "Rock", "Schlager", "Christmas"). This is the level your Music Boxes choose from. A Genre can be global ("All radios") or tied to one station.
Sub-GenreA fine-grained tag (internally an "ArtistSongGenre", often a Spotify-style genre such as "german pop punk"). Songs are tagged with Sub-Genres, not directly with Genres.

The connection: a Genre is essentially a bundle of Sub-Genres (stored as "GenreSpotifyGenre" links). When a Music Box asks for a Genre, RadioButler expands it to all its mapped Sub-Genres, and from those to the songs carrying those Sub-Genre tags. Mapping the right Sub-Genres into a Genre is therefore what decides which songs a Genre — and any Music Box using it — can play.

Top of the page — choose / add / edit a Genre

ControlMeaning
Genre drop-downPick the Genre you want to work on. Radio-specific genres show as "Name (RadioName)". Selecting one ticks the Sub-Genres currently mapped to it (see below).
+ (Add)Opens the Genre dialog to create a new Genre.
EditOpens the same dialog for the selected Genre.
Genre dialog — Genre NameThe Genre's name.
Genre dialog — RadioTie it to one station, or "--- All radios ---" for a global genre.
Genre dialog — Save / DeleteStore the genre, or delete it. Deleting a Genre also removes all its Sub-Genre links (the songs and Sub-Genres themselves stay).

Add Sub-Genre

Creates a new Sub-Genre. Besides its name, a Sub-Genre can carry a seasonal window — outside that date range songs of this Sub-Genre are not played (this is what powers, e.g., Christmas music only appearing in December; it matches the seasonal rule the song selector applies).

FieldMeaning
Sub-Genre NameThe name of the new Sub-Genre (required).
Allow Day from / MonthStart of the seasonal window (day and month) in which this Sub-Genre may be used.
Allow Until Day / MonthEnd of the seasonal window. Leave the window empty for an all-year Sub-Genre.
AddCreates the Sub-Genre.

Sub-Genres list & mapping

All Sub-Genres are listed as checkboxes. This is where you connect Sub-Genres to the Genre chosen at the top.

ElementMeaning
Checkbox per Sub-GenreTick the Sub-Genres that should belong to the selected Genre.
Bold nameA Sub-Genre shown in bold is not yet mapped to any Genre — a quick way to spot orphaned Sub-Genres that no Genre (and therefore no Music Box) can reach.
Sub-Genre name (link)Opens the list of songs in that Sub-Genre (see below).
SaveStores the ticked Sub-Genres as the mapping for the selected Genre.

Songs in a Sub-Genre / rename / delete / combine

Clicking a Sub-Genre opens its song list, where you can also rename or delete it. A separate "Combine" screen lets you merge Sub-Genres.

ActionMeaning
Songs listEvery song currently tagged with this Sub-Genre.
Update Sub-Genre (name)Rename the Sub-Genre.
Delete Sub-GenreRemoves the Sub-Genre.
Combine Sub-GenreMerge this Sub-Genre into one or more selected other Sub-Genres — used to clean up near-duplicate Spotify genres so songs end up under a single, meaningful Sub-Genre.
Music Archive › Song details

Song details

The full record of one song. Many of these fields are the very properties Music Boxes filter on, so accurate tagging here directly improves music selection. The page also shows play history, recommendations and chart positions.

Field / areaMeaning
Play on Radio StationPick one of your stations to (test-)play or add the song there.
Main LanguageThe song's language (used by Music Box language-mix rules).
Song description / Song informationFree-text notes and gathered information about the song.
Popular for age groupsWhich listener age bands the song suits (5-15, 15-25, 25-35, 35-65, 65+) — matches the Music Box age groups.
Song moodsCheckboxes such as Happy/Joyful, Relaxed/Chill, Nostalgic, Epic/Dramatic, Sad/Melancholy, Romantic/Passionate, Hopeful/Optimistic, Energetic/Pumped-up, Angry/Aggressive, Mysterious/Eerie. These feed the Music Box "Song moods" list.
Lyric themesCheckboxes such as Love & Romance, Party & Celebration, Nature, Empowerment, Conflict & War, Everyday Life, Heartbreak, Social/Politics, Storytelling, Loss & Grief, Fantasy, Spirituality, Friendship, Protest, Self-Reflection, Hope, Travel, Instrumentals. Feeds the Music Box "Lyric themes".
Energy LevelsLow / Medium / High — feeds the Music Box "Energy Levels".
Genres (checkboxes)The Genre(s) this song belongs to (via its Sub-Genres). Connects the song to Genres & Sub-Genres.
Useful as Opener?Whether the song works as a show opener.
Cue In / Cue Out / Fade In / Fade Out / Ramp1The song's playout timing points — where it effectively starts/ends and how it fades. These are the same values the streamer uses for smooth transitions (see Bed timing). Ramp1 is the song's intro length, used to overlap a presenter opener with the song's instrumental intro.
Spotify audio featuresImported analysis such as tempo, danceability, energy, valence, loudness, etc. (read-mostly) that inform tagging.
RecommendationsRelated songs; you can add or delete recommendations.
Chart positionsThe song's chart history per country.
Played infosWhere/when the song has been played.
AnecdotesBackground stories about the song/artist (per language) the presenter can use on air.
Add to playlist / Update songAdd the song to a station's playlist, or save your changes.
Music Archive › Artist details

Artist details

The record of one artist: their information, their songs, and "anecdotes" the presenter can tell on air.

Field / areaMeaning
Artist informationEditable details/biography of the artist (Update Artist saves changes).
SongsAll songs by this artist, each linking to its Song details.
AnecdotesShort background stories about the artist, each with a Language and optionally tied to a specific Song. You can Add, Edit and Delete anecdotes. The presenter can weave these into music moderations.