/*
 * sim800_async_message_t.h
 *
 *  Created on: Jun 10, 2023
 *      Author: mateusz
 */

#ifndef INCLUDE_GSM_SIM800_ASYNC_MESSAGE_T_H_
#define INCLUDE_GSM_SIM800_ASYNC_MESSAGE_T_H_


/**
 * Those strings represent
 */
#define INCOMING_CALL "RING\0"
#define INCOMING_CALL_LN 4
#define NOCARRIER "NO CARRIER\0"
#define NOCARRIER_LN 10
#define UVP_PDOWN "UNDER-VOLTAGE POWER DOWN\0"
#define UVP_PDOWN_LN 24
#define UVP_WARNING "UNDER-VOLTAGE WARNNING\0"
#define UVP_WARNING_LN 22
#define OVP_PDWON "OVER-VOLTAGE POWER DOWN\0"
#define IVP_PDWON_LN 23
#define OVP_WARNING "OVER-VOLTAGE WARNNING\0"
#define OVP_WARNING_LN 21
#define CALL_RDY "Call Ready\0"
#define CALL_RDY_LN 10
#define SMS_RDY "SMS Ready\0"
#define SMS_RDY_LN 9

typedef enum sim800_async_message_t {
	SIM800_ASYNC_RING,
	SIM800_ASYNC_NOCARRIER,
	SIM800_ASYNC_UNDERVOLTAGE_PDOWN,
	SIM800_ASYNC_UNDERVOLTAGE_WARNING,
	SIM800_ASYNC_OVERVOLTAGE_PDOWN,
	SIM800_ASYNC_OVERVOLTAGE_WARNING,
	SIM800_ASYNC_CALL_READY,
	SIM800_ASYNC_SMS_READY,
	SIM800_ASYNC_UNKNOWN
}sim800_async_message_t;

#endif /* INCLUDE_GSM_SIM800_ASYNC_MESSAGE_T_H_ */
