[Freeswitch-users] Presence Change Distribution

Jerry Richards jerry.richards at teotech.com
Wed Jan 27 11:56:53 PST 2010


There are two places in the XML body that are diffierent:
 
FS Rcvd PUBLISH has:  <rpid:away/> and <dm:note>Away</dm:note>
FS Sent NOTIFY   has:  <rpid:busy/> and <dm:note>Busy</dm:note>
 
This behavior (above) is why I'm not seeing the published presence at the
subscribing softphone.  FS should be sending the new Away status in the
NOTIFY message.
 
I did notice there is an "[ERR] sofia_presnece.c:674" FS log between the
PUBLISH and the NOTIFY (please see Line 89 of
http://pastebin.freeswitch.org/11953).  Line 674 is in the
sofia_presence_event_thread_run() function where it calls
switch_mutex_unlock(mod_sofia_globals.mutex).  Do you think this [ERR] is
related to why FS sends the previous status and not updated status?
 
Thanks And Best Regards,
Jerry
 

  _____  

From: Anthony Minessale [mailto:anthony.minessale at gmail.com] 
Sent: Tuesday, January 26, 2010 1:22 PM
To: freeswitch-users at lists.freeswitch.org
Subject: Re: [Freeswitch-users] Presence Change Distribution


its sending a notify to them right away (line 174 of your PB)
the xml in the notify we send looks the same as what they sent except one
thing 

They send: <rpid:away/>
We send: <rpid:busy/>

everybody who implements this seems to have their own idea of what to say
here.

This crazy xml presence crap is pure garbage so maybe that's it.

 


On Tue, Jan 26, 2010 at 3:02 PM, Jerry Richards <jerry.richards at teotech.com>
wrote:


Okay, I setup my FS to force SUBSCRIBE Expires to 3600 seconds.  Then I
captured a FS console trace of a Bria softphone changing it's presence state
from 'Busy' to 'Away' (see http://pastebin.freeswitch.org/11953) and
observed that the subscribing Bria softphone did not update to 'Away'.  At
the same time, I executed the sqlite3 app and pasted each of the 3 SQL
select statements I saw in the FS console log, and pasted them below.  I'm
new to sqlite3.  Do you see what my issue is?
 
sqlite>
sqlite> select
sip_subscriptions.proto,sip_subscriptions.sip_user,sip_subscriptions.sip_hos
t,sip_subscriptions.sub_to_user,sip_subscriptions.sub_to_host,sip_subscripti
ons.event,sip_subscriptions.contact,sip_subscriptions.call_id,sip_subscripti
ons.full_from,sip_subscriptions.full_via,sip_subscriptions.expires,sip_subsc
riptions.user_agent,sip_subscriptions.accept,sip_subscriptions.profile_name,
'Away','away','192.168.72.79',sip_presence.status,sip_presence.rpid from
sip_subscriptions left join sip_presence on
(sip_subscriptions.sub_to_user=sip_presence.sip_user and
sip_subscriptions.sub_to_host=sip_presence.sip_host and
sip_subscriptions.profile_name=sip_presence.profile_name) where
sip_subscriptions.expires > -1 and (event='presence' or event='presence')
and sub_to_user='5401' and (sub_to_host='192.168.72.79' or presence_hosts
like '%192.168.72.79%') and (sip_subscriptions.profile_name = 'internal' or
sip_subscriptions.presence_hosts != sip_subscriptions.sub_to_host);
sip|5382|192.168.72.79|5401|192.168.72.79|presence|"5382 on 79"
<sip:5382 at 192.168.72.150:34672>|ZTQ2ZWQwZGRlZjRiNTdkYTJjNGM5NTgzOWIyNmIwZmU.
|"5382 on 79" <sip:5382 at 192.168.72.79 <mailto:sip%3A5382 at 192.168.72.79>
>;tag=68bb4eb6|SIP/2.0/UDP
192.168.72.150:34672;branch=z9hG4bK-d8754z-eafc60166305eaef-1---d8754z-;rpor
t=34672|1264546204|Teo Softphone release 2.5.4 stamp
55958||internal|Away|away|192.168.72.79|Away|away
sqlite>
sqlite>
sqlite>
sqlite>
sqlite>
sqlite>
sqlite>
sqlite>
sqlite> select
sip_subscriptions.proto,sip_subscriptions.sip_user,sip_subscriptions.sip_hos
t,sip_subscriptions.sub_to_user,sip_subscriptions.sub_to_host,sip_subscripti
ons.event,sip_subscriptions.contact,sip_subscriptions.call_id,sip_subscripti
ons.full_from,sip_subscriptions.full_via,sip_subscriptions.expires,sip_subsc
riptions.user_agent,sip_subscriptions.accept,sip_subscriptions.profile_name,
'Away','away','192.168.72.79',sip_presence.status,sip_presence.rpid from
sip_subscriptions left join sip_presence on
(sip_subscriptions.sub_to_user=sip_presence.sip_user and
sip_subscriptions.sub_to_host=sip_presence.sip_host and
sip_subscriptions.profile_name=sip_presence.profile_name) where
sip_subscriptions.expires > -1 and (event='presence' or event='presence')
and sub_to_user='5401' and (sub_to_host='192.168.72.79' or presence_hosts
like '%192.168.72.79%') and (sip_subscriptions.profile_name =
'internal-ipv6' or sip_subscriptions.presence_hosts !=
sip_subscriptions.sub_to_host);
sqlite>
sqlite>
sqlite>
sqlite>
sqlite>
sqlite>
sqlite>
sqlite> select
sip_subscriptions.proto,sip_subscriptions.sip_user,sip_subscriptions.sip_hos
t,sip_subscriptions.sub_to_user,sip_subscriptions.sub_to_host,sip_subscripti
ons.event,sip_subscriptions.contact,sip_subscriptions.call_id,sip_subscripti
ons.full_from,sip_subscriptions.full_via,sip_subscriptions.expires,sip_subsc
riptions.user_agent,sip_subscriptions.accept,sip_subscriptions.profile_name,
'Away','away','192.168.72.79',sip_presence.status,sip_presence.rpid from
sip_subscriptions left join sip_presence on
(sip_subscriptions.sub_to_user=sip_presence.sip_user and
sip_subscriptions.sub_to_host=sip_presence.sip_host and
sip_subscriptions.profile_name=sip_presence.profile_name) where
sip_subscriptions.expires > -1 and (event='presence' or event='presence')
and sub_to_user='5401' and (sub_to_host='192.168.72.79' or presence_hosts
like '%192.168.72.79%') and (sip_subscriptions.profile_name = 'external' or
sip_subscriptions.presence_hosts != sip_subscriptions.sub_to_host);
sqlite>

Thanks and Best Regards,
Jerry


  _____  

From: Anthony Minessale [mailto:anthony.minessale at gmail.com] 
Sent: Monday, January 25, 2010 11:05 AM 

To: freeswitch-users at lists.freeswitch.org
Subject: Re: [Freeswitch-users] Presence Change Distribution


the notify will be instant after the publish
the notify you see are not triggered by the publish or they would be
instant.

Same drill, turn on presence debugging in sofia.conf.xml 
and look at the sql stmts and see why



On Mon, Jan 25, 2010 at 12:30 PM, Jerry Richards
<jerry.richards at teotech.com> wrote:


Okay, I notice that if I reduce the Presence SUBSCRIBE Expires duration
(from 3600 seconds to 60 seconds), then the delay between PUBLISH's and
NOTIFY's is reduced, but FS still waits nearly 45 seconds to send the
NOTIFY's after it receives a PUBLISH.
 
Can a change be made in FS so that NOTIFYs are sent as a direct result of
receipt of the PUBLISH message?  And not tied to the SUBSCRIBE expiration?
I really don't want to configure all my phones to re-subscribe every 30 or
15 seconds.
 
Thanks and Best Regards,
Jerry
 


  _____  

From: RobertT [mailto:siniypin at gmail.com] 
Sent: Tuesday, December 29, 2009 12:02 AM
To: freeswitch-users at lists.freeswitch.org
Subject: Re: [Freeswitch-users] Presence Change Distribution


You can try to reduce your registration time. 
I for one made my client apps send PUBLISH message every minute in addition
to reduced registration time.

Regards, Robert.


2009/12/28 Jerry Richards <jerry.richards at teotech.com>


Is there a setting to control how fast FS distributes presence changes to
subscribers?  Currently, it appears to take several minutes before I see
presence changes.  I would like to see them almost instantaneously, if
possible.

Thanks and Best Regards,
Jerry


_______________________________________________
FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org




_______________________________________________
FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org






-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
Twitter: http://twitter.com/FreeSWITCH_wire

AIM: anthm
MSN:anthony_minessale at hotmail.com
<mailto:MSN%3Aanthony_minessale at hotmail.com> 
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
<mailto:PAYPAL%3Aanthony.minessale at gmail.com> 
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
<mailto:sip%3A888 at conference.freeswitch.org> 
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
<mailto:googletalk%3Aconf%2B888 at conference.freeswitch.org> 
pstn:+19193869900



_______________________________________________
FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org






-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
Twitter: http://twitter.com/FreeSWITCH_wire

AIM: anthm
MSN:anthony_minessale at hotmail.com
<mailto:MSN%3Aanthony_minessale at hotmail.com> 
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
<mailto:PAYPAL%3Aanthony.minessale at gmail.com> 
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
<mailto:sip%3A888 at conference.freeswitch.org> 
iax:guest at conference.freeswitch.org/888
googletalk:conf+888 at conference.freeswitch.org
<mailto:googletalk%3Aconf%2B888 at conference.freeswitch.org> 
pstn:+19193869900


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20100127/441865e1/attachment-0002.html 


More information about the FreeSWITCH-users mailing list