4.0.0 update notes
Yeonhong and Yeonha have been updated to 4.0.0. If you've been using Yeonhong and Yeonha, start with this page. It walks you through what changed, how to do the things you used to do, what's new, what's been fixed, and what's good to set up after the update. If you can't find a command you used to use, look up its new place in Before and after.
At a glance
- There are now 6 bots, and they work together. When you use
/join, a free bot joins. - You use commands in Yeonhong only. Yeonha's commands are going away.
- You change server settings on the dashboard. The
/server …,/membership …and/dashboardcommands are going away. Only/server translatestays, as/translate. - The settings Yeonhong and Yeonha kept separately are merged into one, so every bot uses the same settings.
- There are now permission levels: Admin, Manager, User and Guest. You can choose which levels can use each command.
- 'Server language' becomes 'Main language', and you can set a language for each channel. There's also a new 'Translate' option that shows a message in your language.
- You can use all 6 bots without a membership. A server membership lets everyone on that server use Plus voices on all 6 bots.
- Replies only you can see appear in your Discord language, and posts in a channel appear in the channel language.
- When Yeonhong is newly invited to a server, it asks for the main language, and
/setupwalks you through the basic settings. The server owner gets one welcome DM.
What changes on its own on update day
You don't need to do anything. It's just good to know what's different.
Bots
| What | What changes |
|---|---|
| Number of bots | Four new helper bots (Yeonha 2 to Yeonha 5) join Yeonhong and Yeonha, for 6 in total. From 4.0.0, the bot you've known as Yeonha is called 'Yeonha 1' (a nickname you gave it yourself stays). The new bots only join after you invite them to your server. |
| Calling a bot | When you use Yeonhong's /join, a free bot joins your voice channel. If Yeonhong is busy, Yeonha 1 comes. If Yeonha 1 is busy too, the next bot comes. |
| Yeonha | Yeonha's commands are going away. Yeonha joins when Yeonhong sends it. |
| Same chat | Only one bot reads each message. Two bots won't read the same message over each other. |
| Who's on what | When a bot joins, it posts in chat which voice channel it's covering and which chat it reads. |
Merging settings
The server settings and personal settings Yeonhong and Yeonha kept separately are merged into one. After that, every bot uses the same settings.
- If both Yeonhong and Yeonha had a value set, the Yeonhong value is used.
- Values set only in Yeonha are carried over as they are.
- For lists, like roles to read or the soundboard, Yeonha's list is brought over only if Yeonhong's list is empty.
- Channels to read and voice channels to join: if your server gave Yeonha a different list from Yeonhong, Yeonha 1 keeps using that list. You can see it under 'Channels to read, per bot' and 'Voice channels, per bot' on the dashboard.
- Other settings can't be different for each bot. For example, you can't have only Yeonha read with a different server default voice.
- What you can set per bot is the voice server, plus channels to read and voice channels to join.
WARNING
If your server set up Yeonha differently from Yeonhong, please check the server settings on the dashboard once after the update. Values that overlap are matched to Yeonhong.
Commands
| Old command | 4.0.0 |
|---|---|
All /server … commands | Going away. Use the dashboard's server settings instead. Only /server translate stays, as /translate. |
All /membership … commands | Going away. Use the dashboard's Membership page instead. |
/dashboard | Becomes /settings. It shows [Server settings] and [My settings] links. |
/user settings | Nickname, pitch, speed and Natural Voice stay the same. Choosing a voice moves to the dashboard. |
/join, /leave, /skip, /info | Work the same. You use them in Yeonhong only. |
The new commands are /setup, /bots, /relay, /voice-server and /translate (the old /server translate), plus 'Translate' in the message menu. See Before and after below for where you use them.
Membership
- You can use all 6 bots without a membership.
- The 'Yeonhong + Yeonha' server membership is renamed Server Membership and now lets everyone on that server use Plus voices on all 6 bots.
- The 'Yeonhong only' server membership is renamed Server Membership (Lite). It still applies to Yeonhong only; when another bot reads, it uses the default voice.
- Personal memberships and credits stay the same. Whichever bot reads, it uses the same credits.
- You check, apply and redeem memberships and manage custom voices on the dashboard's Membership page.
What stays the same
- The voice list, custom voices you made, and the time left on your membership and your credits
- The nickname, voice, pitch and speed you chose (merged using the Yeonhong values)
- The dashboard address (https://tts.yeonhong.studio)
- Yeonhee, the music bot, isn't affected by this update.
The message asking you to pick a language and the welcome DM to the server owner only go to servers that newly add Yeonhong. Servers already using it won't get them.
Before and after
Calling and removing bots
| What you want to do | Before (3.x) | Now (4.0.0) |
|---|---|---|
| Call a bot | /join in Yeonhong or Yeonha | Yeonhong's /join — a free bot joins |
| Call a bot to another voice channel too | Call the other bot (Yeonha) separately | Use /join once more in that voice channel — another free bot comes |
| Remove a bot | That bot's /leave | Yeonhong's /leave — the bot in your voice channel leaves |
| Skip the sentence being read | That bot's /skip | Yeonhong's /skip |
| When every bot is busy | — | In the notice, bring a bot over from another channel with [Move] (Manager or higher), or invite a bot with [Add another bot] |
| See which bot is reading where | — | /bots |
| Add more bots to the server | An invite link for each bot | [Add] in /bots, or [Invite] on the dashboard's Bots tab |
| Pass a message to another voice channel | — | /relay |
Server settings
| What you want to do | Before (3.x) | Now (4.0.0) |
|---|---|---|
| Open server settings | The /server settings menu | /settings → [Server settings], or the dashboard's server settings |
| Get the dashboard link | /dashboard | /settings |
| First-time setup | One by one in /server settings | /setup (8 steps), or the dashboard's Setup assistant |
| Turn features on and off | The /server settings menu | The dashboard's server settings tabs — Reading, Join & alerts, Voices, Language, Words & sounds |
| Add or remove people not to read | /server blacklist add·remove·list | 'People not to read' on the Reading tab |
| Add or remove soundboard sounds | /server soundboard_add·soundboard_remove·soundboard_list | 'Sounds' on the Words & sounds tab |
| Translate when reading | /server translate | /translate, or 'Translate when reading' on the Language tab |
| Let other people change translation | 'Translate' in /server permission | Choose which levels can use /translate on the Permissions tab |
| Set the main language | /server lang_sync | 'Main language' on the Language tab, or the language step in /setup |
| Match bot names to the language | /server name_sync | Nothing extra to do — when you pick a main language, the bot names change with it |
| Hand some features to other people | /server permission | Permissions tab — add managers and choose which levels can use each command |
| See or change the voice server | /server node_status·node_change | /voice-server, or the dashboard's Bots tab |
| Set up only Yeonha differently | Separately in Yeonha | Only channels to read and voice channels to join can be set per bot (Reading tab, Join & alerts tab). Every bot uses the same settings for everything else |
| Get notices in a different language in each channel | — | 'Set a language for each channel' on the Language tab |
| Find permissions a bot is missing | — | [Check permissions] on the Bots tab |
| See why a message wasn't read | — | 'Reading issues' on the Bots tab |
My settings, voices and membership
| What you want to do | Before (3.x) | Now (4.0.0) |
|---|---|---|
| Change my voice | [Change Voice] in /user settings | The dashboard's Voices page — it opens when you press [Change voice] in /user settings |
| Change nickname, pitch or speed | /user settings | /user settings as before, or the dashboard's User settings |
| Check or apply a membership | /membership status·/membership manage | The dashboard's Membership page |
| Redeem a membership code | /membership redeem | 'Membership code' on the dashboard's Membership page |
| Make or choose a custom voice | /membership customvoice add·set | 'My custom voices' on the dashboard's Membership page |
| See a message translated into my language | — | Message menu → Apps → 'Translate' |
Good to do after the update
- Check the main language — Set it on the dashboard's Language tab or in the language step of
/setup. Notices posted in channels and bot names use this language. - Check the merged settings — If your server set up Yeonha separately, please look through the server settings on the dashboard once. Channels to read and voice channels to join that you set separately for Yeonha are under 'Channels to read, per bot' and 'Voice channels, per bot'.
- Add more bots — To use bots in several voice channels at the same time, invite them with [Add] in
/bots. - Check bot permissions — Newly added bots also need permission to read the right chats and join voice channels. [Check permissions] on the dashboard's Bots tab tells you what's missing.
- Set permission levels — Add the people who'll remove or move bots in other channels as managers. The starting levels are in the table below.
- Check the message length limit — It starts at 200 characters. To limit by reading time instead, choose Reading time (5–30 seconds) under 'Message length limit' on the Reading tab.
- Tell your members — Let them know Yeonha's commands are gone and they now call bots with Yeonhong's
/joinalone.
Starting permission levels
The server owner and people with Discord's "Administrator" permission are always Admins. There are no Managers at the start.
| Command or feature | Starting level |
|---|---|
/join, /leave and /skip in your own voice channel, /settings, /bots, /info, /user settings | User |
Removing or skipping bots in other voice channels, moving bots when all are busy, /relay, /voice-server | Manager |
/setup, the dashboard's server settings | Admin (can be lowered to Manager) |
/translate | Admin (User on servers that delegated 'Translate' before) |
| Changing permissions | Admin (can't be changed) |
Settings with a new name or a new way of working
Searching the dashboard sidebar for the old name usually finds them too.
| Old | 4.0.0 | Where it is (dashboard server settings) |
|---|---|---|
| Server language | Main language | Language tab |
| Auto-Join | Auto-join | Join & alerts tab |
| Join Alert · Leave Alert | Join alert · Leave alert | Join & alerts tab |
| Read Outside Users | Read outside the voice channel | Reading tab |
| File Info | Attachment notice | Reading tab |
| Read Forwards · Read Replies | Forward notice · Reply notice | Reading tab |
| Lock Nickname | Lock nicknames | Reading tab |
| Blacklist | People not to read | Reading tab |
| Max Length | Message length limit (characters or reading time) | Reading tab |
| Force Voice | Lock voice | Voices tab |
| Volume | Volume | Voices tab, 'Bot sound' |
| Real-time Translation | Translate when reading | Language tab |
| Word Replacement · Korean Dictionary | Abbreviation reading · Built-in abbreviations | Words & sounds tab |
| Word Replacement Rules | Word Replacement | Words & sounds tab |
| Anti-Spam · Spam Limit | Reduce spam · Spam threshold | Words & sounds tab |
Handing over 'Translate' or 'Voice server change' in /server permission | Levels that can use each command | Permissions tab |
- Message length limit: Choose either a number of characters (10–200, 200 at first) or how long a message takes to read (5–30 seconds) to decide what's too long. If your server set a max length before, it carries over as the character limit.
- Main language: If your server set a server language before, that language becomes the main language.
- Delegating translation: If your server handed over 'Translate' in
/server permissionbefore,/translatecan be used from User up until you set it yourself.
What's new
Commands
/relay— reads a message in another voice channel./bots— see where our bots are reading, and add more bots./voice-server— see the voice server a bot uses, and move it to another voice server./setup— choose the basic settings for this server, one step at a time./settings— opens the dashboard's server settings and your settings directly.- Translate — right-click a message and pick it from 'Apps'. It translates that message into your language and shows it only to you.
- If a bot comes right back through auto-join after
/leave, it briefly tells you in chat that auto-join can be turned off.
Reading features (turn them on in the dashboard)
- Read site titles — when someone sends a link, the bot reads the page title, like 'sent a ○○ link'.
- Read spoilers — when off, the bot reads everything except the hidden parts.
- Screen share notices · Camera notices — the bot tells you when someone turns screen sharing or their camera on or off.
- Bot join notices · Bot leave notices — the bot tells you when another bot joins or leaves the voice channel.
- Delete read messages — deletes messages 5, 30 or 60 seconds after they've been read.
- Leave when quiet — if there's nothing to read for 10, 30 or 60 minutes, the bot says so and leaves.
- Message length limit — besides the character count (200 at first), you can decide what counts as too long by how long it takes to read (5 to 30 seconds).
Dashboard
- Server settings are split into seven tabs (Reading / Join & alerts / Voices / Language / Words & sounds / Permissions / Bots).
- You can now also change the server's speed, pitch and volume, roles to read, translation, and your own 'Natural voice' in the dashboard.
- In the Bots tab, you can check each bot for missing permissions and see reading issues along with the bot's name.
- The Setup assistant walks you through the basic settings in the same order as
/setup. - You can set channels to read and voice channels to join for each bot. At first, every bot uses the same lists.
- In Copy from another server, you pick what to copy: server settings, Soundboard, Word Replacement, bots to read and people not to read, and the level needed for each command.
- User settings now have a 'Translation language' for Translate.
- It's easier to use on a phone, with a tab bar at the bottom.
- Clicking a dashboard link attached to a command takes you straight to that tab and that setting.
Language
- 'Server language' has been renamed 'Main language'. When you choose a main language, the names of all our bots in this server switch to that language.
- On the dashboard's Language tab, you can set a separate language for each channel. In that channel, the bot's messages appear in that language.
- Replies, buttons and windows only you can see appear in your Discord language, and posts everyone in a channel can see appear in the channel language.
- Announcements attached on
/joinalso appear in the channel language. - The first language question is posted only in servers where Yeonhong is newly invited. Servers that already had Yeonhong set the main language on the Language tab.
- The 'Translate when reading' setting now stays as it is after the bot restarts.
Custom voices
- Your uploaded recording is checked first, and only the processing it needs is applied.
- The old 'improve audio quality' option has been removed.
- While the voice is being made, the dashboard shows the steps, the check results and alerts (such as another person's voice being mixed in).
- See Custom voices for details.
How reading has changed
Cleaning up text
- Markdown symbols for bold, italics, headings, quotes and lists are left out when reading.
- Discord timestamps are read like '5 hours from now'.
- When you mention a command, the bot reads the command name instead of numbers.
- When text is linked, no brackets are left over.
- Long code blocks are read as 'sent some code'.
Reading numbers (Korean text)
These rules apply only to Korean text. The bot now reads numbers in Korean messages more naturally, picking the native Korean or Sino-Korean reading that fits the word after the number.
| Written | Now read as |
|---|---|
| 6개월 | 육개월 (before: 여섯개월) |
| 2개국 | 이개국 |
| 6월 · 10월 | 유월 · 시월 |
| 1만원 · 1천원 | 만원 · 천원 |
| 101명 | 백한명 |
| 1번째 | 첫번째 |
| 1째 · 2째 | 첫째 · 둘째 |
| 20대 | 이십대 |
| 3~5개 | 세개에서 다섯개 |
- Units such as km, kg, ml, GB and ℃, and currency symbols such as ₩, $, ¥ and €, are read in Korean.
- Mobile phone numbers written without hyphens are read one digit at a time.
- Text written only in English is read the same way as before.
Fixes
- Fixed an issue where there was no sound for a while after the bot joined. Sentences you didn't hear during that time don't use credits.
- Fixed an issue where buttons and messages appeared in Korean even after the main language was changed to English.
- Fixed an issue where the bot's name didn't change when English was chosen.
- Fixed an issue where other bots' names stayed the same after the language was changed.
- Fixed an issue where large numbers were cut short by Reduce spam (10000000원 was read as 100000원).
- Fixed an issue where Discord timestamps and command mentions were read as numbers.
- Fixed an issue where one rule in the built-in abbreviations was wrong and stopped messages from being read.
- Fixed an issue where 'Translate when reading' turned off when the bot restarted.
- Fixed an issue where channels chosen in the dashboard weren't saved properly.
- Fixed an issue where a bot seemed to join a private voice channel it couldn't get into, but never read. It now tells you which permissions to turn on.
- Fixed an issue where a bot stayed in a voice channel after restarting but didn't read.
Related pages
- Using Yeonhong
- All commands
- Several bots, one team
- Server settings in the dashboard
- Language tab
- How the bot reads text
Have a question?
Please ask in our official Discord server.