[Devel] [ openser-Feature Requests-1632996 ] dialog module: better
dialog check and more functions
SourceForge.net
noreply at sourceforge.net
Mon May 28 15:36:04 CEST 2007
Feature Requests item #1632996, was opened at 2007-01-11 09:54
Message generated for change (Comment added) made by effeks
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=743023&aid=1632996&group_id=139143
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: modules
Group: ver devel
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Klaus Darilion (klaus_darilion)
Assigned to: Nobody/Anonymous (nobody)
Summary: dialog module: better dialog check and more functions
Initial Comment:
better dialog check
====================
The dialog module identifies in-dialog requests with a RR cookie. Setting "use_tight_match" enables checking of the callid too.
This should be extended to check from/to tag too, e.g:
use_tight_match = 0: check RR cookie
use_tight_match = 1: check RR cookie + call-id
use_tight_match = 2: check RR cookie + call-id + from/totag
I guess checking from/to tag also needs some logic to detect the direction of the request (upstream/downstream via ftag RR parameter or encoded in the RR dialog cookie)
Further, it may make sense to optionally store not only the from and to tag, but also
- upstream and downstream record route headers
- upstream and downstream contact headers
- upstream and downstream CSeq
- complete From and To header
- canonical SIP AoR of callee (for below dialog_to_exist() function)
to fake SIP requests (e.g. BYE like B2BUA) and for below functions
more functions
===================
IMO the following functions would be quite useful for the dialog module.
dialog_exist(): checks if the transaction matches an existing dialog. Can be used as additional security check in loose_roote()
dialog_exist("$fu","$avp(count)"): returns the number of dialogs which have $fu in From: header or in canonical R-URI
dialog_from_exist("$fu","$avp(count)"): returns the number of dialogs which have $fu in From: header
dialog_to_exist("$avp(whatever)","$avp(count)"): returns the number of dialogs which have $avp(whatever) URI in canonical R-URI
The last 3 functions can be used to count the number of concurrently calls of a user (of course this works only if dialog module also stores the URIs, not only the from/to tags.)
Further this only works if all requests from/to a certain user are routed via a single proxy.
----------------------------------------------------------------------
Comment By: Tobias Lindgren (effeks)
Date: 2007-05-28 15:36
Message:
Logged In: YES
user_id=1799740
Originator: NO
Also, IP-address from which a request came would be interresting, eg to
group number of dialogs from a given ip-address.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=743023&aid=1632996&group_id=139143
More information about the Devel
mailing list