Commit Graph

35 Commits

Author SHA1 Message Date
Peter Steinberger 03bec9d438 fix(voice): make signed callback replay reservations durable and retryable (#118754) 2026-08-03 10:35:32 -07:00
QiuYuang 87c71cf0ab fix(voice-call): reject malformed telnyx timestamps (#107565) 2026-07-30 09:12:10 +08:00
Masato Hoshino 458bb58ae5 fix(voice-call): pin Twilio webhook verification to the configured public path (#112800)
* fix(voice-call): pin Twilio webhook verification to the configured public path

buildTwilioVerificationUrl overwrote the configured publicUrl path with the
incoming request path, so behind a path-rewriting reverse proxy the
reconstructed verification URL no longer matched the URL Twilio signed and
valid webhooks were rejected. Use the configured public path (keep the request
query), mirroring the Plivo sibling fixed in #112559. Restores callback-path
binding and adds proxy-prefix accept + local-path reject regression tests.

* fix(voice-call): pin Twilio verification to public URL path

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-30 01:08:38 +08:00
WhatsSkiLL 3d4d2b7f5f fix(voice-call): bracket IPv6 webhook hosts (#115135)
Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com>
2026-07-28 11:47:39 -04:00
Pavan Kumar Gondhi 5c9d59a881 fix: pin plivo callback paths to public url (#112559) 2026-07-22 19:48:45 +05:30
Alix-007 b37476ab0b fix(twilio): redact webhook turnToken diagnostics (#102089)
* fix(twilio): redact webhook turnToken diagnostics

* chore(twilio): rerun ci

* fix(twilio): contain webhook URL diagnostics

Co-authored-by: Alix-007 <li.long15@xydigit.com>

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-09 11:19:40 +01:00
Peter Steinberger f535b2a3ec fix(voice-call): normalize mapped proxy addresses (#100261)
Co-authored-by: Rohit <rohitjavvadi2@gmail.com>
2026-07-05 06:10:36 -07:00
Peter Steinberger 6868cde4d4 docs: document large extension sources 2026-06-04 21:40:44 -04:00
Peter Steinberger 3ae521745e fix(voice-call): bound webhook replay cache expiry 2026-05-30 13:51:12 -04:00
Peter Steinberger 9353febc9a test: tighten voice call webhook security assertion 2026-05-09 20:59:24 +01:00
Peter Steinberger 190c07afe9 test: tighten generic matcher assertions 2026-05-08 14:09:53 +01:00
Peter Steinberger 9ef37d1907 test: tighten assertions and harness coverage 2026-05-08 05:28:12 +01:00
Peter Steinberger 250acdd2a2 test(voice-call): cover cloudflare twilio signatures 2026-04-25 03:52:31 +01:00
Vincent Koc 97aa6e0815 test(voice-call): share signed telnyx request helper 2026-04-12 05:31:25 +01:00
Peter Steinberger 3e80bd33e4 refactor: simplify extension conversions 2026-04-11 01:37:23 +01:00
Jacob Tomlinson ad77666054 fix(voice-call): canonicalize Telnyx replay request keys (#57829) 2026-03-30 20:01:43 +01:00
Jacob Tomlinson 85777e726c Voice Call: canonicalize Plivo V3 replay key (#56003)
Co-authored-by: zsx <git@zsxsoft.com>
2026-03-27 20:27:23 +00:00
Vincent Koc b0ce53a79c fix(voice-call): stabilize plivo v2 replay keys 2026-03-23 09:31:40 -07:00
Peter Steinberger 36c951769c test: harden voice call provider regressions 2026-03-22 17:07:20 +00:00
Peter Steinberger b5010719d6 test: dedupe telnyx webhook test fixtures 2026-03-13 21:40:53 +00:00
drvoss c5ddba52d7 fix(voice-call): retry Twilio signature verification without port in URL
Twilio signs webhook requests using the URL without the port component,
even when the publicUrl config includes a non-standard port. Add a fallback
that strips the port from the verification URL when initial validation fails,
matching the behavior of Twilio's official helper library.

Closes #6334
2026-03-03 00:02:03 +00:00
Peter Steinberger ad8d766f65 refactor(extensions): dedupe channel config, onboarding, and monitors 2026-03-02 08:54:20 +00:00
Peter Steinberger 192df12d60 test(voice-call): cover verification key and header helpers 2026-02-26 21:54:09 +01:00
Peter Steinberger 1aadf26f9a fix(voice-call): bind webhook dedupe to verified request identity 2026-02-26 21:43:51 +01:00
Brian Mendonca a3c4f56b0b security(voice-call): detect Telnyx webhook replay 2026-02-24 23:50:30 +00:00
Peter Steinberger 1d28da55a5 fix(voice-call): block Twilio webhook replay and stale transitions 2026-02-24 02:37:24 +00:00
Peter Steinberger ff11d8793b fix(voice-call): require Twilio signature in ngrok loopback mode 2026-02-14 18:14:59 +01:00
Peter Steinberger a749db9820 fix: harden voice-call webhook verification 2026-02-03 23:47:27 -08:00
cpojer f06dd8df06 chore: Enable "experimentalSortImports" in Oxfmt and reformat all imorts. 2026-02-01 10:03:47 +09:00
cpojer 230ca789e2 chore: Lint extensions folder. 2026-01-31 22:42:45 +09:00
cpojer 8cab78abbc chore: Run pnpm format:fix. 2026-01-31 21:13:13 +09:00
Peter Steinberger b3a60af71c fix: gate ngrok free-tier bypass to loopback 2026-01-26 22:26:26 +00:00
Peter Steinberger 97200984f8 fix: secure twilio webhook verification 2026-01-26 16:18:37 +00:00
Peter Steinberger fa1079214b fix: include query in Twilio webhook verification 2026-01-18 04:25:28 +00:00
vrknetha 946b0229e8 Voice Call: add Plivo provider 2026-01-15 07:21:40 +00:00