doubango/trunk/doubango/sm/sm_dialog_register.sm

75 lines
2.3 KiB
Plaintext

%{
// ** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
//
// This file is part of 'Doubango IMS Client Framework'.
//
// 'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// 'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
//
// ** For commercial use, you must purchase a proprietary license from Doubango Telecom.
//
//
///* Copyright (C) 2009 Doubango Telecom
//*
//* Authors: F0076RTY <imsframework@gmail.com>
//*
//*/
//
%}
%class sip_dialog_register
%header sip_dialog_register.h
%package dgo // PREF_NAMESPACE_VALUE ==> see 'pref.h' for more information
%start map_dialog_register::Initialized
%map map_dialog_register
%%
//-------------------------------------------------------------------------------------
// Initialized
//-------------------------------------------------------------------------------------
Initialized Entry { OnStateChanged(SS_REGISTER_INITIALIZED); }
{
sm_registerSent() Trying { set_registering(true); }
}
Trying Entry { OnStateChanged(SS_REGISTER_TRYING); }
{
sm_1xx_response() nil {}
sm_2xx_response() [ctxt.get_registering() == true] Established {}
sm_2xx_response() [ctxt.get_registering() == false] Terminated {}
sm_401_407_421_494_response() Authentifying {}
sm_unsupported_response() Terminated {}
}
Established Entry { OnStateChanged(SS_REGISTER_ESTABLISHED); }
{
sm_unregisterSent() Trying { set_registering(false); }
}
Authentifying Entry { OnStateChanged(SS_REGISTER_AUTHENTIFYING); }
{
}
Terminated Entry { OnStateChanged(SS_REGISTER_TERMINATED); }
{
Default nil {}
}
Default Entry { OnStateChanged(SS_REGISTER_UNKNOWN); }
{
sm_401_407_421_494_response() Authentifying {}
Default nil {}
}
%%