Modularizando o src
Dependencies: EALib EthernetInterface_vz mbed-rtos mbed
Fork of header_main_colinas_V0-20-09-14 by
Diff: call_box.h
- Revision:
- 117:e9facba9db27
- Parent:
- 116:39a41ebb675c
- Child:
- 119:ee6a53069455
diff -r 39a41ebb675c -r e9facba9db27 call_box.h --- a/call_box.h Thu Apr 23 20:24:09 2015 +0000 +++ b/call_box.h Thu Apr 23 21:53:28 2015 +0000 @@ -15,65 +15,63 @@ #include "debug.h" #include "shared_variables.h" -const int __RESQUEST_TIME__ = 3; -const uint16_t MAX_INVITE_RETRY = 512 * 2; +#define __RESQUEST_TIME__ 3 +#define MAX_INVITE_RETRY 1000 + -const uint8_t __TIMEOUT__ = 250; - +#define __TIMEOUT__ 250 ///< O tempo que a Header demora para "pingar" o Call_Box para saber se esta tudo bem. -const uint8_t __RANGE_TO_REGISTER__ = 150; +#define __RANGE_TO_REGISTER__ 150 ///< Doc. later -const uint8_t __TIME_TO_REGISTER__ = __TIMEOUT__ - __RANGE_TO_REGISTER__; -const uint8_t __CYCLES__ = __TIME_TO_REGISTER__ / __RESQUEST_TIME__; // 200 // 3 ~ 66 -const uint8_t RTP_REQUEST_PORT_TIMEOUT = 45; +#define __TIME_TO_REGISTER__ __TIMEOUT__ - __RANGE_TO_REGISTER__ + +#define __CYCLES__ __TIME_TO_REGISTER__ / __RESQUEST_TIME__ // 200 // 3 ~ 66 -const short int REQUEST_REGISTRY = -1; -const short int REQUEST_PEND = -2; -const short int REQUEST_PING = -4; +#define RTP_REQUEST_PORT_TIMEOUT 45 // 600 // seconds + +#define REQUEST_REGISTRY -1 +#define REQUEST_PEND -2 +#define REQUEST_PING -4 ///< Valor usado como referencia para registro do equipamento CBx. -const uint8_t __MAX_ATTEMPTS__ = 5; +#define __MAX_ATTEMPTS__ 5 ///< O numero maximo de vezes que a Header vai tentar pingar o Call_Box -const uint8_t __STEP__ = 30; +#define __STEP__ 30 ///< Usado para aumentar o intervalo entre cada ping, fora de uso atualmente. -const uint8_t __MAX_TIMEOUT__ = __STEP__ * __MAX_ATTEMPTS__; +#define __MAX_TIMEOUT__ __STEP__ * __MAX_ATTEMPTS__ ///< Usado para limitar o tempo maximo de timeout do Call_Box sem responder o ping, fora de uso. -const uint8_t cb_idle = 1; +#define cb_idle 1 ///< Representa que o Call_Box esta disponivel -const uint8_t cb_ringing = 2; +#define cb_ringing 2 ///< Representa o Call_Box no status, discando. -const uint8_t cb_trying = 3; +#define cb_trying 3 ///< Representa o Call_Box no status tentando concluir o pedido de ligação. -const uint8_t cb_on_call = 4; +#define cb_on_call 4 ///< Representa que o Call_Box já esta em uma ligação. -const uint8_t cb_busy = 5; +#define cb_busy 5 ///< Representa que o Call_Box esta ocupado. -const uint8_t cb_denied = 6; +#define cb_denied 6 ///< Representa que o pedido de invite do Call_Box foi negado. +#define cb_bootloader 7 +///< Representa que o Call_Box esta em atualizacao de firmware class Call_Box : public Object{ private : - bool invite_response; - bool bye_response; - int ext; // ramal int port; // porta - int sip_socket_fd; - int shift_port; - + Timer t; + Timer rtp_timer; // usado pra controlar o timeout dos pedidos de porta rtp uint8_t remaining_attempts; + float timeout; uint8_t msg_id; uint8_t timeslice; uint8_t next_aging_type; - + bool invite_response; uint16_t invite_retry_count; - - float timeout; - - Timer t; - Timer rtp_timer; // usado pra controlar o timeout dos pedidos de porta rtp + bool bye_response; Timer seconds; + int sip_socket_fd; public : /** * @Synopsis Objeto Sip que será usado para tratativas com o servidor. @@ -397,7 +395,7 @@ int sip_udp_incomming_pkg( void ); void reset_cb_status( void ); void invite_retry_count_reset( void ); - uint16_t get_invite_retry_count( void ); + uint8_t get_invite_retry_count( void ); int get_sip_ext( void ); int get_sip_port( void ); int get_timer( void );