feat: Add Telnyx Voice alerts#7215
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a new Telnyx Voice notification channel that places outbound calls via Telnyx Call Control and speaks the alert message when the call is answered, including UI configuration and a public webhook for call events.
Changes:
- Added UI form + i18n strings for configuring Telnyx Voice (App ID, base URL, optional speech template).
- Registered a new
telnyxVoicenotification type in the frontend and backend provider list. - Added a public webhook endpoint and a new server-side Telnyx Voice provider to manage call lifecycle (speak/hangup).
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| src/lang/en.json | Adds translation strings for Telnyx Voice configuration fields and help text. |
| src/components/notifications/index.js | Registers the new TelnyxVoice.vue notification form component. |
| src/components/notifications/TelnyxVoice.vue | New Vue form for Telnyx Voice provider configuration. |
| src/components/NotificationDialog.vue | Adds “Telnyx Voice” and renames existing Telnyx label to “Telnyx SMS”. |
| server/routers/api-router.js | Adds a public Telnyx call-control webhook callback route. |
| server/notification.js | Registers the new Telnyx Voice notification provider. |
| server/notification-providers/telnyx-voice.js | Implements Telnyx Voice call placement + webhook handling (speak/hangup) with in-memory pending call state. |
|
@CommanderStorm I believe I'm ready for review. |
|
I am going to give you fairly general feedback: please look at the rest of the codebase if what you are doing is done this way.
I don't enjoy reading code written by opus so that makes your wait time in the queue a bit longer. that is life. |
I do not understand what you mean, I based this off the other views. Are you clear on the fact that it is allowing you to specify custom text, but then specify a placeholder for the Uptime Kuma injected text?
Sorry about that, I didn't find that. I will take a look. |
|
OK, I'm not understanding what you mean about the webhooks either. I must be looking at the wrong spot. Do you know of another one that accepts incoming messages via web hook? |
Summary
In this pull request, the following changes are made:
Please follow this checklist to avoid unnecessary back and forth (click to expand)
I understand that I am responsible for and able to explain every line of code I submit.
Screenshots for Visual Changes
UPDOWN