decole / quasar-iot
yandex quasar 的打包器,用于 Yandex Alice 远程 TTS
Requires
- php: ^7.4||^8.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
This package is auto-updated.
Last update: 2024-09-09 02:41:15 UTC
README
使用 composer 安装
composer require decole/quasar-iot
需求
"php": "^7.4||^8.0",
客户端,用于 https://yandex.ru/quasar/iot/
这是一个为 Laravel 和简单 PHP 项目准备的打包器,它可以帮助您通过外部 API 发送文本消息到音频智能设备(https://yandex.ru/quasar/iot/)。带有语音助手 Alice 的音频设备将能够说出您发送的内容,而无需您的手动语音激活。
每条消息限制为 100 个字符!
我为自己制作了这个,用于语音通知和重要通知。
如果愿意,如果您使用 Laravel,您可以使用此命令发布此包的配置文件
$ php artisan vendor:publish --provider="Decole\Quasar\Adapters\Laravel\QuasarServiceProvider" --tag=config
如何找到 cookies
登录到 https://yandex.ru/quasar/iot/
在浏览器中按 F11 打开“开发者工具”
在“网络”标签页中打开任何 Fetch/XHR 请求,并在请求头中复制来自 Cookie: 的行。这个 Cookie 字符串是使这个库工作所需的。
$cookies = 'yandexuid=0000000000000000000; L=Ykkkkkkkkkk+awwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww==.1111111111.11111.111111.88888888888888888888888888888888; yandex_login=oooooooooo; yuidss=9999999999999999999; ymex=1111111111.yrts.1111111111; is_gdpr=0; is_gdpr_b=CCCCCCCCCCCC; my=YwA=; gdpr=0; _ym_uid=1111111111111111111; mda=0; amcuid=9999999999999999999; computer=1; XcfPaDInQpzKj=1; i=G4jBbeJV022E4y/HME9eMh/JJJJJJJJ+JJJJJJJ/JJJJJJJJ/ggggggggggggg+RRRRRRRRRRRRRRRRRRR+/H8dmxaI=; yp=1111111111.udn.cDDDDDDDDDDDDDDDDDDDDDDDDDD.org_id.333333333333333333.ygu.1#1111111111.spcs.l#1111111111.szm.1:111111111:1111111111111111111.los.1#1111111111.losc.0#1111111111.mcv.0#1111111111.mcl.1111111; device_id=11111111111111111111111111111111111111111; _ym_d=1111111111; skid=1111111111111111111; Cookie_check=1; instruction=1; Session_id=3:11111111111111111111111111111111111:24.1.2:1|111111111.0.2|3:111111.111111.11111111111111_111111111111; sessionid2=3:1111111111.5.0.1111111111111:111111:24.1.2:1|111111111.0.2|3:111111.111111.111111111111111111111111111; ys=udn.cccccccccccccccc#c_chck.1111111111; active-browser-timestamp=1111111111111; _ym_isad=2; _yasc=1111111111111111111111111111111111111111111111111111111111111111111www=='; $service = new QuasarClient($cookies); $t = $service->getDevices(); dd($t); // view array data in browser /* ------- */ // find needle deviceId to upper command and create scenario $cookies = '...'; $deviceId = '55555555-eeee-4545-6767-dddddddddddd'; $service = new QuasarClient($cookies, 'Голос', $deviceId); $t = $service->createScenario(); dd($t); // view string - it is $scenarioId /* ------- */ // scenario was created, change message text by speech smart audio device $cookies = '...'; $deviceId = '55555555-eeee-4545-6767-dddddddddddd'; $scenarioId = '44444444-ffff-4444-bebe-e8e8e8e8e8e8'; $service = new QuasarClient($cookies, 'Голос', $deviceId, $scenarioId); $service->changeTextSpeechByScenario('Всем привет'); // and execute speech device $service->executeSpeechByScenario(); // if need remove scenario $service->deleteScenario();
使用此库的步骤示例
- 您需要将您的智能音箱添加到您的 Yandex 账户的设备中。这样您的设备就可以在 https://yandex.ru/quasar/iot/ 中被看到。
- 提取并保存您的账户 Cookie。此行是整个服务正常工作的必要条件。请参见上面的图片。
- 找到 id 列。
$service->getDevices()方法将给您所有设备(在所有房屋和房间中) - 如果尚未存在,您需要创建一个自定义脚本。例如,它可以是名为“Голос”的场景
$service->createScenario() - 更改语音文本
$service->changeTextSpeechByScenario('Всем привет');- 每条消息限制为 100 个字符 - 执行语音消息命令
$service->executeSpeechByScenario(); - 删除场景
$service->deleteScenario();
QuasarClient 方法
$service = new QuasarClient($cookies, 'Голос', $deviceId, $scenarioId); // or $service = new QuasarClient($cookies); $service->setDeviceId($deviceId); $service->setScenarioId($scenarioId); // see all your devices $service->getDevices(); // see all your devices filtered by <type> or <item_type> $service->getDevices('device'); // create scenario $service->createScenario(); // change voice message text $service->changeTextSpeechByScenario('Всем привет'); // executing a voice message command $service->executeSpeechByScenario(); // delete current scenario $service->deleteScenario();
为俄罗斯人和懂俄语的人
通过 composer 安装
composer require decole/quasar-iot
要求
"php": "^7.4||^8.0",
客户端(api 包装器)用于 https://yandex.ru/quasar/iot/
为 Laravel 包装器,也可用于简单的 PHP 项目,它可以帮助您通过外部 API 发送文本消息到音频音箱(https://yandex.ru/quasar/iot/)。带有语音助手 Alice 的音箱将能够说出您发送的内容,而无需您的语音激活。
每条消息限制为 100 个字符!
我为自己制作了这个,用于语音通知和重要通知。
如果愿意,如果您使用 Laravel,您可以使用此命令发布此包的配置文件
$ php artisan vendor:publish --provider="Decole\Quasar\Adapters\Laravel\QuasarServiceProvider" --tag=config
如何找到 cookies
登录并授权 https://yandex.ru/quasar/iot/
按 F11 在您的浏览器中打开“开发者工具”
转到“网络”选项卡,打开任何 Fetch/XHR 请求,并在请求头中复制来自 Cookie: 的行。这个字符串是使这个库工作所需的。
$cookies = 'yandexuid=0000000000000000000; L=Ykkkkkkkkkk+awwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww==.1111111111.11111.111111.88888888888888888888888888888888; yandex_login=oooooooooo; yuidss=9999999999999999999; ymex=1111111111.yrts.1111111111; is_gdpr=0; is_gdpr_b=CCCCCCCCCCCC; my=YwA=; gdpr=0; _ym_uid=1111111111111111111; mda=0; amcuid=9999999999999999999; computer=1; XcfPaDInQpzKj=1; i=G4jBbeJV022E4y/HME9eMh/JJJJJJJJ+JJJJJJJ/JJJJJJJJ/ggggggggggggg+RRRRRRRRRRRRRRRRRRR+/H8dmxaI=; yp=1111111111.udn.cDDDDDDDDDDDDDDDDDDDDDDDDDD.org_id.333333333333333333.ygu.1#1111111111.spcs.l#1111111111.szm.1:111111111:1111111111111111111.los.1#1111111111.losc.0#1111111111.mcv.0#1111111111.mcl.1111111; device_id=11111111111111111111111111111111111111111; _ym_d=1111111111; skid=1111111111111111111; Cookie_check=1; instruction=1; Session_id=3:11111111111111111111111111111111111:24.1.2:1|111111111.0.2|3:111111.111111.11111111111111_111111111111; sessionid2=3:1111111111.5.0.1111111111111:111111:24.1.2:1|111111111.0.2|3:111111.111111.111111111111111111111111111; ys=udn.cccccccccccccccc#c_chck.1111111111; active-browser-timestamp=1111111111111; _ym_isad=2; _yasc=1111111111111111111111111111111111111111111111111111111111111111111www=='; $service = new QuasarClient($cookies); $t = $service->getDevices(); dd($t); // выводим список устройств /* ------- */ // находим нужный ID устройства, его поместим в переменную $deviceId. Мы ищем устройство - колонку. Интуитивно понятно. $cookies = '...'; $deviceId = '55555555-eeee-4545-6767-dddddddddddd'; $service = new QuasarClient($cookies, 'Голос', $deviceId); $t = $service->createScenario(); dd($t); // то что выведется, это id созданного сценария, помещаем в переменную $scenarioId /* ------- */ // сценарий создан, теперь меняем текст внутри сценария, который при активации аудио колонка сама произнесет. $cookies = '...'; $deviceId = '55555555-eeee-4545-6767-dddddddddddd'; $scenarioId = '44444444-ffff-4444-bebe-e8e8e8e8e8e8'; $service = new QuasarClient($cookies, 'Голос', $deviceId, $scenarioId); $service->changeTextSpeechByScenario('Всем привет'); // выполняем активацию чтения нашего текста $service->executeSpeechByScenario(); // если нужно удалить сценарий, воспользуйтесь командой ниже $service->deleteScenario();
使用此库的步骤示例
- 需要将您的智能音箱添加到您的 Yandex 账户的设备中。这样您的设备就可以在 https://yandex.ru/quasar/iot/ 中被看到。
- 提取并保存您的账户 Cookie。此行是整个服务正常工作的必要条件。请参见上面的图片。
- 找到列的id。方法
$service->getDevices()会返回所有您的设备(所有房屋和房间中的设备) - 如果还没有,需要创建一个特殊场景。例如,可以创建一个名为 "语音" 的场景
$service->createScenario() - 更改要朗读的文本
$service->changeTextSpeechByScenario('大家好');- 限制在100个字符以内 - 执行朗读消息的命令
$service->executeSpeechByScenario(); - 删除场景
$service->deleteScenario();
QuasarClient 方法
$service = new QuasarClient($cookies, 'Голос', $deviceId, $scenarioId); // или $service = new QuasarClient($cookies); $service->setDeviceId($deviceId); $service->setScenarioId($scenarioId); // посмотреть все ваши устройства $service->getDevices(); // Посмотреть все устройства отфильтрованные по <type> или <item_type>. Смотри вывод предыдущей команды $service->getDevices('device'); // создание сценария, с которым будет работать данная библиотека $service->createScenario(); // изменение сообщения внутри сценария. Ограничение в 100 символов. $service->changeTextSpeechByScenario('Всем привет'); // запустить сценарий чтения устройством данного сценария $service->executeSpeechByScenario(); // удалить используемый сценарий $service->deleteScenario();
