Home Assistant integration for sending SMS notifications and making voice calls using the Vonage API.
- SMS Notifications: Send SMS messages via the
notify.vonage_smsservice - Voice Calls: Make outbound voice calls with text-to-speech via the
vonage.make_callservice - Easy Configuration: UI-based setup with credential validation
- Multiple Languages: Support for 15+ languages for voice calls
- Error Handling: Comprehensive error reporting and logging
- Open HACS in your Home Assistant instance
- Click on "Integrations"
- Click the "+" button in the bottom right corner
- Search for "Vonage"
- Click "Download" to install the integration
- Restart Home Assistant
- Copy the
custom_components/vonagefolder to your Home Assistant config directory - Restart Home Assistant
- Go to Settings > Devices & Services
- Click "Add Integration" and search for "Vonage"
You need a Vonage account with:
- For SMS: API Key and API Secret (required)
- For Voice: Vonage Application with Application ID and Private Key (optional)
- Phone Number: A Vonage phone number to use as sender ID
-
Go to Settings > Devices & Services in Home Assistant
-
Click "Add Integration" and search for "Vonage"
-
Enter your credentials:
- API Key: Your Vonage API key
- API Secret: Your Vonage API secret
- Phone Number: Your Vonage phone number (E.164 format, e.g., +14155550100)
- Application ID: (Optional) For voice calls
- Private Key: (Optional) For voice calls, paste the entire PEM content
- Default Language: (Optional) Default language for voice calls (default: en-US)
- Default Voice Style: (Optional) Default voice style 0-5 (default: 0)
-
Click "Submit" - credentials will be validated before saving
The integration automatically creates a notify.vonage_sms service:
service: notify.vonage_sms
data:
message: "Alert: Motion detected at front door"
target:
- "+14155550101"
- "+14155550102"Example Automation:
automation:
- alias: "Motion Alert via SMS"
trigger:
platform: state
entity_id: binary_sensor.front_door_motion
to: "on"
action:
service: notify.vonage_sms
data:
message: "Motion detected at {{ trigger.to_state.attributes.friendly_name }}"
target: "+14155550101"If you configured Voice API credentials, use the vonage.make_call service:
service: vonage.make_call
data:
to: "+14155550101"
text: "Fire alarm triggered. Please check your home immediately."
language: "en-US" # Optional, uses default if not specified
style: 1 # Optional, uses default if not specifiedExample Automation:
automation:
- alias: "Fire Alarm Voice Alert"
trigger:
platform: state
entity_id: binary_sensor.smoke_detector
to: "on"
action:
service: vonage.make_call
data:
to: "+14155550101"
text: >
Emergency: Fire alarm activated in the {{ trigger.to_state.attributes.friendly_name }}.
Please evacuate immediately and call 911.
language: "en-US"
style: 0| Code | Language | Code | Language |
|---|---|---|---|
en-US |
English (US) | fr-FR |
French (France) |
en-GB |
English (UK) | de-DE |
German |
en-AU |
English (Australia) | it-IT |
Italian |
es-ES |
Spanish (Spain) | pt-BR |
Portuguese (Brazil) |
es-MX |
Spanish (Mexico) | nl-NL |
Dutch |
Full list of supported languages
"Invalid Vonage credentials" error:
- Verify your API key and secret are correct
- Check that your Vonage account is active
- For Voice: Ensure Application ID and Private Key match your Vonage application
SMS not delivered:
- Verify phone numbers are in E.164 format (e.g., +14155550101)
- Check Vonage account balance
- Review logs for rate limiting or other API errors
Voice calls not working:
- Ensure you have configured both Application ID and Private Key
- Verify your Vonage application has Voice capabilities enabled
- Check that your phone number supports outbound calls
Enable debug logging by adding to configuration.yaml:
logger:
logs:
custom_components.vonage: debugLogs will show API requests/responses (credentials are never logged).
Contributions are welcome! Please open an issue or submit a pull request.
Created and maintained by Attila Szasz.
This project is licensed under the MIT License - see the LICENSE file for details.