Product
Socket Now Supports uv.lock Files
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
node-red-contrib-sonospollytts
Advanced tools
This node transforms a text into a speech audio. It supports many voice languages. You can hear the voice through Sonos.
This node uses Polly TTS api and Node Sonos api and requires NODE 8.9.x or higher.
Please see the Changelog
Do you want to support this project?
Features:
- TTS queues handling. If you send multiple payloads to the node, it'll handle it in his own queue.
- TTS caching. Amazon AWS charges you if you use Polly for a very high rate of text to speech request. The node caches the TTS, so if you requests the same TTS the second time, the node will take it from the cache instead of asking to the Amazon Polly service.
- Send a simple payload with the text you want to speech out. For example node.send({payload:"Hello there!"});
.
Configuration:
Polly Config: create a config with your AWS credentials
Polly Voice: select your preferred voice
Sonos IP: insert your sonos's IP (Sonos
doesn't allow to set a fixed IP to the sonos's device, so you need to reserve an IP using the DHCP Reservation function of your
router/firewall's DHCP Server)
Sonos Volume: set the preferred TTS volume, from 0 to 100 (can be overridden by passing msg.volume to the node)
Sonos Hailing: before the first TTS message of the message queues, Sonos will play an "hailing" sound. You can select the hailing or totally disable it.
Node-Red IP: set IP of your node-red
Node-Red Port: normally 1880. If you've changed the default port, adjust this field consequently
Known Issues:
- When the node-red's host is restarted, the cache TTS Polly folder is emptied
- When an mp3 from shared folder is played by sonos, TTS waits for it to finish before speech
SAMPLE FLOW:
[
{
"id": "2a7223f6.d28e0c",
"type": "tab",
"label": "Flow 1",
"disabled": false,
"info": ""
},
{
"id": "7948293a.159a68",
"type": "inject",
"z": "2a7223f6.d28e0c",
"name": "",
"topic": "",
"payload": "true",
"payloadType": "bool",
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"x": 70,
"y": 120,
"wires": [
[
"140491c3.4c7e0e"
]
]
},
{
"id": "140491c3.4c7e0e",
"type": "function",
"z": "2a7223f6.d28e0c",
"name": "",
"func": "node.send({payload:\"Hello\"});\nnode.send({payload:\"http://media.ilmeteo.it/audio/2018-03-31.mp3\"});\nnode.send({payload:\"This is a test message\"});\n",
"outputs": 1,
"noerr": 0,
"x": 230,
"y": 120,
"wires": [
[
"b2f92147.9a31e"
]
]
},
{
"id": "b2f92147.9a31e",
"type": "sonospollytts",
"z": "2a7223f6.d28e0c",
"name": "",
"voice": "17",
"ssml": false,
"dir": "/tmp",
"sonosipaddress": "192.168.1.109",
"sonosvolume": "30",
"sonoshailing": "hailing.mp3",
"noderedipaddress": "192.168.1.114",
"noderedport": "1880",
"config": "e9b4b321.0bcb5",
"x": 390,
"y": 120,
"wires": []
},
{
"id": "e9b4b321.0bcb5",
"type": "sonospollytts-config",
"z": "",
"name": "bb"
}
]
FAQs
DEPRECATED. PLEASE INSTALL node-red-contrib-tts-ultimate INSTEAD.
The npm package node-red-contrib-sonospollytts receives a total of 119 weekly downloads. As such, node-red-contrib-sonospollytts popularity was classified as not popular.
We found that node-red-contrib-sonospollytts demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.