Как заставить Windows озвучивать время

Почему это полезно
Если вы легко теряете счёт времени за компьютером или хотите слышать отметки каждого часа (для фокусировки, поминутной работы или доступности), озвучивание времени — простое и надёжное решение. Windows не имеет встроенной функции «спикать время» по расписанию, но её легко добавить с помощью маленького скрипта и Планировщика заданий.
Что понадобится
- Блокнот или любой текстовый редактор
- Учётная запись пользователя с правом создавать задачи (обычно обычный пользователь достаточно)
- Планировщик заданий Windows (Task Scheduler)
Как это сделать — пошагово
1. Создайте VBS‑файл со скриптом
- Откройте Блокнот (Notepad) или другой текстовый редактор.
- Вставьте один из готовых скриптов ниже. Приведены два варианта: оригинальный (англ.) и локализованный пример на русском.
Вариант A — оригинальный (англ.)
Dim speaks, speech
hour_now = Hour(Time)
If hour_now > 12 Or hour_now = 12 Then
hour12 = hour_now - 12
ampm = "PM"
Else
hour12 = hour_now
hourfinal = hour_now
ampm = "AM"
End If
If hour12 = 10 Then
hourfinal = "Ten"
ElseIf hour12 = 11 Then
hourfinal = "Eleven"
ElseIf hour12 = 12 Then
hourfinal = "Twelve"
ElseIf hour12 = 0 Then
hourfinal = "Twelve"
ElseIf hour12 > 0 And hour12 < 10 Then
hourfinal = hour12
End If
speaks = "It is " & hourfinal & " o clock " & ampm
Set speech = CreateObject("sapi.spvoice")
speech.Speak speaksВариант B — локализованный (русский, простой числовой вывод)
Dim speaks, speech
hour_now = Hour(Time)
hourfinal = hour_now
If hour_now = 0 Then
hourfinal = 12
End If
speaks = "Сейчас " & hourfinal & " часов"
Set speech = CreateObject("SAPI.SpVoice")
speech.Speak speaksПримечание: оба скрипта используют SAPI (Windows Speech API). Русская версия даёт числовой вывод (например, «Сейчас 13 часов»). Для грамматически корректных форм («час», «часа», «часов») или чтения прописью потребуется расширить скрипт (см. раздел «Альтернативные подходы»).
- Сохраните файл в удобном месте. Имя можно выбрать любое, например TimeAnnounce.vbs — важно, чтобы расширение было .vbs.
2. Создайте задачу в Планировщике заданий
- Откройте меню «Пуск» и введите «Планировщик заданий» (Task Scheduler), затем запустите приложение.
- В меню выберите Action > Create Task.
- На вкладке “Общие” укажите имя задачи, например: Announce Time или Озвучивать время.
- Переключитесь на вкладку “Триггеры” и нажмите «Создать» (New).
- В поле “Начать” (Start) выберите сегодняшнюю дату и время начала — ближайший верхний час. Например, если сейчас 10:37, укажите 11:00:00.
- Убедитесь, что установлен тип “One time” (один раз). Затем включите опцию “Repeat task every” и выберите “1 hour”. В поле “for a duration of” выберите “Indefinitely” (бессрочно). Нажмите ОК.
- Перейдите на вкладку “Действия” (Actions) и нажмите «Создать» (New). В поле Program/script укажите wscript.exe, а в поле “Add arguments (optional)” пропишите полный путь к вашему .vbs файлу в кавычках, например:
“C:\Users\Ivan\Scripts\TimeAnnounce.vbs”
(Можно также выбрать Browse и указать сам .vbs-файл — тогда Planer сам заполнит wscript.)
- Проверьте настройки условий и параметров на вкладках “Условия” и “Параметры”: по желанию снимите галочку “Start the task only if the computer is on AC power” для ноутбуков или оставьте по умолчанию.
- Нажмите ОК, задача создана. В назначенное время вы услышите голосную подсказку.
Важно
- Звук и голос зависят от настроек синтеза речи Windows и установленного языка голоса.
- Если задача не срабатывает, проверьте права пользователя и включён ли компьютер (не в гибернации).
Альтернативные подходы и улучшения
- PowerShell: можно использовать PowerShell с System.Speech.Synthesis для лучшего управления локалью и формой вывода (например, склонение числительных). Это даёт гибкость, но требует немного больше кода.
- Сторонние приложения: утилиты для трекинга времени или расширения для автоматизации (AutoHotkey, Tasker‑подобные) позволяют гибче настраивать объявления и интеграцию с напоминаниями.
- Использовать напоминания/будильники в календаре, если нужна только периодическая звуковая метка.
- Для грамотного произнесения время прописью добавьте в скрипт функцию преобразования числа в русские слова и логику склонений: 1 час, 2–4 часа, 5–20 часов и т.д.
Критерии приёмки
- Голос произносит время ровно на начале часа.
- Задание видимо в Планировщике и включено.
- Скрипт запускается без ошибок (проверьте вручную двойным кликом).
Чеклист для ролей
- Для пользователя (non-admin):
- Создал .vbs файл и сохранил в доступной папке
- Настроил триггер в Планировщике и проверил запуск вручную
- Для администратора/ИТ:
- Разместил скрипт в общей папке и указал корректные права
- Если нужно — настроил политику запуска задач для пользователей
Когда это не подойдёт (контрпримеры)
- Если ваша среда требует строгой тишины или есть политика безопасности, запрещающая запуск скриптов — этот метод не применим.
- На устройствах без синтеза речи (или без нужных голосов) результат будет неудовлетворительным.
Краткий анонс для публикации
Настройте озвучивание времени в Windows за пару минут: создайте VBS‑скрипт и задачу в Планировщике, и система будет объявлять время каждый час. Поддерживаются английская и русская версии скрипта.
Итог
Создать автоматическое озвучивание времени в Windows просто: готовый VBS‑файл + задача в Планировщике. Для продвинутой локализации (склонения, пропись чисел, разметка «утро/вечер») используйте PowerShell или расширьте VBS‑логику.
Примечания
- Если нужны примеры для PowerShell или реализация склонений числительных, напишите, и я подготовлю готовые скрипты.
- Проверьте громкость и профиль голоса в “Параметрах” → “Синтез речи” Windows.
Похожие материалы
Конвертация Google Docs в Word и обратно
Исправление ошибки A breakpoint has been reached
Копирование и вставка в терминале Linux
USB‑диск не монтируется в Windows
Как посмотреть заблокированные контакты на Android