-
-
Save AlexxIT/0ba110a4e1214eeac21d2f942f28a1d7 to your computer and use it in GitHub Desktop.
import asyncio | |
import sys | |
from os import path | |
from aiohttp import ClientSession | |
from custom_components.yandex_station.yandex_quasar import YandexQuasar | |
async def main(cachefile: str, text: str): | |
async with ClientSession() as session: | |
quasar = YandexQuasar(session) | |
speakers = await quasar.init('myuser', 'mypass', cachefile) | |
for speaker in speakers: | |
if speaker['name'] == 'Яндекс Мини': | |
await quasar.send(speaker, text, is_tts=True) | |
if __name__ == '__main__': | |
text = ' '.join(sys.argv[1:]) | |
cachefile = path.join(path.dirname(path.abspath(__file__)), | |
'.yandex_station.json') | |
asyncio.run(main(cachefile, text)) |
Работает, спасибо. Только были проблемы если каталог custom_components целиком брать - там в init, видимо, какие то зависимости от home assist еще есть, но только с yandex_quasar - взлетело.
Просто озвучивание текста заработало, спасибо! А как заставить колонку выполнить команду из консоли, например убавить громкость?
is_tts=false
AlexxIT, а подскажите что надо добавить в скрипт что бы Алиса заговорила другим голосом и спецэффекты наложить если можно?
@BucHo82 это облачное управление. Яндекс недавно выпилили из него спецэффекты
А при локальном управлении спецэффекты работают? Если да то можно сделать такой же скрипт под локальное?
Я так понимаю авторизация обновилась, как теперь пройти авторизацию?
speakers = await quasar.init('user', 'login', cachefile) TypeError: init() takes 1 positional argument but 4 were given
Думаю, можно пользоваться со второй версией компонента. В третей версии сильно поменялась авторизация. Этот пример работать не будет
Я прошу прощения - этот скрипт надо выполнять только из системы HomeAssistant?
Что то консольная Алиса совсем сломалась. Не работают скрипты(( Это у меня что то не так или Яндекс опять всё поломал?
Поменяйте логин/пароль и имя вашей колонки. Нужен python 3.7+ и
pip install aiohttp
.