//
//  BWFErrorDefine.h
//  BWFMessageFramework
//
//  Copyright © 2019 Beowulf. All rights reserved.
//

#ifndef BWFErrorDefine_h
#define BWFErrorDefine_h

////////////////////////////////////////////////////////////////////
// COMMON //////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////

#define BWF_ERROR_CODE_NO_ERROR 0

//INTERNAL
#define BWF_ERROR_CODE_FRAMEWORK_INTERNAL_ERROR              1

//CONFIGURATION
#define BWF_ERROR_CODE_FRAMEWORK_NOT_CONFIGURED             10
#define BWF_ERROR_CODE_FRAMEWORK_NOT_STARTED                11

//START / STOP
#define BWF_ERROR_CODE_UNABLE_TO_START_FRAMEWORK            20
#define BWF_ERROR_CODE_FRAMEWORK_ALREADY_STARTED            21
#define BWF_ERROR_CODE_FRAMEWORK_IS_CONFIGURING             22
#define BWF_ERROR_CODE_ENTERPRISE_ACCOUNT_NOT_AUTHORIZED    23
#define BWF_ERROR_CODE_ACCOUNT_NOT_EXIST                    24
#define BWF_ERROR_CODE_WRONG_ACCOUNT_TYPE                   25
#define BWF_ERROR_CODE_GROUP_NOT_FOUND                      26

////////////////////////////////////////////////////////////////////
// CALLING /////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
#define BWF_ERROR_CODE_CALLING_UNABLE_TO_CALL               100

////////////////////////////////////////////////////////////////////
// MESSAGE ////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
#define BWF_ERROR_CODE_MESSAGE_UNABLE_TO_SEND_MESSAGE       202
#define BWF_ERROR_CODE_MESSAGE_RECEIVER_NOT_FOUND           203
#define BWF_ERROR_CODE_MESSAGE_UNABLE_TO_SEND_STATUS        204

////////////////////////////////////////////////////////////////////
// CALL CENTER /////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////

#define BWF_ERROR_CODE_CALLCENTER_UNABLE_TO_CONNECT_TO_SERVER  300
#define BWF_ERROR_CODE_CALLCENTER_IS_DISCONNECTED_TO_SERVER    301

//For requester
#define BWF_ERROR_CODE_CALLCENTER_NO_AVAILABLE_SUPPORTER       326


//For supporter
#define BWF_ERROR_CODE_CALLCENTER_ALL_REQUESTS_ARE_CANCELED    351
#define BWF_ERROR_CODE_CALLCENTER_FAILED_TO_CONNECT_REQUESTER  352

#endif /* BWFErrorDefine_h */
