BS Net Trading AI Agent Services
| Title | Artist | Weight | Change |
|---|---|---|---|
| Loading tracks... | |||
No script generated yet
Generate script first
This block applies to every script generated on Impact Digital Radio.
Auto-assembled from each presenter's profile.
Add up to 10 messages. Each fades in for 20 seconds on the homepage widget. Choose a colour per message.
Authorised staff only. Enter your staff password to continue.
Select a show and click Load Tracks
Scripts appear here once generated
auto-scripts/ folder. The state file is cleared so Liquidsoap picks them up immediately.
Register new advertising clients and view all signed agreements.
| # | Date | Business | Contact | Package | Total | Payment | Status | |
|---|---|---|---|---|---|---|---|---|
| Loading⦠| ||||||||
| # | Date | Business | Slots Booked | Weeks | Discount | Total | Payment | Status | |
|---|---|---|---|---|---|---|---|---|---|
| Loading⦠| |||||||||
Manage advertiser spots, track campaign performance, and view proof-of-play reports.
Edit the rules for each advertising package. Changes take effect immediately.
Branded VAT invoices for advertisers β draft, review, send, and track payment.
Advertising outreach: a list of local businesses, campaigns built from Comms Centre templates, batched sending (one email per business), and tracking from email to booking.
UK PECR: companies (Ltd, PLC, LLP, public bodies) can be emailed if every email identifies us and offers an opt-out. Sole traders and partnerships need recorded consent first. Businesses with no type set are never sent to.
Generic = the one shared demo commercial (no cost). Personalised = scraped, scripted and voiced for that business.
For each ticked business: if it already has a produced commercial, that's its demo (green straight away). Generic businesses get the shared demo straight away. Personalised: the website is scraped for email, phone and social links, then a script is written from what's known, cleaned for V4 and voiced on V4 (06:00β18:00 only, within the daily demo limit in Settings). With a campaign chosen, each business is emailed as soon as it turns green.
| Advert | Business | Contact | Email Β· Phone Β· Website | Town | Type | Status | Sent | ||
|---|---|---|---|---|---|---|---|---|---|
| Loading⦠| |||||||||
Words are matched to the official SIC 2007 sector codes. Untick any that don't fit.
Searches the company name instead of, or as well as, the sector.
Active companies only. The location is each company's registered office, which for small firms is often their accountant's address rather than where they trade. A town search matches the word anywhere in the address, so "Paisley" also brings in Paisley Road West (Glasgow) and Paisley Road (Renfrew); each result shows its own town and distance. Tick Only companies actually in this town for a tight local search (own town and postcode within the miles given). Region searches match the words in the address. Sole traders and ordinary partnerships aren't on the Companies House register.
| Campaign | Template | Status | Queued | Sent | Opened | Clicked | |
|---|---|---|---|---|---|---|---|
| Loading⦠| |||||||
| Campaign | Status | Queued | Sent | Failed |
|---|
Opened = the tracking pixel loaded. It's unreliable: Apple Mail loads it for everyone, and many business mail systems block images, so treat it as a rough signal. Clicked, page viewed and booked are reliable.
| Business | Batch | Email status | Sent | Opened | Clicked | Page viewed | Booked |
|---|
While sending is OFF, queued emails wait; nothing goes out. Switching it on starts the scheduler (it checks every minute).
Emails are sent from the station's IONOS mailbox (william@impactdigitalradio.com); the from name and reply-to are set here.
IONOS allows up to 500 emails an hour from this mailbox, shared with all other station email. Keep Marketing well below that.
Each demo advert is one script (OpenRouter) and one V4 voicing (ElevenLabs credits). 0 per day pauses voicing.
One lookup per company found, about US$0.035 each after Google's first 1,000 a month (free). 900 keeps you inside the free allowance; 0 stops lookups.
One shared demo that "generic" businesses hear on their welcome page instead of a personalised advert. It's voiced once on V4 (one paid voicing) and then costs nothing per business. Their page labels it "Hear an example commercial" ("not one made for <business>"), never "your commercial". It's also what any page with no advert of its own plays.
| Business | Reason | Note | Added |
|---|
First row = headings. Recognised: name (required), contact, email, town, notes, type (company / Ltd / sole trader / partnership / other), consent (yes/no). Emails already in the list are skipped. Each business gets its own random link token.
Manage email templates, compose AI-assisted campaigns, maintain your contact list, and review sent emails.
| Name | Category | Subject | Created | Actions |
|---|---|---|---|---|
| Loading⦠| ||||
Template
| Name | Based On | Saved | Actions |
|---|---|---|---|
| Loading⦠| |||
| Name | Group | Notes | Actions | |
|---|---|---|---|---|
| Loading⦠| ||||
| Date/Time | Template | Subject | Recipients | Groups | |
|---|---|---|---|---|---|
| Loading⦠| |||||
Post to Facebook, Instagram, X and LinkedIn β compose, schedule and track.
Only connected platforms will accept posts. Disconnected platforms will fail.
Loadingβ¦
Loadingβ¦
Flag something newsworthy (new show, DAB+ milestone, award, press mention) so tomorrow's auto-post can reference it. The AI writer only uses facts entered here β nothing is invented.
| Date / Time | Platform | Status | Content | Link |
|---|---|---|---|---|
| Loading⦠| ||||
developers.facebook.com β My Apps β Create App (Business type)pages_manage_posts, pages_read_engagementGET /oauth/access_token?grant_type=fb_exchange_token&β¦GET /me?fields=idβ οΈ Instagram posts require an image or video URL. Text-only posts are not supported by the API. Images are converted to JPEG and fitted to Instagram's 4:5β1.91:1 shape automatically. Videos post as Reels (3 sβ15 min): converted for Instagram and fitted to 9:16 if needed, then Instagram takes about a minute to process them before they go live.
GET /{page-id}?fields=instagram_business_accountdeveloper.twitter.com β Developer Portal β Projects & AppsAPI Key and API Key Secretdeveloper.linkedin.com β My Apps β Create Appw_member_socialGET https://api.linkedin.com/v2/me β use the id fieldβ οΈ TikTok posts go out through Buffer, not TikTok's own API. Every TikTok post needs an image; text-only posts aren't supported. Images are converted to JPEG automatically.
publish.buffer.com/settings/api and create a personal API keyBuffer API limits on this account: 100 requests per 15 minutes, 500 per 24 hours, 10,000 per 30 days. Each TikTok post uses 1 request (plus 1 for its status check); Load channels uses 2. Captions are cut to 2,200 characters and at most 5 hashtags. Images: JPEG, up to 1080Γ1920, 20 MB.
Real-time contextual scripts generated from live weather, On This Day, and local event data.
Configure when and how often the Live Context Engine generates scripts.
Fetching recent engine runsβ¦
Editorial brief engine β generates fresh, live, context-aware talking points for each opted-in show's next presenter section, so listeners hear something new instead of the same auto-script pool repeating. Phase 1 (guidance-only): briefs are for review here only β nothing is auto-published to air.
Station-wide tone guidance applied to every brief Producer generates.
Responsibility type: editorial_brief. A show with no assignment is completely untouched by Producer (zero behaviour change). Lookback controls how far back Producer looks for recent tracks/content/requests to avoid repeating; max/hour caps brief generation cost per show. β οΈ Auto-Clear runs the full pipeline (brief β script β audio β live) with no human click β only selectable once Enabled is on. Session cap hard-limits how many scripts can be generated per show per scheduled instance (resets when the show next airs) β applies whether or not Auto-Clear is on.
Last 20 briefs across all shows, newest first, with the full state snapshot Producer was given when it generated each one.
Scripts generated from a brief via "π Generate Script" above. Text only until approved β no audio is generated and nothing reaches Content Review until you click Approve. Rejecting discards the text with no cost incurred.
| Show | Presenter | Voice | Enable | Joins Override | Outros Override | Interval Override (days) | Last Refreshed | Tracks Used | Run |
|---|---|---|---|---|---|---|---|---|---|
| Loading⦠| |||||||||
Last 50 segments β auto-refreshes every 10 seconds. Music tracks cannot be deleted.
Broadcast live to Impact Digital Radio from any location using your own software.
Enter these details into your streaming software. All connections must use MP3 format at 128 kbps or higher.
Use any Icecast-compatible broadcasting software. Enter the credentials above exactly as shown. All three apps below are free or offer free tiers.
Icecast | Server: radio.impactdigitalradio.com | Port: 8010/remotedjMP3 β Bitrate: 128 or higherIcecast2 | Host: radio.impactdigitalradio.com | Port: 8010/remotedj | Login: source | Password: [your source password]MP3 β Bitrate: 128 kbps or higherIcecast 2 | Server IP: radio.impactdigitalradio.com | Port: 8010/remotedjMP3 β Bitrate: 128 kbps or higher/remotedj.Staged files awaiting human approval. Pass moves the file to the live rotation. Fail deletes it permanently. On first load, orphaned files are detected and moved into staging automatically.
Editorial local-flavour features for Glasgow, Paisley, and Greenock & Port Glasgow β bars, restaurants, theatres and local businesses. No advertiser relationship, entirely separate from Promos and the Commercial Ad System. Own approval queue below, not mixed into Content Review.
| Presenter | Town | Status | Filename | Actions |
|---|---|---|---|---|
| Loading⦠| ||||
| Presenter | Town | Status | Plays | Last Played | Plays Until Retirement |
|---|---|---|---|---|---|
| Loading⦠| |||||
discover/archive/ and stop being picked β they are not deleted.Browse every audio file tied to a presenter/show (Auto Scripts, Phone Caller Joins, Track Joins) β or toggle "Other" for content with no presenter/show (Promos, Idents, Commercials). Delete is immediate, no confirmation, same as Bulk Scripts / Phone Callers / Content Review.
| Time | Listener | Request | Source | Sanitisation | Status | Actions |
|---|---|---|---|---|---|---|
| Loading⦠| ||||||
phone-callers/ staged for review/publish. Phone Request Join saves straight to the selected show's track-joins/ folder, live immediately β same as existing track-joins.