[Kamailio-Devel] RFC: Dialog: Feature-Extensions
Jerome Martin
jmartin at longphone.fr
Wed Sep 17 10:48:14 CEST 2008
On Wed, 2008-09-17 at 09:58 +0200, Klaus Darilion wrote:
>
> Jerome Martin schrieb:
> > . adding a new state to the state_machine, RINGING
>
>
> I think if a more detailed state machine is needed, maybe we still
> should stay with the standard conform state machine but add
> "sub-states", e.g. RINGING would be a sub-state of the "early" state.
Yes, I was thinking the same yesterday night while looking at it.
Basically the changes would be :
1) add sub states trying and ringing for EARLY
2) move deleted dialog in a dialog_archive table after deleting them
from memory
3) add sub states redirected, failed, cancelled, timed-out, terminated
to DELETED
4) add ability to have one dialog per branch, saving the R-URI,
P-Asserted-Identity, and destination IP used for relay
5) store additional data in the dialog table/structure:
. for DELETED/redirected, the redirect uri
. for DELETED/failed, the reply code and reason
(I am unsure is cancelled is just a specific case of this with 487,
because currently it is the TMCB_DELETED callback that triggers the
event TDEL in the state machine, and I believe this CB is triggered on
CANCEL, before we have a chance to see any 487)
. for DELETED/terminated, the origin of the BYE (caller/callee/proxy)
and dialog_duration
Of course, the things I want to save here are pretty custom, so I think
a more generic mechanism should be found so that everyone could
customise this to his needs.
Regards,
--
Jérôme Martin | LongPhone
Responsable Architecture Réseau
122, rue la Boetie | 75008 Paris
Tel : +33 (0)1 56 26 28 44
Fax : +33 (0)1 56 26 28 45
Mail : jmartin at longphone.fr
Web : www.longphone.com <http://www.longphone.com>
More information about the Devel
mailing list