Fala Moçada!
A quem interessar compartilho um Fluxo que gera um ÁUDIO e envia pelo Telegram. O processo é mais fácil do que imaginei.
Vamos lá…
Inicialmente você vai precisar instalar o TTS. Acesse o menu MANAGE PALETTE.
Na aba INSTALL procure por “voicersstts” e instale o que aparecer.
No node MENSAGEM eu fiz uma lógica para montar um texto (que será transformado em áudio depois) onde se tem a hora atual.
Lógica:
var message = "";
var time = new Date();
var hour = time.getHours();
var minute = time.getMinutes();
message += "Agora são ";
if (hour === 0 || hour === 1)
{
message += hour.toString() + " hora e ";
}
else
{
message += hour.toString() + " horas e ";
}
if (minute === 0 || minute === 1)
{
message += minute.toString() + " minuto.";
}
else
{
message += minute.toString() + " minutos.";
}
msg.payload = message;
return msg;
O próximo passo é o node TTS (que aparece após instalar o Palette que indiquei acima). No campo Voice RSS API Key você precisa colocar a KEY que você vai criar aqui: http://www.voicerss.org/default.aspx - Botão GET STARTED. No campo Cache Location você deve indicar um caminho existente no seu HA para que ele possa salvar o ÁUDIO.
O Prepara Mensagem é a parte final de tratamento da mensagem antes de enviar para o Telegram. Aqui você deve indicar o SEU chat id.
Lógica:
msg.payload = {chatId: "seuchatid", type:"voice", content:msg.payload};
return msg;
Por fim, conectar ao node SENDER do Telegram.
Após isso, faça o DEPLOY e clique no INJECT para testar.
Isso me fez lembrar da série “Person of Interest” onde tocava o telefone e a máquina falava o número do CPF de quem poderia ser o assassino ou a vítima!
Código do Fluxo:
[{"id":"e1e82f49.b2c34","type":"tab","label":"Audio Telegram","disabled":false,"info":""},{"id":"7d3fd03f.098f1","type":"inject","z":"e1e82f49.b2c34","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"00 6 * * *","once":false,"x":110,"y":40,"wires":[["dad16e6.7ff3c9"]]},{"id":"dad16e6.7ff3c9","type":"function","z":"e1e82f49.b2c34","name":"MENSAGEM","func":"var message = \"\";\nvar time = new Date();\nvar hour = time.getHours();\nvar minute = time.getMinutes();\n\nmessage += \"Agora são \";\nif (hour === 0 || hour === 1)\n{\n message += hour.toString() + \" hora e \";\n}\nelse\n{\n message += hour.toString() + \" horas e \";\n}\n\nif (minute === 0 || minute === 1)\n{\n message += minute.toString() + \" minuto.\";\n}\nelse\n{\n message += minute.toString() + \" minutos.\";\n}\nmsg.payload = message;\nreturn msg;","outputs":1,"noerr":0,"x":290,"y":40,"wires":[["173b8fdc.889b5"]]},{"id":"f7590f0f.a08a2","type":"function","z":"e1e82f49.b2c34","name":"PREPARA MENSAGEM","func":"msg.payload = {chatId: \"seuchatid\", type:\"voice\", content:msg.payload};\nreturn msg;\n","outputs":1,"noerr":0,"x":650,"y":40,"wires":[["e2423dd.7f824c"]]},{"id":"173b8fdc.889b5","type":"VoiceRSStts","z":"e1e82f49.b2c34","name":"","apiKey":"seuapikeyaqui","language":"pt-br","rate":"2","codec":"MP3","format":"32khz_16bit_mono","cacheLocation":"/config/www/audios","x":450,"y":40,"wires":[["f7590f0f.a08a2"]]},{"id":"e2423dd.7f824c","type":"telegram sender","z":"e1e82f49.b2c34","name":"","bot":"d64a0e3f.abf5e","x":890,"y":40,"wires":[[]]},{"id":"d64a0e3f.abf5e","type":"telegram bot","z":"","botname":"nomedobotaqui","usernames":"","chatids":"","baseapiurl":"","updatemode":"polling","pollinterval":"300","usesocks":false,"sockshost":"","socksport":"6667","socksusername":"anonymous","sockspassword":"","bothost":"","localbotport":"8443","publicbotport":"8443","privatekey":"","certificate":"","useselfsignedcertificate":false,"verboselogging":false}]
Abraços,
José Henrique.