лучший голосовой движок 2021

Когда не хочется читать: программы для чтения текста голосом в 2021 году

Чтение книг, в виде текста с бумажных страниц или экрана не всегда удобно. Глаза могут быть уставшими после длительной работы за компьютером или яркого освещения. В таких случаях помогают программы для чтения текста голосом. Наименее продвинутые приложения озвучивают книги не очень приятно, но с развитием появляется все больше голосовых движков с естественным звуком. Они могут также помочь, когда не хочется читать или есть другие важные занятия – книга может быть сопровождающим фоном. Некоторые студенты даже приспосабливают озвучивающие программы для зачитывания лекций.

Распространенные голосовые движки и их важность

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Чтобы текстовое приложение с функцией синтеза речи могло озвучить книгу нужно предварительно установить на устройство голосовой движок. Такое дополняющее программное обеспечение выпускают с мужским, женским или детским голосом. В зависимости от набора словарей озвучивание возможно на разных языках. Из стандартов по программной основе выделяют 3 распространенных голосовых движка:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Сразу, после установки такого ПО на компьютер, никаких изменений заметно не будет, без приложений с поддержкой голосовых движков они бесполезны. В SAPI, есть стандартная читалка, но она не удобна в использовании.

Приложения для чтения книг голосом

Чтобы выбрать лучшую программу для озвучивания текста, нужно перебрать разные варианты читалок. Каждая из этих программ получила свою аудиторию – кому-то нравится оформление, а другим универсальность и малое потребление ресурсов ПК. Прежде чем скачивать и ставить приложение на свой компьютер рекомендуют предварительно просмотреть подробную информацию по наиболее популярным.

Acapela

Речевой синтезатор, который может воспроизводить голосом текст из файлов разного формата. Пакет насчитывает больше 30 языков, среди которых присутствует и русский. Программу Acapela можно купить у разработчика – ее распространяют только на коммерческой основе. Для озвучивания книги на русском языке, пользователь может выбрать один из 2 предустановленных вариантов – устаревший мужской голос «Николай» и обновленный женский «Алена». Программу выпускают под управлением таких систем:

Такое широкое распространение позволяет использовать Acapela любому пользователю. Сама программа не занимает много места на устройстве и устанавливается очень быстро. Для предварительной оценки, пользователи могут включить онлайн-версию приложения. Но, количество текста ограничено 300 знаками, поэтому включить книгу не получится, только краткий отрывок для проверки качества озвучки.

Ivona Reader

Программа для озвучивания текстов под управлением Windows, с реалистичным звучанием. Основной голос, который можно поставить на это приложение – «Татьяна». Может зачитывать текстовые файлы в любом формате, в том числе интернет страницы и RSS ленты. Разработчики также включили возможность преобразования текста в аудио-файл MP3 формата, поэтому книгу можно записать и сбросить на смартфон.

ICE Book Reader Professional

Программа, которая знакома пользователям компьютеров Windows уже давно. Она поддерживает большую часть текстовых форматов и проста в управлении. Для использования функции чтения и преобразования текста в аудиозапись, обязательно установить какой-либо голосовой движок. ICE Book Reader – относят к категории приложений с лицензией Freeware – ее можно получить бесплатно и пользоваться всеми функциями.

ToM Reader

Эта программа для компьютеров под управлением операционных систем Windows – аналог ICE Book Reader. Работает сходным образом – открывает книги в разных текстовых форматах и может озвучивать только после установки одного из голосовых движков. Для улучшения качеств воспроизведения есть возможность добавлять словари, по которым ориентируется синтезатор.

Программы, которые способны озвучивать текст голосом, становятся распространенней – при активном ритме жизни, не у каждого человека найдется время на чтение обычного буквенного формата. Но, в таких ситуациях можно не только скачивать заготовленные аудиокниги – установив читающую программу и голосовой движок, такой файл можно подготовить самостоятельно или озвучить интересующую информацию в потоковом режиме. Современное ПО синтеза речи, по звучанию приближено к реальному голосу.

Источник

Мы Опубликовали Качественный, Простой, Доступный и Быстрый Синтез Речи

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Вокруг темы синтеза речи сейчас много движения: на рынке есть огромное число тулкитов для синтеза, большое число закрытых коммерческих решений за АПИ (как на современных технологиях, так и на более старых, т.е. «говорилки») от условных GAFA компаний, большое количество американских стартапов, пытающихся сделать очередные аудио дипфейки (voice transfer).

Но мы не видели открытых решений, которые бы удовлетворяли одновременно следующим критериям:

Мы попытались учесть все эти пункты и представить комьюнити свое открытое некоммерческое решение, удовлетворяющее этим критериям. По причине его публичности мы не заостряем внимание на архитектуре и не фокусируемся на каких-то cherry picked примерах — вы можете оценить все сами, пройдя по ссылке.

Краткий Обзор Решений

Данная статья не ставит своей целью глубокий технический обзор всех доступных решений. Мы хотим просто обрисовать некий ландшафт из доступных вариантов с минимальной степенью готовности. Понятно, что мы не рассматриваем многочисленные тулкиты, а смотрим в первую очередь какие есть более-менее готовые решения с ненулевой библиотекой голосов и подобием поддержки / комьюнити:

Конкатенативные модели (появившиеся до DL бума). Из того, что хоть как-то поддерживается и живо и можно запустить «as-is» без археологических раскопок, я нашел только rhvoice (я глубоко не копал, но есть целые форумы, посвященные использованию голосов из Windows, но вряд ли это можно назвать поддерживаемым решением). На момент, когда я пользовался проектом ради интереса, он по сути был заброшен, но потом у него появился новый «хозяин». К плюсам такого рода решений можно отнести их скорость и нетребовательность к ресурсам (исключая ресурсы, чтобы заставить это работать). Очевидный и основной минус — звучит как говорилка. Менее очевидный минус — довольно тяжело оценить стоимость обладания. Качество звучания: 3+ по пятибалльной шкале;

Tacotron2 + WaveNet (оригинальный WaveNet принимал на вход лингвофичи, но для такотрона поменяли на более удобные мелспектрограммы). Основная проблема — очень медленный инференс ввиду авторегрессионности модели и необходимость запретительно большого количества ресурсов и времени. Качество звучания: 4+;

Tacotron2 + WaveRNN (тоже с переходом от лингвофичей к спектрограммам). Вокодер заметно быстрее предыдущего: при использовании всех хаков можно получить даже риалтайм синтез без GPU, правда естественность звука несколько просядет. Качество звучания: 3.5-4;

Tacotron2 + Parallel WaveNet. Упомянутый выше медленный вокодер был использован в качестве учителя для получения новой довольно быстрой параллельной модели вокодера: с ней стал возможен синтез быстрее риалтайма, но все еще на мощных GPU. Из недостатков — дистилляция требует качественную учительскую модель и соответствующую схему обучения. Качество звучания: 4+;

Tacotron2 + multi-band WaveRNN. Тоже развитие предыдущих идей, тоже распараллеливание в некотором смысле — здесь доступен синтез быстрее риалтайма уже на CPU. Однако, не слишком популярная работа, меньше имплементаций и поддержки, хотя некоторые подходы хороши и были успешно использованы в более поздних моделях; Качество звучания: 3.5-4+;

Tacotron2 + LPCNet. Интересная идея про сочетание DL и классических алгоритмов, что может дать буст по скорости до подходящего для продакшена уровня и на CPU, но требует вдумчивого допиливания для качественных результатов. Качество звучания: 3.5-4+;

Многочисленные решения на базе Tacotron2 + Waveglow от Nvidia как нынешний стандарт для задачи синтеза речи. Никто не пишет про свой «секретный соус» (например как 15.ai делает голос по 15 минутам и сколько там моделей в цепочке). Есть много имплементаций и репозиториев, которые «копируют» чужой код. Может звучать на cherry-picked примерах неотличимо от живых людей, но когда смотришь реальные модели от комьюнити, качество заметно варьируется, а детали улучшенных решений не раскрываются. Архитектурно к такотрону и его аналогам по скорости и цене обладания претензий нет, но Waveglow очень прожорлив к ресурсам как на тренировке, так и в продакшене, что делает его использование по сути нецелесообразным. Качество звучания: 3.5-4+;

Замена Tacotron2 => FastSpeech / FastSpeech 2 / FastPitch, то есть уход к более простой сетке (на базе forced-align от такотрона и миллион более хитрых и сложных вариантов). Из полезного дает контроль темпа речи и высоты голоса, что неплохо, вообще упрощает и делает более модульной конечную архитектуру. Немаловажно, что сетка перестает быть рекуррентной, что открывает просторы для оптимизаций по скорости. Качество звучания: 3.5-4+;

Оценки Качества и Примеры Аудио

Чтобы не вдаваться в дебри, мы поступили максимально просто: синтезировали аудио из валидационной выборки датасетов (

200 файлов на спикера), смешали с оригинальными аудио этой же выборки и дали группе из 24 людей для оценки качества звучания по пятибалльной шкале. Для 8kHz и 16kHz оценки собирали раздельно, градация оценок — [1, 2, 3, 4-, 4, 4+, 5-, 5] — с большей детализацией для более качественного звука.

Всего было поставлено 37,403 оценок. 12 человек сделали оценку полностью. Еще 12 людей успели проставить только от 10% до 75% оценок. Дальше для каждого спикера мы просто посчитали среднее (в скобочках приведено стандартное отклонение). Расчет среднего от медиан по каждому аудио завышает средние оценки на 0.1 — 0.2 балла, но не влияет на отношения. Показательны естественно скорее отношения средних баллов друг к другу. Дисперсия довольно высокая, но оценки пользователей отличались сильно и мы решили не выбрасывать никакие, т.к. оценки одного пользователя были консистентными друг с другом. По ряду соображений мы провели такую оценку только на своих уникальных голосах:

СпикерОригиналСинтезОтношениеПримеры
aidar_8khz4.67 (.45)4.52 (.55)96.8%link
baya_8khz4.52 (.57)4.25 (.76)94.0%link
kseniya_8khz4.80 (.40)4.54 (.60)94.5%link
aidar_16khz4.72 (.43)4.53 (.55)95.9%link
baya_16khz4.59 (.55)4.18 (.76)91.1%link
kseniya_16khz4.84 (.37)4.54 (.59)93.9%link

Мы просили людей в первую очередь оценивать естественность звучания речи (а не качество звука). Нас удивило, что по расспросам обычные люди на своих ежедневных девайсах не особо слышат разницу между 8 kHz и 16 kHz (что подтверждается оценками)! Самые низкие абсолютные оценки и самое низкое отношение у Байи. Самые высокие абсолютные оценки — у Ксении, а относительные — у Айдара. Тут важно отметить, что у Байи меньше поставлен голос, но поэтому он звучит более по-человечески за счет этого. У Байи также выше дисперсия оценок.

Ручной просмотр аудио с большими расхождениями показывает ошибки спикеров, ошибки такотрона, ошибочные паузы (тоже вследствие ошибок такотрона), имена собственные и сложные слова, которые вообще непонятно как читать. Естественно 75% таких расхождений в синтезе (а не оригинале) и частота дискретизации особо не влияет.

Если мы пытались дать численную оценку естественности, то еще хорошо бы оценить «неестественность» или «роботизированность» голоса. По идее ее можно оценивать, давая людям пару аудио на выбор и прося выбрать между ними. Но мы пошли дальше и по сути применили «двойной слепой тест». Мы в случайном порядке дали людям поставить оценки «одному и тому же аудио» 4 раза — оригинал и синтез с разной частотой дискретизации. Для участников исследования, разметивших весь датасет, получается такая таблица:

СравнениеХужеОдинаковоЛучше
16k против 8k, оригинал95748111512
16k против 8k, синтез166840611551
Оригинал против синтеза, 8k81636972767
Оригинал против синтеза, 16k67434623144

Тут напрашивается несколько выводов:

Можете оценить сами, как это звучит, как для наших уникальных голосов, так и для спикеров из внешних источников (больше аудио для каждого спикера можно синтезировать в colab.

Если вы не дружите с колабом или глаза разбегаются от количества файлов в папках с примерами, то вот несколько случайных аудио:

Источник

Наверное самый лучший синтез речи на данный момент

Всем привет, возможно это уже было, сильно не кидайтесь камнями(мой первый пост), хочу поделится отличным синтезатором речи в Телеграмме. Выполнен в виде бота, который можете добавлять в свои чаты с друзьями, есть настройки и несколько типов речи. Основан на апи яндекса SpeechKit. Это лучший синтезатор который я слышал. С друзьями кидали кучи разного текста, отрывки из книг, и синтезирует так что почти неотличимо от настоящего человека, как будто зачитывает диктор. Конечно бывают косяки, но издалека, очень хорошо звучит.Особенно если поиграться с настройками. Мы вывели что голос Женек с эмоцией злой звучит лучше всего.Бот не мой, просто нашли. И почему то у него до сих пор нет популярности.

Не знаю можно ли делится тут ссылками, но вот: https://t.me/Maksobot

Дубликаты не найдены

Значит уже и хорошей штукой поделится нельзя. Понятно все с вашим пикабу, сразу везде рекламу видят.

Все нормально, бро, штука хорошая и мне, например, пригодится.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Команды в телеграм ботах

В ботах часто используются команды вида “/command”, которые провоцируют бота на то или иное действие.

Кто уже создавал ботов мог видеть их в @botfather.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Давайте разберемся как создать этот список команд и присвоить каждой ту или иную функцию.

С созданием списка команд все довольно просто, это реализуется непосредственно в настройках бота через @BotFather:

1) Вводим команду /mybots

2) Видим список наших ботов

3) Выбираем тот бот, которому присвоим список команд

4) Кликаем Edit Bot

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

5) Кликаем Edit Commands

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Далее, следуя формату, отправляем список команд, например:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Теперь если мы введем “/” в чате с нашим ботом, то он предложит список команд. Проверяем, что список есть:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Добавим логику нашим командам

Как уже видно из описания команд, я хочу отправить в чат клавиатуру.

Создам новую ГТ и перейду к написанию скрипта

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Назову файл doPost, здесь будет только эта функция

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Добавлю следующий скрипт:

let update = JSON.parse(e.postData.contents);

let msg = update.message;

let msg_array = msg.text.split(» «);

let user = msg.from.username;

if (text == «/getkeyboard») <

Demo.send_key(«Галочки», chat_id, API, keyboard)

Demo.send(«Клавиатура сохранена”, chat_id, API)

Все! Для каждой команды теперь добавлен функционал.

Хорошо, расскажу поподробнее))

Итак, если текст сообщения == “/getkeyboard”, мы отправляем в чат некую клавиатуру.

Если мы отправили боту команду “/save”, то он ответит нам сообщением “Клавиатура сохранена”.

Подробно функции send и send_key, а также библиотека Demo рассматривались в постах ранее. Вот ссылки:

Дабы не перегружать дорогого читателя инфой, остановлюсь здесь)

Как всегда жду фидбека и вопросиков ^^ Всегда рады пообщаться!

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Типы клавиатур в чат ботах

Сегодня познакомимся с существующими клавиатурами в ботах и тем, как их подключить и настроить.

Всего есть два типа клавиатур:

ReplyKeyboardMarkup используется в случаях, когда вы хотите получить от пользователя конкретный ответ, предоставляя ему возможность не печатать ручками, а выбрать из предлагаемых вариантов. Иными словами, это заготовки текстовых сообщений. Расположены кнопки под полем ввода сообщения

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

В зависимости от выбранной кнопки могут последовать те или иные действия. Эту логику мы задаем в скрипте для каждой кнопки.

В приведенном примере мы хотим записать пользователя на маникюр и предлагаем ему определиться с днем (в качестве примера приведены только два варианта, но это можно закастомить).

После выбора того или иного дня бот внесет инфу в ГТ, а именно: дату, имя пользователя и ид чата.

Запись через чат имеет следующий вид

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Здесь мы выбрали кнопку Сегодня и получили ответ от бота.

В ГТ при этом появилась строчка

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Подключение и настройка

Каждая клава (инлайн-клавиатур может быть сколько угодно) записана в соответствующую переменную:

[«Записаться», «Отменить запись»]

Обратите внимание, что синтаксис для инлайн (INLINE_Days) и обычной (KEYBOARD) клавиатур различается.

Клавиатурам можно добавить дополнительные свойства, мы использовали только resize_keyboard со значением true. Их не так много и они есть в документации телеграма.

Далее в коде обращаемся к клавам по имени переменной.

С ReplyKeyboardMarkup все достаточно просто. Она добавляется при первом прогоне скрипта, когда вы отправляете в чат команду /start, например.

Нам нужна функция, которая отправит в чат клавиатуру. Функция та же, что и при отправке сообщения ботом send(), за двумя исключениями:

Ниже скрипт функции отправки обычной клавы в чат:

function send_key (msg, chat_id, api, keyboard)

Вызов функции осуществляется из тела функции doPost(e) одной строкой:

send_key(«Поехали», chat_id, API_TOKEN, KEYBOARD)

Что касается инлайн-клавиатур.

Отправка клавиатуры наступает при определенном условии. Если пользователь отправил в чат слово “Записаться”, то отправляем ему нашу инлайн-клаву:

if (text == «Записаться») <

Demo.send_key(«Выберите день», chat_id, API_TOKEN, INLINE_Days)

Переменная text содержит текст сообщения, которое мы и проверяем на соответствие.

Результатом выполнения функции send_key будет сообщение от бота Выберите день и кнопки под ним.

Далее нужно предусмотреть алгоритм обработки нажатия этих кнопок.

Если мы кликаем на какую-либо из кнопок (“Сегодня” или «Завтра»), то добавляем новую строку в ГТ и отправляем сообщение в чат, что запись создана.

let date = Demo.getNewDate(0);

let ind = get_ind(chat_id);

Demo.send(«Вы успешно записались. «+»Дата визита: «+ date, chat_id, API_TOKEN);

Ниже скрипт полностью (не забываем, что значения глобальных переменных у вас будут свои):

// Объявляем все нужные нам переменные. Док важно открывать именно по ID, а не брать активный док, т.к. запуск кода будет производить бот

const API_TOKEN = «1946675042:AAHg1HTHe42GhR9EEt0EdbR94j1G8pDcTWE«;

const DOC = SpreadsheetApp.openById(«1ALJLtLdt-LT7GEF4hawIizVeJXFnoPZCsC0pw7kcp70«);

const Clients = DOC.getSheetByName(«Clients»);

const Calendar = DOC.getSheetByName(«Calendar»);

var update = JSON.parse(e.postData.contents);

var msg = update.message;

var msg_array = msg.text.split(» «);

var user = msg.from.username;

if (text == «Записаться») <

Demo.send_key(«Выберите день», chat_id, API_TOKEN, INLINE_Days)

if (text == «Отменить запись») <

let ind = get_ind(chat_id);

Demo.send(«Запись отменена», chat_id, API_TOKEN)

var text = update.callback_query.message.text;

var user_name = update.callback_query.from.username;

let date = Demo.getNewDate(0);

let ind = get_ind(chat_id);

Demo.send(«Вы успешно записались. «+»Дата визита: «+ date, chat_id, API_TOKEN);

let date = Demo.getNewDate(1);

let ind = get_ind(chat_id);

Demo.send(«Вы успешно записались. «+»Дата визита: «+ date, chat_id, API_TOKEN);

Отдельно ниже представлена доп функция, которая проверяет наличие ид в ГТ. Если ид уже есть в таблице, мы обновляем данные у строки с этим ид. В противном случае создаем новую строку.

let chat_id = 311157431;

let arr = Clients.getRange(1,2,Clients.getLastRow()).getValues()

let ind = arr.indexOf(chat_id)

ID для подключения библиотеки Demo: 1JkXEW_zfhr6v0TKsvU_ZbygNLpXEczxZcC46fMF_ffk-noMk8UKcMitz

Здесь также заметим, что клик по кнопке в инлайн клавиатуре отправляет боту JSON со свойством callback_query. Это значит, что нам нужны дополнительные переменные, в которые мы запишем значения из этого JSON пакета.

Это краткая вводная в мир клавиатур. Скоро будут посты про простые сервисы, куда будут добавлены и доработаны те же клавиатуры и доп функции.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Чат с прогнозом погоды и триггеры в гугл таблицах (GS6)

Глобально задача в следующем:

Отсюда я забрал прогноз:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Подробнее о том как спарсить данные с сайта в таблицу в этом посте: Парсинг данных с сайтов в гугл таблички (GS1)

Тут приведу только формулу:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Для этого нам необходимо сохранять ид чата отдельно в таблице и обращаться к этому значению как к значению переменной chat_id.

Соответственно, нам нужна функция, которая будет это делать:

//записывает ид чата в таблицу

Demo.send(«ID записан», chat_id, API_TOKEN);

Вызывать ее мы будем из тела функции doPost(e) при условии, что боту отправлена команда /link. В коде это выглядит вот так:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Теперь соберем все вместе и сформируем сообщение для отправки в чат.

Все, что в кавычках, должно быть изменено на ваши значения.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Функция для подключения веб хука:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Функция link(chat_id) для запоминания id чата

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Функция daily() для формирования и отправки прогноза в чат:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

На данный момент функция daily() не вызывается другой функцией или командой типа /link или /hello.

Мы добавим триггер, который будет вызывать функцию автоматически каждое утро.

Переходим на вкладку Triggers

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Добавляем новый триггер

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

В окне задаем необходимые параметры.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Результат работы скрипта ниже.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Дополнительно: триггеры на то и триггеры, что работают автономно (без участия пользователя или разработчика, с закрытым доком или чатом. В любой ситуации сообщение будет отправлено в чат в установленное время с установленной частотой.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Комбинация из ТЛГ и ГТ, простота подключения КМК делает из ГТ офигенный инструмент автоматизации.

Пост ориентирован прежде всего на людей, которые только познают ГТ и на первых порах не требует знания гугл скриптов. В этом посте будет только первичная настройка и подключение. В следующих постах рассмотрю всё что описал выше (как трекать время, задачи, финансы и т.д. и как это настроить под себя).

Для начала находим отца всех ботов @botfather в телеге.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

После старта бота botftaher выведет список команд. Здесь нам интересна команда создания нового бота /newbot.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Порядок очень простой: создать бота, назвать его человеческим языком, задать ему username. В результате получаем API токен нашего бота (1860347610:AAH1q6eqTPnVh0qe6mQWidNSTELcprXEfOk). Он-то нам и нужен.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Должно получиться вот это:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Затираем дефолтный код и вставляем следующий скрипт:

const API_TOKEN = ‘1860347610:AAH1q6eqTPnVh0qe6mQWidNSTELcprXEfOk

const DOC = SpreadsheetApp.openById(‘10W0T9eOP_NN_6g4qyEJzWjm4nkKRN2vyUOnpx73f-N0’);

var update = JSON.parse(e.postData.contents);

//нам нужен только тип «сообщение»

var msg = update.message;

var msg_array = msg.text.split(» «);

var user = msg.from.username;

if (msg_array[0] == «/hello») <

send(«Hello World», chat_id)

function send (msg, chat_id) <

//Отправляет сообщения в тлг. На вход функции дать сообщение и ID чата, в который нужно провести отправку

UrlFetchApp.fetch(‘https://api.telegram.org/bot’ + API_TOKEN + ‘/’, data);

Обращаем внимание на переменные DOC и API_TOKEN (выделено жирным). Значения переменных необходимо исправить на ваши значения.

1) меняем ID гугл таблицы (находится в строке адреса после /d/)

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

2) меняем токен бота, который мы получили при его создании выше

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Круто! Львиная доля работы уже проделана.

Следующим важным моментом является регистрация вебхука (webhook).

Добавим следующий код к нашему скрипту:

Сохраняем наш код и кликаем Deploy.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

В открывшемся окне кликаем по шестеренке и выбираем Web app

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

В поле Who has access выбираем Anyone

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

При первом запуске приложение попросит авторизации. Проделываем это упражнение.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Здесь нам нужен URL в самом конце. Копируем его и вставляем в качестве значения переменной App_link.

Теперь функция должна выглядеть следующим образом:

Снова сохраняем код и запускаем функцию api_connector:

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

И наконец переходим к боту в телеге! Запускаем, отправляем команду /hello и видим результат.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Теперь подробно по коду. В коде всего 3 функции:

В нашем случае, если мы отправляем команду /hello, бот отвечает Hello World, вызывая функцию send. Это все его действия.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Когда друг сказал, что покупает Ладу за 1,2 млн, стало понятно, что с рынком что-то не то. Делаем робота для поиска авто

Привет! Меня зовут Лев. Мы с командой развиваем «умного» робота HomeBro, который с недавних пор помогает бесплатно находить не только жилье, но и автомобили.

Для тех, кто еще не знаком с Бро – я рассказывал про создание робота по поиску жилья в этой статье.

В последние месяцы мы все чаще слышали запросы от наших пользователей и знакомых на аналогичного бота для поиска автомобилей. Оказалось, что купить хорошую машину за вменяемые деньги сейчас очень непросто.

Пообщавшись с людьми, мы выявили целый ворох проблем. Вот некоторые из них:

Взлет цен. Из-за коронавируса и кризиса полупроводников произошли серьезные сбои в поставках новых автомобилей. В ситуации дефицита и роста стоимости металла цены на машины в салонах резко повысились. Следом закономерно выросли цены и на авто с пробегом.

Засилье перекупщиков. Эти ребята постоянно мониторят рынок и успевают перехватить большинство адекватных вариантов на вторичном рынке. Они пользуются различными инструментами, в том числе и платными чат-ботами.

В итоге купить машину по хорошей цене, не имея мгновенных оповещений о новых вариантах – очень сложно.

У каждой крупной площадки по продаже авто есть приложение, в котором можно настроить push-уведомления. Но дело в том, что предложения разбросаны по разным площадкам. Ставить несколько аппов, повторно настраивать поиск в каждом из них, а затем переключаться между ними очень неудобно. Как итог, многие просто забивают на это и пропускают бОльшую часть интересных предложений.

Еще один сложный момент — проверка автомобилей с пробегом. Обычные люди все реже разбираются в том, как устроены автомобили, а машины становятся все сложнее. Часто люди тратят серьезные деньги на кота в мешке. А если и понимают, что нужна помощь специалиста, то нередко вынуждены тратить время на его поиск.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Имеющиеся наработки позволили нам быстро разработать новый сценарий поиска. Конечно, все проблемы авторынка разом не решить, но вот что мы имеем на данный момент:

— Бот присылает новые объявления с 4-х сайтов – Авто.ру, Авито, Дром, СберАвто.

— Делает это шустро – в течение пары минут после публикации. За счет этого наши пользователи могут составить конкуренцию перекупщикам и поймать авто по хорошей цене.

— Одну машину присылает один раз, фильтруя повторяющиеся объявления с разных сайтов.

— Ищет и авто с пробегом, и новые машины.

— Позволяет нанять рекомендованного нами специалиста для проверки авто.

Как и в поиске жилья, в этом боте нет навязчивой рекламы и он бесплатный. А еще он работает по всей России!

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Сначала думали, не назвать ли бота CarBro, но все же решили, что HomeBro (с американского сленга — «братишка с района») – достаточно универсальное название. Заодно сделали единую точку входа, которая дает возможность искать и авто, и жилье, и интересных людей, живущих рядом (про последнее писал в отдельной статье).

На то, чтобы собрать первую тысячу человек в боте по поиску жилья, полтора года назад понадобилось 4 месяца. А в боте для авто мы собрали 1000 подписок за один день, просто разослав информацию про запуск нашим пользователям. Мы получили позитивные отзывы, рекомендации друзьям и донаты, а значит все не зря.

лучший голосовой движок 2021. Смотреть фото лучший голосовой движок 2021. Смотреть картинку лучший голосовой движок 2021. Картинка про лучший голосовой движок 2021. Фото лучший голосовой движок 2021

Каждый раз кайфуем, когда читаем такие комменты к донатам Показать полностью 3

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *