Hello, Well, your question is not that easy. I see two ways to accomplish your task - short and long.
Short way: you should move MprDecodeInBandDtmf to MpCallFlowGraph. So, you'll have array, similar to mpInputConnections: MprDecodeInBandDtmf* mpInbandDtmfDecoders[MAX_CONNECTIONS]; and you'll create/add/link/remove/destroy DTMF decoders along with connections. In this case you should manually wire in them between MpRtpInputAudioConnection and MprBridge (in MpCallFlowGraph::createConnection()). This way is relatively short (comparing to second way) Long way: you should refactor MpRtpInputAudioConnection to be just lightweight container of resources. That is it will add/remove resources to flowgraph and connect them in response to respective actions on itself. I.e. it will add/remove contained resources to flowgraph in response to MpResource::setFlowGraph() and connect them in response to MpResource::connectInput()/connectOutput(). And then it will be possible to simply add MprDecodeInBandDtmf to MpRtpInputAudioConnection to get it working. :) If you'll choose long way, I could write elaborated plan. And short way is not that hard to implement, I hope. -- Regards, Alexander Chemeris. SIPez LLC. SIP VoIP, IM and Presence Consulting http://www.SIPez.com tel: +1 (617) 273-4000 _______________________________________________ sipxtapi-dev mailing list [email protected] List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/
