Using WebRTC create a server that another WebRTC client can call along with some parameters that tell the server what service to apply to the call before sending the call on to a another WebRTC client. The service implemented by the server between the two clients could alter the audio stream in just one direction (stream from client 1 to client 2, or 2 to 1) or on both streams (1 to 2 AND 2 to 1) depending on parameters provided. The system will run in Linux if possible.
An example application is a translation service. The caller might indicate in-band (perhaps using DTMF) that he’d like to engage a voice translation application and that he’d like to use an English to German translation bi-directionally. The server would send the call an external application for English to German bi-directionally. The call to the application may indicate what OS “device” to listen to for English to German along with what device to put the result on plus which device to listen to for German to English and the destination device. The workings of the translation application are outside the scope of this application as the Media Relay Server is designed to over Universal Media Relay services.