⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gsm_error.h

📁 对各种手机进行编程的工具包源码gsmlib 1.9版本。
💻 H
字号:
// *************************************************************************// * GSM TA/ME library// *// * File:    gsm_error.h// *// * Purpose: Error codes and error handling functions// *// * Author:  Peter Hofmann (software@pxh.de)// *// * Created: 4.5.1999// *************************************************************************#ifndef GSM_ERROR_H#define GSM_ERROR_H#include <string>#include <stdexcept>using namespace std;namespace gsmlib{  // different classes of GSM errors  enum GsmErrorClass{OSError,   // error caused by OS call (eg. file handling)                     ParserError, // error when parsing AT response                     ChatError, // error in chat sequence (ME/TA/SMS error)                     ParameterError, // gsmlib function called with bad params                     NotImplementedError, // feature not implemented                     MeTaCapabilityError, // non-existent capability in ME                     SMSFormatError, // SMS format error                     InterruptException, // gsmlib was interrupted()                     OtherError}; // all other errors  // all gsmlib exceptions  class GsmException : public runtime_error  {  private:    GsmErrorClass _errorClass;    int _errorCode;  public:    GsmException(string errorText, GsmErrorClass errorClass) :      runtime_error(errorText), _errorClass(errorClass), _errorCode(-1) {}    GsmException(string errorText, GsmErrorClass errorClass, int errorCode) :      runtime_error(errorText), _errorClass(errorClass),      _errorCode(errorCode) {}    int getErrorCode() const {return _errorCode;}        GsmErrorClass getErrorClass() const {return _errorClass;}  };  // error codes returned by TA/ME (+CMEE)  const int ME_PHONE_FAILURE = 0;  const int ME_NO_CONNECTION_TO_PHONE = 1;  const int ME_PHONE_ADAPTOR_LINK_RESERVED = 2;  const int ME_OPERATION_NOT_ALLOWED = 3;  const int ME_OPERATION_NOT_SUPPORTED = 4;  const int ME_PH_SIM_PIN_REQUIRED = 5;  const int ME_SIM_NOT_INSERTED = 10;  const int ME_SIM_PIN_REQUIRED = 11;  const int ME_SIM_PUK_REQUIRED = 12;  const int ME_SIM_FAILURE = 13;  const int ME_SIM_BUSY = 14;  const int ME_SIM_WRONG = 15;  const int ME_INCORRECT_PASSWORD = 16;  const int ME_SIM_PIN2_REQUIRED = 17;  const int ME_SIM_PUK2_REQUIRED = 18;  const int ME_MEMORY_FULL = 20;  const int ME_INVALID_INDEX = 21;  const int ME_NOT_FOUND = 22;  const int ME_MEMORY_FAILURE = 23;  const int ME_TEXT_STRING_TOO_LONG = 24;  const int ME_INVALID_CHARACTERS_IN_TEXT_STRING = 25;  const int ME_DIAL_STRING_TOO_LONG = 26;  const int ME_INVALID_CHARACTERS_IN_DIAL_STRING = 27;  const int ME_NO_NETWORK_SERVICE = 30;  const int ME_NETWORK_TIMEOUT = 31;  const int ME_UNKNOWN = 100;  // return descriptive text for the given error code  // the text is already translated  extern string getMEErrorText(const int errorCode) throw(GsmException);  // SMS error codes  // error codes from ETSI GSM 04.11, Annex E  const int SMS_UNASSIGNED_OR_UNALLOCATED_NUMBER = 1;  const int SMS_OPERATOR_DETERMINED_BARRING = 8;  const int SMS_CALL_BARRED = 10;  const int SMS_NETWORK_FAILURE = 17;  const int SMS_SHORT_MESSAGE_TRANSFER_REJECTED = 21;  const int SMS_CONGESTION = 22;  const int SMS_DESTINATION_OUT_OF_SERVICE = 27;  const int SMS_UNIDENTIFIED_SUBSCRIBER = 28;  const int SMS_FACILITY_REJECTED = 29;  const int SMS_UNKNOWN_SUBSCRIBER = 30;  const int SMS_NETWORK_OUT_OF_ORDER = 38;  const int SMS_TEMPORARY_FAILURE = 41;  const int SMS_CONGESTION2 = 42;  const int SMS_RESOURCES_UNAVAILABLE_UNSPECIFIED = 47;  const int SMS_REQUESTED_FACILITY_NOT_SUBSCRIBED = 50;  const int SMS_REQUESTED_FACILITY_NOT_IMPLEMENTED = 69;  const int SMS_INVALID_TRANSACTION_IDENTIFIER = 81;  const int SMS_SEMANTICALLY_INCORRECT_MESSAGE = 95;  const int SMS_INVALID_MANDATORY_INFORMATION = 96;  const int SMS_MESSAGE_TYPE_NONEXISTENT_OR_NOT_IMPLEMENTED = 97;  const int SMS_MESSAGE_NOT_COMPATIBLE_WITH_SHORT_MESSAGE_PROTOCOL_STATE = 98;  const int SMS_INFORMATION_ELEMENT_NONEXISTENT_OR_NOT_IMPLEMENTED = 99;  const int SMS_UNSPECIFIED_PROTOCOL_ERROR = 111;  const int SMS_UNSPECIFIED_INTERWORKING_ERROR = 127;  // error codes from ETSI GSM 03.40, section 9.2.3.22  const int SMS_TELEMATIC_INTERWORKING_NOT_SUPPORTED = 0x80;  const int SMS_SHORT_MESSAGE_TYPE_0_NOT_SUPPORTED = 0x81;  const int SMS_CANNOT_REPLACE_SHORT_MESSAGE = 0x82;  const int SMS_UNSPECIFIED_TP_PID_ERROR = 0x8f;  const int SMS_DATA_CODING_SCHEME_NOT_SUPPORTED = 0x90;  const int SMS_MESSAGE_CLASS_NOT_SUPPORTED = 0x91;  const int SMS_UNSPECIFIEC_TP_DCS_ERROR = 0x9f;  const int SMS_COMMAND_CANNOT_BE_ACTIONED = 0xa0;  const int SMS_COMMAND_UNSUPPORTED = 0xa1;  const int SMS_UNSPECIFIED_TP_COMMAND_ERROR = 0xaf;  const int SMS_TPDU_NOT_SUPPORTED = 0xb0;  const int SMS_SC_BUSY = 0xc0;  const int SMS_NO_SC_SUBSCRIPTION = 0xc1;  const int SMS_SC_SYSTEM_FAILURE = 0xc2;  const int SMS_INVALID_SME_ADDRESS = 0xc3;  const int SMS_DESTINATION_SME_BARRED = 0xc4;  const int SMS_SM_REJECTED_DUPLICATED_SM = 0xc5;  const int SMS_SIM_SMS_STORAGE_FULL = 0xd0;  const int SMS_NO_SMS_STORAGE_CAPABILITY_IN_SIM = 0xd1;  const int SMS_ERROR_IN_MS = 0xd2;  const int SMS_MEMORY_CAPACITY_EXCEED = 0xd3;  const int SMS_UNSPECIFIED_ERROR_CAUSE = 0xff;  // error codes from ETSI GSM 07.05, section 3.2.5  const int SMS_ME_FAILURE = 300;  const int SMS_SMS_SERVICE_OF_ME_RESERVED = 301;  const int SMS_OPERATION_NOT_ALLOWED = 302;  const int SMS_OPERATION_NOT_SUPPORTED = 303;  const int SMS_INVALID_PDU_MODE_PARAMETER = 304;  const int SMS_INVALID_TEXT_MODE_PARAMETER = 305;  const int SMS_SIM_NOT_INSERTED = 310;  const int SMS_SIM_PIN_REQUIRED = 311;  const int SMS_PH_SIM_PIN_REQUIRED = 312;  const int SMS_SIM_FAILURE = 313;  const int SMS_SIM_BUSY = 314;  const int SMS_SIM_WRONG = 315;  const int SMS_SIM_PUK_REQUIRED = 316;  const int SMS_SIM_PIN2_REQUIRED = 317;  const int SMS_SIM_PUK2_REQUIRED = 318;  const int SMS_MEMORY_FAILURE = 320;  const int SMS_INVALID_MEMORY_INDEX = 321;  const int SMS_MEMORY_FULL = 322;  const int SMS_SMSC_ADDRESS_UNKNOWN = 330;  const int SMS_NO_NETWORK_SERVICE = 331;  const int SMS_NETWORK_TIMEOUT = 332;  const int SMS_NO_CNMA_ACKNOWLEDGEMENT_EXPECTED = 340;  const int SMS_UNKNOWN_ERROR = 500;  // return descriptive text for the given error code  // the text is already translated  extern string getSMSErrorText(const int errorCode) throw(GsmException);  // SMS status handling  // success codes  const int SMS_STATUS_RECEIVED = 0;  const int SMS_STATUS_FORWARDED = 1;  const int SMS_STATUS_SM_REPLACES = 2;  // if this bit is set, the error is only temporary and  // the SC is still trying to transfer the SM  const int SMS_STATUS_TEMPORARY_BIT = 32;  // if this bit is set, the error is only temporary and  // the SC is still trying to transfer the SM  const int SMS_STATUS_PERMANENT_BIT = 64;  // both bits may be set at once  // temporary errors (both bits may be set)  const int SMS_STATUS_CONGESTION = 0;  const int SMS_STATUS_SME_BUSY = 1;  const int SMS_STATUS_NO_RESPONSE_FROM_SME = 2;  const int SMS_STATUS_SERVICE_REJECTED = 3;  const int SMS_STATUS_QUALITY_OF_SERVICE_UNAVAILABLE = 4;  const int SMS_STATUS_ERROR_IN_SME = 5;  // permanent errors (SMS_STATUS_PERMANENT_BIT is set)  const int SMS_STATUS_REMOTE_PROCECURE_ERROR = 0;  const int SMS_STATUS_INCOMPATIBLE_DESTINATION = 1;  const int SMS_STATUS_CONNECTION_REJECTED_BY_SME = 2;  const int SMS_STATUS_NOT_OBTAINABLE = 3;  // const int SMS_STATUS_QUALITY_OF_SERVICE_UNAVAILABLE = 4;  const int SMS_STATUS_NO_INTERWORKING_AVAILABLE = 5;  const int SMS_STATUS_SM_VALIDITY_PERDIOD_EXPIRED = 6;  const int SMS_STATUS_SM_DELETED_BY_ORIGINATING_SME = 7;  const int SMS_STATUS_SM_DELETED_BY_ADMINISTRATION = 8;  const int SMS_STATUS_SM_DOES_NOT_EXIST = 9;  // return text for SMS status code  // the text is already translated  string getSMSStatusString(unsigned char status);};#endif // GSM_ERROR_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -