If you are using asterisk to bridge calls then the voice traffic will
off course pass through the asterisk server.
It is because of this behaviour that we can use the conversatiion recording feature.
I don’t think that you can avoid this behaviour as the conversation is never
peer-to-peer in astersk.
Even if SIp and H323 use a different channel driver, you can use the same codec for both : disallow=all and allow=all in sip.conf and ooh323.conf.
In my case i add the “canreinvite=yes” in my sip accounts… and now RTP doesn’t pass trough Asterisk.
Now i’m trying to have exactly the same thing with h323 calls : first, i’m using the same codec, and second, i’m trying to find information about a “canreinvite” for ooh323…
If you want not to pass the rtp media (speech) through asterisk between a SIP terminal and a H323 terminal, then you need a proxy gateway. This proxy will be able to receive invites from SIP and H323 and then must be able to redirect the rtp flows between them after the call setup.
I think this feature is not available yet with Asterisk, as it converts the protocols between the channels. The transcoding of the codec or not (passthrough) is not relevant with the proxy as the end devices will handle this during the conversation. However, during call setup, the proxy can issue a fake codec to just satisfy the codec negotiation.
Of course it would be great to make it working with Asterisk, but as we can see, Yate doesn’t use any of the Asterisk functionalities…
at the moment, my only problem is to make gnugk working with asterisk (when a numer is composed from an H323 softphone, gnugk tells me that it’s impossible. so i think i should declare a route from gnugk to asterisk and vice versa )