When I send an INVITE I can see in SDP: Content-Type: application/sdp.. Content-Length: 204..204Contact: Andrea Girardi
^^^^^^^^^
Which version are you using? A quick guess is you are using a version prior to CVS/stable. Otherwise, it is an error.
This work correctly when USERA send an Invite to USERB, but when USERB send 200 ok this is the SDP: Content-Type: application/sdp.. Content-Length: 189.... v=0.. o=braies 0 0 IN IP4 192.168.0.98.. s=ScS Client.. c=IN IP4 192.168.0.98.. b=CT:1000.. t=0 0.. m=audio 57820 RTP/AVP 0 8 4.. a=rtpmap:0 PCMU/8000.. a=rtpmap:8 PCMA/8000.. a=rtpmap:4 G723/8000..
It's correct or User B has to change c field in SDP? How?
Hard to say if I don't know what the purpose of your doing is. Generaly, mangler is used to help clients behind a NAT to use fixed NAT bindings. You need to rewrite both requests for outgoing INVITEs as well as 200s for incoming calls.
Can I see a encoded contact (sip:enc_pref*username*ip*port*protocol@public_ip *) with xlog or simply in stderr?
no, xlog like other SER actions operates over the original message.
is it better to use nathelper or mangler?
that depends on what you want to do. nathelper is primarily good for public Internet service, mangler is good for a local installation behind a preconfigured NAT. You can use it for any other purpose too inventively and post new ideas to the list.
-jiri