Thanks for the suggestion. I added following lines to the config

#!define FLB_NATB 6
#!define FLB_NATSIPPING 7
# ----- nathelper params -----
modparam("nathelper", "natping_interval", 30)
modparam("nathelper", "ping_nated_only", 1)
modparam("nathelper", "sipping_bflag", FLB_NATSIPPING)
modparam("nathelper", "sipping_method", "INFO")
modparam("nathelper", "sipping_from", "sip:pinger@10.1.0.6")

# params needed for NAT traversal in other modules
modparam("nathelper|registrar", "received_avp", "$avp(RECEIVED)")
modparam("usrloc", "nat_bflag", FLB_NATB)

However, I do not see INFO messages from server to client in ngrep
Am I missing something else to configure here?

Thanks
Krish Kura

On Fri, Sep 30, 2011 at 2:52 AM, Daniel-Constantin Mierla <miconda@gmail.com> wrote:
Hello,


On 9/30/11 12:51 AM, Krishna Kurapati wrote:
Hi,

The iPhone client, when it goes into background, can only respond to incoming messages.
That makes the Registration expire when there is no communication from the server before
the expire time. I could make the Registration not expire at all. Not sure it's the only option.

Is there a way to send a Ping message from server periodically to the iPhone SIP client. This
will wakeup the SIP client and resend REGISTER message.

you can set the nat_bflag (see usrloc module) to mark the registration as being natted. Then use nathelper module mark it to send OPTIONS ping (sipping_bflag parameter).

http://kamailio.org/docs/modules/stable/modules_k/usrloc.html
http://kamailio.org/docs/modules/stable/modules_k/nathelper.html

Cheers,
Daniel
-- 
Daniel-Constantin Mierla -- http://www.asipto.com
Kamailio Advanced Training, Oct 10-13, Berlin: http://asipto.com/u/kat
http://linkedin.com/in/miconda -- http://twitter.com/miconda