I was wondering if anyone has gotten the presence module working with openser. The reason I ask is because I've been trying to make it work for 2 weeks without any luck, and at this point, I can't figure out what I'm doing wrong.
This is my setup:
I have a debian 4.0, running openser 1.3.0-dev11-notls [svnrevision: 2:2607M] also tried with 2327 Compiled with mysql, presence, mi_xmlrpc, presence xml modules. Also have the xcap-lite server set up.
My configuration looks like this: [just the related stuff]
# -- mi_xmlrpc params --
modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") modparam("mi_xmlrpc", "port", 9090)
# -- presence params -- modparam("presence", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence", "presentity_table", "presentity") modparam("presence", "active_watchers_table", "active_watchers") modparam("presence", "watchers_table", "watchers") modparam("presence", "clean_period", 100) modparam("presence", "to_tag_pref", 'a') modparam("presence", "expires_offset", 10) modparam("presence", "max_expires", 3600) modparam("presence", "server_address", "sip:presense_server_ip:5065") #modparam("presence", "xcap_table", "xcap_xml")
# -- presence_xml params modparam("presence_xml", "force_active", 0) modparam("presence_xml", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence_xml", "xcap_table", "xcap_xml") modparam("presence_xml", "pidf_manipulation", 1)
# presence handling route route[2] { # absorb retransmissions if (! t_newtran()) { sl_reply_error(); exit; };
if(is_method("PUBLISH")) { if($hdr(Sender)!= NULL) handle_publish("$hdr(Sender)"); else handle_publish(""); t_release(); } else if( is_method("SUBSCRIBE")) { handle_subscribe(); t_release(); };
exit; }
The presentity does get updated when I change my status.
Ie: <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:pp="urn:ietf:params:xml:ns:pidf:person" xmlns:et="urn:ietf:params:xml:ns:pidf:rpid:rpid-tuple" xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person" xmlns:es="urn:ietf:params:xml:ns:pidf:rpid:status:rpid-status" xmlns:ci="urn:ietf:params:xml:ns:pidf:cipid" entity="sip:10000010002@216.xxx.xxx.xxx"> pp:person <status> ep:activities ep:busy/ </ep:activities> </status> </pp:person> <note>Busy</note> <tuple id="e2438d66"> <contact priority="1">sip:10000010002@216.xxx.xxx.xxx</contact> <status> <basic>open</basic> </status> </tuple> </presence>
But if I add this line into another account running eyebeam, ie: account 10000010001, it doesn't get a notify with my new status. So I have it "sort" of working, yet the notifies are not.
My Server set up is as follows: Ser Main Server <---> Openser Presence Server fwd subscribes and notifies to openser presence server using the forward(); method.
This is the debug log from openser, for when I change my status.
If someone has any idea of what's wrong or has make it work, I'd really appreciate any advice.
SIP Request: method: <PUBLISH> uri: sip:10000010002@216.151.151.100 version: <SIP/2.0> parse_headers: flags=2 Found param type 232, <branch> = <z9hG4bK4dfb.d33c6ba1b93007191109f843acc1462e.0>; state=16 end of header reached, state=5 parse_headers: Via found, flags=2 parse_headers: this is the first via After parse_msg... preparing to run routing scripts... parse_headers: flags=100 Found param type 234, <received> = <74.1.66.114>; state=6 Found param type 232, <branch> = <z9hG4bK-d87543-6a194925c74e4c78-1--d87543->; state=6 Found param type 235, <rport> = <6937>; state=16 end of header reached, state=5 parse_headers: Via found, flags=100 parse_headers: this is the second via Aug 16 07:06:38 [8788] DBG:maxfwd:is_maxfwd_present: value = 70 DEBUG: t_newtran: T on entrance=0xffffffff parse_headers: flags=ffffffffffffffff DEBUG:parse_to:end of header reached, state=10 DBUG:parse_to: display={}, ruri={sip:10000010002@216.151.151.100} DEBUG: get_hdr_field: <To> [35]; uri=[sip:10000010002@216.151.151.100] DEBUG: to body [sip:10000010002@216.151.151.100 ] get_hdr_field: cseq <CSeq>: <2> <PUBLISH> DEBUG: get_hdr_body : content_length=772 found end of header parse_headers: flags=78 t_lookup_request: start searching: hash=49108, isACK=0 DEBUG: RFC3261 transaction matching failed DEBUG: t_lookup_request: no transaction found parse_headers: flags=ffffffffffffffff parse_headers: flags=ffffffffffffffff PRESENCE:search_event... PRESENCE:handle_publish: SIP-If-Match found PRESENCE:handle_publish: existing etag = a.1187271113.8763.46.0 PRESENCE: handle_publish: 'expires' found PRESENCE: handle_publish: lexpire= 3600 parse_headers: flags=ffffffffffffffff parse_headers: flags=ffffffffffffffff PRESENCE: new_presentity:init_len= 142 size= 93 PRESENCE:update_presentity: querying presentity DEBUG:db_free_rows: Freeing 1 rows DEBUG:db_free_row: Row[0]=0x815d848 DEBUG:db_free_rows: 0x815d848=pkg_free() RES_ROWS PRESENCE: generate_ETag: etag= a.1187273178.8788.3.1 / 21 PRESENCE:update_presentity: new etag = a.1187273178.8788.3.1 PRESENCE:publ_send200ok: send 200OK reply PRESENCE:publ_send200ok: etag= a.1187273178.8788.3.1 - len= 21 parse_headers: flags=ffffffffffffffff check_via_address(216.151.151.100, 216.151.151.100, 0) presence:uandd_to_uri: uri=sip:10000010002@216.151.151.100 PRESENCE: publ_notify: Could not find subs_dialog DEBUG: cleanup_uac_timers: RETR/FR timers reset DEBUG: add_to_tail_of_timer[2]: 0xb59d6518 (25) DEBUG:tm:UNREF_UNSAFE: after is 0 DEBUG:destroy_avp_list: destroying list (nil) receive_msg: cleaning up SIP Request: method: <PUBLISH> uri: sip:10000010001@216.151.151.100 version: <SIP/2.0> parse_headers: flags=2 Found param type 232, <branch> = <z9hG4bK7936.faaa924e40db7cae4b0e70aeb7b51182.0>; state=16 end of header reached, state=5 parse_headers: Via found, flags=2 parse_headers: this is the first via After parse_msg... preparing to run routing scripts... parse_headers: flags=100 Found param type 234, <received> = <74.1.66.114>; state=6 Found param type 232, <branch> = <z9hG4bK-d87543-294e3c7ecc6c3561-1--d87543->; state=6 Found param type 235, <rport> = <9296>; state=16 end of header reached, state=5 parse_headers: Via found, flags=100 parse_headers: this is the second via Aug 16 07:06:39 [8788] DBG:maxfwd:is_maxfwd_present: value = 70 DEBUG: t_newtran: T on entrance=0xffffffff parse_headers: flags=ffffffffffffffff DEBUG:parse_to:end of header reached, state=10 DBUG:parse_to: display={}, ruri={sip:10000010001@216.151.151.100} DEBUG: get_hdr_field: <To> [35]; uri=[sip:10000010001@216.151.151.100] DEBUG: to body [sip:10000010001@216.151.151.100 ] get_hdr_field: cseq <CSeq>: <34> <PUBLISH> DEBUG: get_hdr_body : content_length=0 found end of header parse_headers: flags=78 t_lookup_request: start searching: hash=25495, isACK=0 DEBUG: RFC3261 transaction matching failed DEBUG: t_lookup_request: no transaction found parse_headers: flags=ffffffffffffffff parse_headers: flags=ffffffffffffffff PRESENCE:search_event... PRESENCE:handle_publish: SIP-If-Match found PRESENCE:handle_publish: existing etag = a.1187200063.27795.7638.32 PRESENCE: handle_publish: 'expires' found PRESENCE: handle_publish: lexpire= 60 PRESENCE: new_presentity:init_len= 146 size= 97 PRESENCE:update_presentity: querying presentity DEBUG:db_free_rows: Freeing 1 rows DEBUG:db_free_row: Row[0]=0x815d828 DEBUG:db_free_rows: 0x815d828=pkg_free() RES_ROWS PRESENCE: generate_ETag: etag= a.1187273178.8788.4.33 / 22 PRESENCE:update_presentity: new etag = a.1187273178.8788.4.33 PRESENCE:publ_send200ok: send 200OK reply PRESENCE:publ_send200ok: etag= a.1187273178.8788.4.33 - len= 22 parse_headers: flags=ffffffffffffffff check_via_address(216.151.151.100, 216.151.151.100, 0) DEBUG: cleanup_uac_timers: RETR/FR timers reset DEBUG: add_to_tail_of_timer[2]: 0xb59d7d48 (25) DEBUG:tm:UNREF_UNSAFE: after is 0 DEBUG:destroy_avp_list: destroying list (nil) receive_msg: cleaning up SIP Request: method: <PUBLISH> uri: sip:16196393459@216.151.143.69 version: <SIP/2.0> parse_headers: flags=2 Found param type 232, <branch> = <z9hG4bKb655.5b8160680f2305b89dfda92f6199df18.0>; state=16 end of header reached, state=5 parse_headers: Via found, flags=2 parse_headers: this is the first via After parse_msg... preparing to run routing scripts... parse_headers: flags=100 Found param type 234, <received> = <74.1.66.114>; state=6 Found param type 235, <rport> = <1157>; state=6 Found param type 232, <branch> = <z9hG4bK514376579>; state=16 end of header reached, state=5 parse_headers: Via found, flags=100 parse_headers: this is the second via DEBUG:parse_to:end of header reached, state=10 DBUG:parse_to: display={}, ruri={sip:16196393459@216.151.143.69} DEBUG: get_hdr_field: <To> [34]; uri=[sip:16196393459@216.151.143.69] DEBUG: to body [sip:16196393459@216.151.143.69 ] get_hdr_field: cseq <CSeq>: <20> <PUBLISH> Aug 16 07:06:40 [8788] DBG:maxfwd:is_maxfwd_present: value = 70 DEBUG: t_newtran: T on entrance=0xffffffff parse_headers: flags=ffffffffffffffff DEBUG: get_hdr_body : content_length=253 found end of header parse_headers: flags=78 t_lookup_request: start searching: hash=21867, isACK=0 DEBUG: RFC3261 transaction matching failed DEBUG: t_lookup_request: no transaction found parse_headers: flags=ffffffffffffffff parse_headers: flags=ffffffffffffffff PRESENCE:search_event... PRESENCE:handle_publish: SIP-If-Match not found PRESENCE: generate_ETag: etag= a.1187273178.8788.5.0 / 21 PRESENCE:handle_publish: new etag = a.1187273178.8788.5.0 PRESENCE: handle_publish: 'expires' not found; default=3600 parse_headers: flags=ffffffffffffffff parse_headers: flags=ffffffffffffffff PRESENCE: new_presentity:init_len= 140 size= 91 PRESENCE:update_presentity: inserting 7 cols into table PRESENCE:publ_send200ok: send 200OK reply PRESENCE:publ_send200ok: etag= a.1187273178.8788.5.0 - len= 21 parse_headers: flags=ffffffffffffffff check_via_address(216.151.143.69, 216.151.143.69, 0) presence:uandd_to_uri: uri=sip:16196393459@216.151.143.69 PRESENCE: publ_notify: Could not find subs_dialog DEBUG: cleanup_uac_timers: RETR/FR timers reset DEBUG: add_to_tail_of_timer[2]: 0xb59d95f0 (27) DEBUG:tm:UNREF_UNSAFE: after is 0 DEBUG:destroy_avp_list: destroying list (nil) receive_msg: cleaning up
Hello,
Are you using an xcap server to work with openser? If not, you should set force_active parameter to 1.
modparam("presence_xml", "force_active", 1).
regards,
Anca Vamanu
Jorge Guntanis wrote:
I was wondering if anyone has gotten the presence module working with openser. The reason I ask is because I've been trying to make it work for 2 weeks without any luck, and at this point, I can't figure out what I'm doing wrong.
This is my setup:
I have a debian 4.0, running openser 1.3.0-dev11-notls [svnrevision: 2:2607M] also tried with 2327 Compiled with mysql, presence, mi_xmlrpc, presence xml modules. Also have the xcap-lite server set up.
My configuration looks like this: [just the related stuff]
# -- mi_xmlrpc params --
modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") modparam("mi_xmlrpc", "port", 9090)
# -- presence params -- modparam("presence", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence", "presentity_table", "presentity") modparam("presence", "active_watchers_table", "active_watchers") modparam("presence", "watchers_table", "watchers") modparam("presence", "clean_period", 100) modparam("presence", "to_tag_pref", 'a') modparam("presence", "expires_offset", 10) modparam("presence", "max_expires", 3600) modparam("presence", "server_address", "sip:presense_server_ip:5065") #modparam("presence", "xcap_table", "xcap_xml")
# -- presence_xml params modparam("presence_xml", "force_active", 0) modparam("presence_xml", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence_xml", "xcap_table", "xcap_xml") modparam("presence_xml", "pidf_manipulation", 1)
# presence handling route route[2] { # absorb retransmissions if (! t_newtran()) { sl_reply_error(); exit; };
if(is_method("PUBLISH")) { if($hdr(Sender)!= NULL) handle_publish("$hdr(Sender)"); else handle_publish(""); t_release(); } else if( is_method("SUBSCRIBE")) { handle_subscribe(); t_release(); }; exit;
}
The presentity does get updated when I change my status.
Ie: <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:pp="urn:ietf:params:xml:ns:pidf:person" xmlns:et="urn:ietf:params:xml:ns:pidf:rpid:rpid-tuple" xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person" xmlns:es="urn:ietf:params:xml:ns:pidf:rpid:status:rpid-status" xmlns:ci="urn:ietf:params:xml:ns:pidf:cipid" entity="sip:10000010002@216.xxx.xxx.xxx"> pp:person
<status> <ep:activities> <ep:busy/> </ep:activities> </status> </pp:person> <note>Busy</note> <tuple id="e2438d66"> <contact priority="1">sip:10000010002@216.xxx.xxx.xxx</contact> <status> <basic>open</basic> </status> </tuple> </presence>
But if I add this line into another account running eyebeam, ie: account 10000010001, it doesn't get a notify with my new status. So I have it "sort" of working, yet the notifies are not.
My Server set up is as follows: Ser Main Server <---> Openser Presence Server fwd subscribes and notifies to openser presence server using the forward(); method.
This is the debug log from openser, for when I change my status.
If someone has any idea of what's wrong or has make it work, I'd really appreciate any advice.
Yup, at least I think so. This is the config for xcap-lite
$XcapServerConfig=array( 'debug' => true, 'realms' => array( 'default' => array ( 'AuthOptions' => array(
'dsn' => 'mysql://openser:openserrw@localhost/openser',
'table' => 'subscriber',
'usernamecol' => 'username',
'passwordcol' => 'password',
'cryptType' => 'none',
'db_fields' => 'domain'
), 'StorageDSN' => 'mysql://openser:openserrw@localhost/openser', 'trustedPeers' => array(), 'xcap-root' => array('http://xcap.mydomain.com/xcap-root'),
'refreshWatchersURL' => '192.168.0.2:9090' ), )
);
Is there anything I need to configure in the openser config file other than: modparam("mi_xmlrpc", "port", 9090)
Thanks for your help.
Jorge -----Original Message----- From: Anca-Maria Vamanu [mailto:anca@voice-system.ro] Sent: Friday, August 17, 2007 1:05 AM To: Jorge Guntanis Cc: users@openser.org Subject: Re: [OpenSER-Users] Presence Working?
Hello,
Are you using an xcap server to work with openser? If not, you should set force_active parameter to 1.
modparam("presence_xml", "force_active", 1).
regards,
Anca Vamanu
Jorge Guntanis wrote:
I was wondering if anyone has gotten the presence module working with openser. The reason I ask is because I've been trying to make it work for 2
weeks
without any luck, and at this point, I can't figure out what I'm doing wrong.
This is my setup:
I have a debian 4.0, running openser 1.3.0-dev11-notls [svnrevision: 2:2607M] also tried with 2327 Compiled with mysql, presence, mi_xmlrpc, presence xml modules. Also have the xcap-lite server set up.
My configuration looks like this: [just the related stuff]
# -- mi_xmlrpc params --
modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") modparam("mi_xmlrpc", "port", 9090)
# -- presence params -- modparam("presence", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence", "presentity_table", "presentity") modparam("presence", "active_watchers_table", "active_watchers") modparam("presence", "watchers_table", "watchers") modparam("presence", "clean_period", 100) modparam("presence", "to_tag_pref", 'a') modparam("presence", "expires_offset", 10) modparam("presence", "max_expires", 3600) modparam("presence", "server_address", "sip:presense_server_ip:5065") #modparam("presence", "xcap_table", "xcap_xml")
# -- presence_xml params modparam("presence_xml", "force_active", 0) modparam("presence_xml", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence_xml", "xcap_table", "xcap_xml") modparam("presence_xml", "pidf_manipulation", 1)
# presence handling route route[2] { # absorb retransmissions if (! t_newtran()) { sl_reply_error(); exit; };
if(is_method("PUBLISH")) { if($hdr(Sender)!= NULL) handle_publish("$hdr(Sender)"); else handle_publish(""); t_release(); } else if( is_method("SUBSCRIBE")) { handle_subscribe(); t_release(); }; exit;
}
The presentity does get updated when I change my status.
Ie: <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:pp="urn:ietf:params:xml:ns:pidf:person" xmlns:et="urn:ietf:params:xml:ns:pidf:rpid:rpid-tuple" xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person" xmlns:es="urn:ietf:params:xml:ns:pidf:rpid:status:rpid-status" xmlns:ci="urn:ietf:params:xml:ns:pidf:cipid" entity="sip:10000010002@216.xxx.xxx.xxx"> pp:person
<status> <ep:activities> <ep:busy/> </ep:activities> </status> </pp:person> <note>Busy</note> <tuple id="e2438d66"> <contact priority="1">sip:10000010002@216.xxx.xxx.xxx</contact> <status> <basic>open</basic> </status> </tuple> </presence>
But if I add this line into another account running eyebeam, ie: account 10000010001, it doesn't get a notify with my new status. So I have it "sort" of working, yet the notifies are not.
My Server set up is as follows: Ser Main Server <---> Openser Presence Server fwd subscribes and notifies to openser presence server using the forward(); method.
This is the debug log from openser, for when I change my status.
If someone has any idea of what's wrong or has make it work, I'd really appreciate any advice.
Also may be you can clarify this for me.
When using force_active=1 is this the behavior: instead of querying for permissions to see presence of other phones, it will just query the presentity table, and return the xml on the body column on a notify, and add the uri in the watcher's table so on future publishes they get "notified"?
Am I getting the concept correctly?
Best Regards, Jorge
-----Original Message----- From: users-bounces@openser.org [mailto:users-bounces@openser.org] On Behalf Of Jorge Guntanis Sent: Friday, August 17, 2007 1:15 AM To: Anca-Maria Vamanu Cc: users@openser.org Subject: RE: [OpenSER-Users] Presence Working?
Yup, at least I think so. This is the config for xcap-lite
$XcapServerConfig=array( 'debug' => true, 'realms' => array( 'default' => array ( 'AuthOptions' => array(
'dsn' => 'mysql://openser:openserrw@localhost/openser',
'table' => 'subscriber',
'usernamecol' => 'username',
'passwordcol' => 'password',
'cryptType' => 'none',
'db_fields' => 'domain'
), 'StorageDSN' => 'mysql://openser:openserrw@localhost/openser', 'trustedPeers' => array(), 'xcap-root' => array('http://xcap.mydomain.com/xcap-root'),
'refreshWatchersURL' => '192.168.0.2:9090' ), )
);
Is there anything I need to configure in the openser config file other than: modparam("mi_xmlrpc", "port", 9090)
Thanks for your help.
Jorge -----Original Message----- From: Anca-Maria Vamanu [mailto:anca@voice-system.ro] Sent: Friday, August 17, 2007 1:05 AM To: Jorge Guntanis Cc: users@openser.org Subject: Re: [OpenSER-Users] Presence Working?
Hello,
Are you using an xcap server to work with openser? If not, you should set force_active parameter to 1.
modparam("presence_xml", "force_active", 1).
regards,
Anca Vamanu
Jorge Guntanis wrote:
I was wondering if anyone has gotten the presence module working with openser. The reason I ask is because I've been trying to make it work for 2
weeks
without any luck, and at this point, I can't figure out what I'm doing wrong.
This is my setup:
I have a debian 4.0, running openser 1.3.0-dev11-notls [svnrevision: 2:2607M] also tried with 2327 Compiled with mysql, presence, mi_xmlrpc, presence xml modules. Also have the xcap-lite server set up.
My configuration looks like this: [just the related stuff]
# -- mi_xmlrpc params --
modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") modparam("mi_xmlrpc", "port", 9090)
# -- presence params -- modparam("presence", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence", "presentity_table", "presentity") modparam("presence", "active_watchers_table", "active_watchers") modparam("presence", "watchers_table", "watchers") modparam("presence", "clean_period", 100) modparam("presence", "to_tag_pref", 'a') modparam("presence", "expires_offset", 10) modparam("presence", "max_expires", 3600) modparam("presence", "server_address", "sip:presense_server_ip:5065") #modparam("presence", "xcap_table", "xcap_xml")
# -- presence_xml params modparam("presence_xml", "force_active", 0) modparam("presence_xml", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence_xml", "xcap_table", "xcap_xml") modparam("presence_xml", "pidf_manipulation", 1)
# presence handling route route[2] { # absorb retransmissions if (! t_newtran()) { sl_reply_error(); exit; };
if(is_method("PUBLISH")) { if($hdr(Sender)!= NULL) handle_publish("$hdr(Sender)"); else handle_publish(""); t_release(); } else if( is_method("SUBSCRIBE")) { handle_subscribe(); t_release(); }; exit;
}
The presentity does get updated when I change my status.
Ie: <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:pp="urn:ietf:params:xml:ns:pidf:person" xmlns:et="urn:ietf:params:xml:ns:pidf:rpid:rpid-tuple" xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person" xmlns:es="urn:ietf:params:xml:ns:pidf:rpid:status:rpid-status" xmlns:ci="urn:ietf:params:xml:ns:pidf:cipid" entity="sip:10000010002@216.xxx.xxx.xxx"> pp:person
<status> <ep:activities> <ep:busy/> </ep:activities> </status> </pp:person> <note>Busy</note> <tuple id="e2438d66"> <contact priority="1">sip:10000010002@216.xxx.xxx.xxx</contact> <status> <basic>open</basic> </status> </tuple> </presence>
But if I add this line into another account running eyebeam, ie: account 10000010001, it doesn't get a notify with my new status. So I have it "sort" of working, yet the notifies are not.
My Server set up is as follows: Ser Main Server <---> Openser Presence Server fwd subscribes and notifies to openser presence server using the forward(); method.
This is the debug log from openser, for when I change my status.
If someone has any idea of what's wrong or has make it work, I'd really appreciate any advice.
_______________________________________________ Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Hello,
If force active is set, there is no query in xcap_xml table and the status is considered 'active'. However, the first subscription is sent with status pending to anounce clients that a new contact should be added if not already in list. The watchers table, which stores the present state of a subscription is used only to insert a new record or update the state. No fetching is done when force_active is set. Basically, if you use force active , the state will be active and Notifies with all changes will be sent.
regards,
Anca Vamanu
Jorge Guntanis wrote:
Also may be you can clarify this for me.
When using force_active=1 is this the behavior: instead of querying for permissions to see presence of other phones, it will just query the presentity table, and return the xml on the body column on a notify, and add the uri in the watcher's table so on future publishes they get "notified"?
Am I getting the concept correctly?
Best Regards, Jorge
-----Original Message----- From: users-bounces@openser.org [mailto:users-bounces@openser.org] On Behalf Of Jorge Guntanis Sent: Friday, August 17, 2007 1:15 AM To: Anca-Maria Vamanu Cc: users@openser.org Subject: RE: [OpenSER-Users] Presence Working?
Yup, at least I think so. This is the config for xcap-lite
$XcapServerConfig=array( 'debug' => true, 'realms' => array( 'default' => array ( 'AuthOptions' => array(
'dsn' => 'mysql://openser:openserrw@localhost/openser',
'table' => 'subscriber',
'usernamecol' => 'username',
'passwordcol' => 'password',
'cryptType' => 'none',
'db_fields' => 'domain'
), 'StorageDSN' => 'mysql://openser:openserrw@localhost/openser', 'trustedPeers' => array(), 'xcap-root' => array('http://xcap.mydomain.com/xcap-root'),
'refreshWatchersURL' => '192.168.0.2:9090' ), )
);
Is there anything I need to configure in the openser config file other than: modparam("mi_xmlrpc", "port", 9090)
Thanks for your help.
Jorge -----Original Message----- From: Anca-Maria Vamanu [mailto:anca@voice-system.ro] Sent: Friday, August 17, 2007 1:05 AM To: Jorge Guntanis Cc: users@openser.org Subject: Re: [OpenSER-Users] Presence Working?
Hello,
Are you using an xcap server to work with openser? If not, you should set force_active parameter to 1.
modparam("presence_xml", "force_active", 1).
regards,
Anca Vamanu
Jorge Guntanis wrote:
I was wondering if anyone has gotten the presence module working with openser. The reason I ask is because I've been trying to make it work for 2
weeks
without any luck, and at this point, I can't figure out what I'm doing wrong.
This is my setup:
I have a debian 4.0, running openser 1.3.0-dev11-notls [svnrevision: 2:2607M] also tried with 2327 Compiled with mysql, presence, mi_xmlrpc, presence xml modules. Also have the xcap-lite server set up.
My configuration looks like this: [just the related stuff]
# -- mi_xmlrpc params --
modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") modparam("mi_xmlrpc", "port", 9090)
# -- presence params -- modparam("presence", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence", "presentity_table", "presentity") modparam("presence", "active_watchers_table", "active_watchers") modparam("presence", "watchers_table", "watchers") modparam("presence", "clean_period", 100) modparam("presence", "to_tag_pref", 'a') modparam("presence", "expires_offset", 10) modparam("presence", "max_expires", 3600) modparam("presence", "server_address", "sip:presense_server_ip:5065") #modparam("presence", "xcap_table", "xcap_xml")
# -- presence_xml params modparam("presence_xml", "force_active", 0) modparam("presence_xml", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence_xml", "xcap_table", "xcap_xml") modparam("presence_xml", "pidf_manipulation", 1)
# presence handling route route[2] { # absorb retransmissions if (! t_newtran()) { sl_reply_error(); exit; };
if(is_method("PUBLISH")) { if($hdr(Sender)!= NULL) handle_publish("$hdr(Sender)"); else handle_publish(""); t_release(); } else if( is_method("SUBSCRIBE")) { handle_subscribe(); t_release(); }; exit;
}
The presentity does get updated when I change my status.
Ie: <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:pp="urn:ietf:params:xml:ns:pidf:person" xmlns:et="urn:ietf:params:xml:ns:pidf:rpid:rpid-tuple" xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person" xmlns:es="urn:ietf:params:xml:ns:pidf:rpid:status:rpid-status" xmlns:ci="urn:ietf:params:xml:ns:pidf:cipid" entity="sip:10000010002@216.xxx.xxx.xxx"> pp:person
<status> <ep:activities> <ep:busy/> </ep:activities> </status> </pp:person> <note>Busy</note> <tuple id="e2438d66"> <contact priority="1">sip:10000010002@216.xxx.xxx.xxx</contact> <status> <basic>open</basic> </status> </tuple> </presence>
But if I add this line into another account running eyebeam, ie: account 10000010001, it doesn't get a notify with my new status. So I have it "sort" of working, yet the notifies are not.
My Server set up is as follows: Ser Main Server <---> Openser Presence Server fwd subscribes and notifies to openser presence server using the forward(); method.
This is the debug log from openser, for when I change my status.
If someone has any idea of what's wrong or has make it work, I'd really appreciate any advice.
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
What would be the ups and downs of using an XCAP server, in a scenario that I don't need to authenticate the users?
Also, have anyone tested this with Polycom phones? If not, I'd be more than happy to collaborate with that, I can also collaborate with Cisco IP Phones.
Best. Jorge -----Original Message----- From: Anca-Maria Vamanu [mailto:anca@voice-system.ro] Sent: Friday, August 17, 2007 2:07 AM To: Jorge Guntanis Cc: users@openser.org Subject: Re: [OpenSER-Users] Presence Working?
Hello,
If force active is set, there is no query in xcap_xml table and the status is considered 'active'. However, the first subscription is sent with status pending to anounce clients that a new contact should be added if not already in list. The watchers table, which stores the present state of a subscription is used only to insert a new record or update the state. No fetching is done when force_active is set. Basically, if you use force active , the state will be active and Notifies with all changes will be sent.
regards,
Anca Vamanu
Jorge Guntanis wrote:
Also may be you can clarify this for me.
When using force_active=1 is this the behavior: instead of querying for permissions to see presence of other phones, it will just query the presentity table, and return the xml on the body column on a notify,
and
add the uri in the watcher's table so on future publishes they get "notified"?
Am I getting the concept correctly?
Best Regards, Jorge
-----Original Message----- From: users-bounces@openser.org [mailto:users-bounces@openser.org] On Behalf Of Jorge Guntanis Sent: Friday, August 17, 2007 1:15 AM To: Anca-Maria Vamanu Cc: users@openser.org Subject: RE: [OpenSER-Users] Presence Working?
Yup, at least I think so. This is the config for xcap-lite
$XcapServerConfig=array( 'debug' => true, 'realms' => array( 'default' => array ( 'AuthOptions' => array(
'dsn' => 'mysql://openser:openserrw@localhost/openser',
'table' => 'subscriber',
'usernamecol' => 'username',
'passwordcol' => 'password',
'cryptType' => 'none',
'db_fields' => 'domain'
), 'StorageDSN' => 'mysql://openser:openserrw@localhost/openser', 'trustedPeers' => array(), 'xcap-root'
=>
array('http://xcap.mydomain.com/xcap-root'),
'refreshWatchersURL' => '192.168.0.2:9090' ), )
);
Is there anything I need to configure in the openser config file other than: modparam("mi_xmlrpc", "port", 9090)
Thanks for your help.
Jorge -----Original Message----- From: Anca-Maria Vamanu [mailto:anca@voice-system.ro] Sent: Friday, August 17, 2007 1:05 AM To: Jorge Guntanis Cc: users@openser.org Subject: Re: [OpenSER-Users] Presence Working?
Hello,
Are you using an xcap server to work with openser? If not, you should set force_active parameter to 1.
modparam("presence_xml", "force_active", 1).
regards,
Anca Vamanu
Jorge Guntanis wrote:
I was wondering if anyone has gotten the presence module working with openser. The reason I ask is because I've been trying to make it work for 2
weeks
without any luck, and at this point, I can't figure out what I'm doing wrong.
This is my setup:
I have a debian 4.0, running openser 1.3.0-dev11-notls [svnrevision: 2:2607M] also tried with 2327 Compiled with mysql, presence, mi_xmlrpc, presence xml modules. Also have the xcap-lite server set up.
My configuration looks like this: [just the related stuff]
# -- mi_xmlrpc params --
modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") modparam("mi_xmlrpc", "port", 9090)
# -- presence params -- modparam("presence", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence", "presentity_table", "presentity") modparam("presence", "active_watchers_table", "active_watchers") modparam("presence", "watchers_table", "watchers") modparam("presence", "clean_period", 100) modparam("presence", "to_tag_pref", 'a') modparam("presence", "expires_offset", 10) modparam("presence", "max_expires", 3600) modparam("presence", "server_address", "sip:presense_server_ip:5065") #modparam("presence", "xcap_table", "xcap_xml")
# -- presence_xml params modparam("presence_xml", "force_active", 0) modparam("presence_xml", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence_xml", "xcap_table", "xcap_xml") modparam("presence_xml", "pidf_manipulation", 1)
# presence handling route route[2] { # absorb retransmissions if (! t_newtran()) { sl_reply_error(); exit; };
if(is_method("PUBLISH")) { if($hdr(Sender)!= NULL) handle_publish("$hdr(Sender)"); else handle_publish(""); t_release(); } else if( is_method("SUBSCRIBE")) { handle_subscribe(); t_release(); }; exit;
}
The presentity does get updated when I change my status.
Ie: <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:pp="urn:ietf:params:xml:ns:pidf:person" xmlns:et="urn:ietf:params:xml:ns:pidf:rpid:rpid-tuple" xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person" xmlns:es="urn:ietf:params:xml:ns:pidf:rpid:status:rpid-status" xmlns:ci="urn:ietf:params:xml:ns:pidf:cipid" entity="sip:10000010002@216.xxx.xxx.xxx"> pp:person
<status> <ep:activities> <ep:busy/> </ep:activities> </status> </pp:person> <note>Busy</note> <tuple id="e2438d66"> <contact priority="1">sip:10000010002@216.xxx.xxx.xxx</contact> <status> <basic>open</basic> </status> </tuple> </presence>
But if I add this line into another account running eyebeam, ie: account 10000010001, it doesn't get a notify with my new status. So I have it "sort" of working, yet the notifies are not.
My Server set up is as follows: Ser Main Server <---> Openser Presence Server fwd subscribes and notifies to openser presence server using the forward(); method.
This is the debug log from openser, for when I change my status.
If someone has any idea of what's wrong or has make it work, I'd
really
appreciate any advice.
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
I got it to work, works great, the only problem [which I know is not really related with the presence module] is that it doesn't work from nated IPs. Can someone point me in the right direction on setting this up? Considering that the pakets are being forwarded to a second server?
Best Regards,
Jorge
-----Original Message----- From: Anca-Maria Vamanu [mailto:anca@voice-system.ro] Sent: Friday, August 17, 2007 2:07 AM To: Jorge Guntanis Cc: users@openser.org Subject: Re: [OpenSER-Users] Presence Working?
Hello,
If force active is set, there is no query in xcap_xml table and the status is considered 'active'. However, the first subscription is sent with status pending to anounce clients that a new contact should be added if not already in list. The watchers table, which stores the present state of a subscription is used only to insert a new record or update the state. No fetching is done when force_active is set. Basically, if you use force active , the state will be active and Notifies with all changes will be sent.
regards,
Anca Vamanu
Jorge Guntanis wrote:
Also may be you can clarify this for me.
When using force_active=1 is this the behavior: instead of querying
for
permissions to see presence of other phones, it will just query the presentity table, and return the xml on the body column on a notify,
and
add the uri in the watcher's table so on future publishes they get "notified"?
Am I getting the concept correctly?
Best Regards, Jorge
-----Original Message----- From: users-bounces@openser.org [mailto:users-bounces@openser.org] On Behalf Of Jorge Guntanis Sent: Friday, August 17, 2007 1:15 AM To: Anca-Maria Vamanu Cc: users@openser.org Subject: RE: [OpenSER-Users] Presence Working?
Yup, at least I think so. This is the config for xcap-lite
$XcapServerConfig=array( 'debug' => true, 'realms' => array( 'default' => array ( 'AuthOptions'
=>
array(
'dsn' => 'mysql://openser:openserrw@localhost/openser',
'table' => 'subscriber',
'usernamecol' => 'username',
'passwordcol' => 'password',
'cryptType' => 'none',
'db_fields' => 'domain'
), 'StorageDSN'
=>
'mysql://openser:openserrw@localhost/openser', 'trustedPeers'
=>
array(), 'xcap-root'
=>
array('http://xcap.mydomain.com/xcap-root'),
'refreshWatchersURL' => '192.168.0.2:9090' ), )
);
Is there anything I need to configure in the openser config file
other
than: modparam("mi_xmlrpc", "port", 9090)
Thanks for your help.
Jorge -----Original Message----- From: Anca-Maria Vamanu [mailto:anca@voice-system.ro] Sent: Friday, August 17, 2007 1:05 AM To: Jorge Guntanis Cc: users@openser.org Subject: Re: [OpenSER-Users] Presence Working?
Hello,
Are you using an xcap server to work with openser? If not, you
should
set force_active parameter to 1.
modparam("presence_xml", "force_active", 1).
regards,
Anca Vamanu
Jorge Guntanis wrote:
I was wondering if anyone has gotten the presence module working
with
openser. The reason I ask is because I've been trying to make it work for 2
weeks
without any luck, and at this point, I can't figure out what I'm
doing
wrong.
This is my setup:
I have a debian 4.0, running openser 1.3.0-dev11-notls [svnrevision: 2:2607M] also tried with 2327 Compiled with mysql, presence, mi_xmlrpc, presence xml modules. Also have the xcap-lite server set up.
My configuration looks like this: [just the related stuff]
# -- mi_xmlrpc params --
modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") modparam("mi_xmlrpc", "port", 9090)
# -- presence params -- modparam("presence", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence", "presentity_table", "presentity") modparam("presence", "active_watchers_table", "active_watchers") modparam("presence", "watchers_table", "watchers") modparam("presence", "clean_period", 100) modparam("presence", "to_tag_pref", 'a') modparam("presence", "expires_offset", 10) modparam("presence", "max_expires", 3600) modparam("presence", "server_address",
"sip:presense_server_ip:5065")
#modparam("presence", "xcap_table", "xcap_xml")
# -- presence_xml params modparam("presence_xml", "force_active", 0) modparam("presence_xml", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence_xml", "xcap_table", "xcap_xml") modparam("presence_xml", "pidf_manipulation", 1)
# presence handling route route[2] { # absorb retransmissions if (! t_newtran()) { sl_reply_error(); exit; };
if(is_method("PUBLISH")) { if($hdr(Sender)!= NULL) handle_publish("$hdr(Sender)"); else handle_publish(""); t_release(); } else if( is_method("SUBSCRIBE")) { handle_subscribe(); t_release(); }; exit;
}
The presentity does get updated when I change my status.
Ie: <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:pp="urn:ietf:params:xml:ns:pidf:person" xmlns:et="urn:ietf:params:xml:ns:pidf:rpid:rpid-tuple" xmlns:ep="urn:ietf:params:xml:ns:pidf:rpid:rpid-person" xmlns:es="urn:ietf:params:xml:ns:pidf:rpid:status:rpid-status" xmlns:ci="urn:ietf:params:xml:ns:pidf:cipid" entity="sip:10000010002@216.xxx.xxx.xxx"> pp:person
<status> <ep:activities> <ep:busy/> </ep:activities> </status> </pp:person> <note>Busy</note> <tuple id="e2438d66"> <contact priority="1">sip:10000010002@216.xxx.xxx.xxx</contact> <status> <basic>open</basic> </status> </tuple> </presence>
But if I add this line into another account running eyebeam, ie: account 10000010001, it doesn't get a notify with my new status. So I have it "sort" of working, yet the notifies are not.
My Server set up is as follows: Ser Main Server <--->
Openser
Presence Server fwd subscribes and notifies to openser presence server using the forward(); method.
This is the debug log from openser, for when I change my status.
If someone has any idea of what's wrong or has make it work, I'd
really
appreciate any advice.
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hi,
I have presence up and running with xlite softphones. At least MESSAGE, SUBSCRIBE and PUBLISH is working. This was nearly plug and play to setup ....
I found that xlite is sometimes not configured to use presence server. U have to configure ur sip account properties -> presence->Mode to "Presence Agent" otherwise nothing is send to your sip-proxy/presence-Server.
So since eyebeam is the big brother of xlite maybe it has similar "problems".
regards Helmut
Right, I've set that setting to Presence Agent. Gonna work on some captures and send them, they should be helpful.
Thanks all for the help :)
Best Jorge
-----Original Message----- From: Helmut Kuper [mailto:helmut.kuper@ewetel.de] Sent: Friday, August 17, 2007 6:37 AM To: Jorge Guntanis Cc: users@openser.org Subject: Re: [OpenSER-Users] Presence Working?
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hi,
I have presence up and running with xlite softphones. At least MESSAGE, SUBSCRIBE and PUBLISH is working. This was nearly plug and play to setup ....
I found that xlite is sometimes not configured to use presence server. U have to configure ur sip account properties -> presence->Mode to "Presence Agent" otherwise nothing is send to your sip-proxy/presence-Server.
So since eyebeam is the big brother of xlite maybe it has similar "problems".
regards Helmut
El Thursday 16 August 2007 23:11:41 Jorge Guntanis escribió:
I was wondering if anyone has gotten the presence module working with openser. The reason I ask is because I've been trying to make it work for 2 weeks without any luck, and at this point, I can't figure out what I'm doing wrong.
This is my setup:
I have a debian 4.0, running openser 1.3.0-dev11-notls [svnrevision: 2:2607M] also tried with 2327 Compiled with mysql, presence, mi_xmlrpc, presence xml modules. Also have the xcap-lite server set up.
My configuration looks like this: [just the related stuff]
# -- mi_xmlrpc params --
modparam("mi_xmlrpc", "log_file", "/var/log/openser-xmlrpc.log") modparam("mi_xmlrpc", "port", 9090)
# -- presence params -- modparam("presence", "db_url", "mysql://openser:openserrw@localhost/openser") modparam("presence", "presentity_table", "presentity") modparam("presence", "active_watchers_table", "active_watchers") modparam("presence", "watchers_table", "watchers") modparam("presence", "clean_period", 100) modparam("presence", "to_tag_pref", 'a') modparam("presence", "expires_offset", 10) modparam("presence", "max_expires", 3600)
modparam("presence", "server_address", "sip:presense_server_ip:5065")
A note here: that "server_address" is the Contact header of the "200 OK" for your SUBSCRIBE messages and the Contact header for NOTIFY messages from server. So the first SUBSCRIBE of any user will be to your main OpenSer (who will forward it to the presence server) but the following SUBSCRIBE will be directly to uri sip:presense_server_ip:5065, is that correct?
But if I add this line into another account running eyebeam, ie: account 10000010001, it doesn't get a notify with my new status. So I have it "sort" of working, yet the notifies are not.
I think Eyebeam uses by default agent to agent presence (because XLite does it). In the presence options of Eyebeam try to put "server presence" or similar.
My Server set up is as follows: Ser Main Server <---> Openser Presence Server fwd subscribes and notifies to openser presence server using the forward(); method.
Could you capture a flow in your main openser: ngrep -P ' ' -W byline -T -t "" udp port 5060 or udp port 5065