Problem statement
Rapida currently ships multiple telephony providers. Teams already running their voice stack on Plivo have no clean way to point a Rapida assistant at their Plivo numbers. Adding Plivo would let them connect an assistant to a Plivo number directly.
Proposed solution
Add a Plivo telephony provider that plugs into the existing telephony channel the same way the current providers do. It uses Plivo's bidirectional Audio Streaming over websockets, handles inbound and outbound calls through the Plivo Call API, returns the Stream answer XML, carries mu-law 8k audio both ways with resampling into the pipeline's linear16 16k, and supports barge-in through Plivo's clearAudio. It reuses the shared media session, so nothing else in the pipeline changes.
Alternatives considered
Plivo can run over the generic SIP path for basic calls, but that misses the native Audio Streaming features like clearAudio barge-in and playAudio media control and needs extra SIP setup. A first class provider is a cleaner fit.
Impact area
Voice / Audio
I have a working implementation already (inbound and outbound, streaming both ways, with barge-in) and am happy to open a PR. Opening the issue first per the contributing guide.
Problem statement
Rapida currently ships multiple telephony providers. Teams already running their voice stack on Plivo have no clean way to point a Rapida assistant at their Plivo numbers. Adding Plivo would let them connect an assistant to a Plivo number directly.
Proposed solution
Add a Plivo telephony provider that plugs into the existing telephony channel the same way the current providers do. It uses Plivo's bidirectional Audio Streaming over websockets, handles inbound and outbound calls through the Plivo Call API, returns the Stream answer XML, carries mu-law 8k audio both ways with resampling into the pipeline's linear16 16k, and supports barge-in through Plivo's clearAudio. It reuses the shared media session, so nothing else in the pipeline changes.
Alternatives considered
Plivo can run over the generic SIP path for basic calls, but that misses the native Audio Streaming features like clearAudio barge-in and playAudio media control and needs extra SIP setup. A first class provider is a cleaner fit.
Impact area
Voice / Audio
I have a working implementation already (inbound and outbound, streaming both ways, with barge-in) and am happy to open a PR. Opening the issue first per the contributing guide.