[Devel] presence: 412 Conditional Request Failed

Cesc cesc.santa at gmail.com
Fri Apr 13 16:49:11 CEST 2007


Hi,

Today is my openser presence + dbtext day ... sorry Anca ;)

So, now that I can have a basic setup, I am going onto more complex
settings ...

xlite1 - ser1
              |
xlite2 - ser2 - openser2

The idea is that on each ser, ONLY PUB messages are sent across, that
is, to the other ser.
Let's say, for the sake of clarity, that SUBS from xlite1 are discarded ...

No big deal ... as I would think that for each ser/openser cluster it
makes no difference if there has been 1 or 2 hops for the publish
message ...
Ideally, xlite2 shall be able to see all the status changes from xlite1.

But the problem is that I on a clean boot, it works ... for a while.
After a few PUBs from xlite1, openser2 starts generating 412 messages,
which ends up travelling all the way from openser2 via ser2, ser1 and
to xlite1 ... resulting in NO status change ...

Ideas?
See the attached log ... the 412 gets generated when, in
handle_publish function, a call to update_presentity() returns 412 ...
because the searched 3 values (domain, username, etag) are not found
on the database ...


 4(9398)  method:  <PUBLISH>
 4(9398)  uri:     <sip:Klaas at cafes.org>
 4(9398)  version: <SIP/2.0>
 4(9398) parse_headers: flags=2
 4(9398) Found param type 232, <branch> = <z9hG4bKcfcb.04071694.0>; state=16
 4(9398) end of header reached, state=5
 4(9398) parse_headers: Via found, flags=2
 4(9398) parse_headers: this is the first via
 4(9398) After parse_msg...
 4(9398) preparing to run routing scripts...
 4(9398) parse_headers: flags=100
 4(9398) Found param type 234, <received> = <192.168.3.170>; state=6
 4(9398) Found param type 232, <branch> = <0>; state=16
 4(9398) end of header reached, state=5
 4(9398) parse_headers: Via found, flags=100
 4(9398) parse_headers: this is the second via
 4(9398) Found param type 232, <branch> =
<z9hG4bK-d87543-ec4056068e608815-1--d87543->; state=6
 4(9398) Found param type 235, <rport> = <24064>; state=16
 4(9398) end of header reached, state=5
 4(9398) parse_headers: Via found, flags=100
 4(9398) DEBUG:maxfwd:is_maxfwd_present: value = 15
 4(9398) ==============================================================================================
 4(9398) parse_headers: flags=10
 4(9398) DEBUG:parse_to:end of header reached, state=10
 4(9398) DBUG:parse_to: display={"X-lite user 1"}, ruri={sip:Klaas at cafes.org}
 4(9398) DEBUG: get_hdr_field: <To> [38]; uri=[sip:Klaas at cafes.org]
 4(9398) DEBUG: to body ["X-lite user 1"<sip:Klaas at cafes.org>
]
 4(9398) DEBUG: add_param: tag=e104da1a
 4(9398) DEBUG:parse_to:end of header reached, state=29
 4(9398) DBUG:parse_to: display={"X-lite user 1"}, ruri={sip:Klaas at cafes.org}
 4(9398) New Message received: [1] from [sip:Klaas at cafes.org]
 4(9398) Request method used:[PUBLISH].
 4(9398) =============================================================================================
 4(9398) DEBUG: t_newtran:  T on entrance=0xffffffff
 4(9398) parse_headers: flags=ffffffffffffffff
 4(9398) get_hdr_field: cseq <CSeq>: <20> <PUBLISH>
 4(9398) DEBUG: get_hdr_body : content_length=419
 4(9398) found end of header
 4(9398) parse_headers: flags=78
 4(9398) t_lookup_request: start searching: hash=48380, isACK=0
 4(9398) DEBUG: RFC3261 transaction matching failed
 4(9398) DEBUG: t_lookup_request: no transaction found
 4(9398) =============================================================================================
 4(9398) The request method used is to [PUBLISH] information. (handle publish)
 4(9398) =============================================================================================
 4(9398) parse_headers: flags=ffffffffffffffff
 4(9398) PRESENCE:handle_publish: SIP-If-Match found
 4(9398) PRESENCE:handle_publish: existing etag  = a.1176470910.12535.15
 4(9398) PRESENCE: handle_publish: 'expires' found
 4(9398) PRESENCE: handle_publish: lexpire= 3600
 4(9398) PRESENCE: handle_publish: 'To' header ALREADY PARSED:
<sip:Klaas at cafes.org>
 4(9398) parse_headers: flags=ffffffffffffffff
 4(9398) presentity.c: update_presentity: querying: domain = cafes.org
 4(9398) presentity.c: update_presentity: querying: username = Klaas
 4(9398) presentity.c: update_presentity: querying: etag = a.1176470910.12535.15
 4(9398) PRESENCE:update_presentity: querying presentity
 4(9398) DBT:dbt_query: new res with 1 cols
 4(9398) DBT:dbt_result_new: new res with 1 cols
 4(9398) PRESENCE:update_presentity: No E_Tag match
 4(9398) parse_headers: flags=ffffffffffffffff
 4(9398) check_via_address(192.168.1.150, 192.168.1.150, 0)
 4(9398) DEBUG: cleanup_uac_timers: RETR/FR timers reset
 4(9398) DEBUG: add_to_tail_of_timer[2]: 0xb5d20880 (39)
 4(9398) DEBUG:tm:UNREF_UNSAFE: after is 0
 4(9398) DEBUG:destroy_avp_list: destroying list (nil)



More information about the Devel mailing list