6#ifndef EngageConstants_h
7#define EngageConstants_h
13#if !defined(__APPLE__)
23 #include <netinet/in.h>
26static const size_t ENGAGE_MAX_CRYPTO_PASSWORD_BYTES = 256;
27static const uint64_t ENGAGE_ROOT_CA_CERTIFICATE_CACHE_EXPIRATION_MS = (60 * 1000);
29static const int ENGAGE_INVALID_IP_ADDRESS_FAMILY = -1;
31static const size_t ENGAGE_MAX_OUTPUT_QUEUED_UDP_PACKETS = 1024;
33static const size_t ENGAGE_MAX_IP_ADDR_SIZE =
sizeof(
struct sockaddr_in6);
34static const size_t ENGAGE_MAX_ALIAS_SIZE = 16;
35static const size_t ENGAGE_MAX_NODE_ID_SIZE = 16;
37static const size_t ENGAGE_BLOB_PACKET_BUFFER_ALLOCATION_EXTRA_BYTES = 512;
39static const int16_t ENGAGE_PCM_MIN_VALUE = -32768;
40static const int16_t ENGAGE_PCM_MAX_VALUE = 32767;
42static const uint16_t ENGAGE_SELECT_FUNCTION_TIMEOUT_SECS = 1;
43static const uint16_t ENGAGE_MULTICAST_REJOIN_SECS = 8;
45static const size_t ENGAGE_MAX_DATAGRAM_SIZE = 4096;
46static const long ENGAGE_MAX_RECONNECT_PAUSE_MS = 30000;
47static const long ENGAGE_RECONNECT_FAILURE_PAUSE_INCREMENT_MS = 1500;
49static const size_t ENGAGE_BASE_RTP_HEADER_SIZE = 12;
50static const uint16_t ENGAGE_ACCEPTED_RTP_VERSION = 2;
51static const size_t ENGAGE_MAX_RTP_SAMPLES_THAT_CAN_BE_DECODED = (8000 * 5);
53static const size_t ENGAGE_PCM_SAMPLE_COUNT_PER_MS = 8;
54static const size_t ENGAGE_PCM_10_MS_SAMPLE_COUNT = (ENGAGE_PCM_SAMPLE_COUNT_PER_MS * 10);
57 static const size_t ENGAGE_PCM_MIN_PLATFORM_SAMPLE_COUNT = (ENGAGE_PCM_SAMPLE_COUNT_PER_MS * 40);
58#elif defined(__ANDROID__)
59 static const size_t ENGAGE_PCM_MIN_PLATFORM_SAMPLE_COUNT = (ENGAGE_PCM_SAMPLE_COUNT_PER_MS * 250);
60#elif defined(__linux__)
61 static const size_t ENGAGE_PCM_MIN_PLATFORM_SAMPLE_COUNT = (ENGAGE_PCM_SAMPLE_COUNT_PER_MS * 250);
63 static const size_t ENGAGE_PCM_MIN_PLATFORM_SAMPLE_COUNT = (ENGAGE_PCM_SAMPLE_COUNT_PER_MS * 250);
64#elif defined(__EMSCRIPTEN__)
65 static const size_t ENGAGE_PCM_MIN_PLATFORM_SAMPLE_COUNT = (ENGAGE_PCM_SAMPLE_COUNT_PER_MS * 250);
68static const long ENGAGE_TLS_CONNECTION_KEY_MATERIAL_SIZE = 32;
69static const uint64_t ENGAGE_RTP_RESET_AFTER_IDLE_MS = (1000 * 30);
71#if defined(RTS_DEBUG_BUILD)
72static const uint64_t ENGAGE_GROUP_HEALTH_ERROR_ERROR_NOTIFICATION_INTERVAL_MS = (1000 * 10);
74static const uint64_t ENGAGE_GROUP_HEALTH_ERROR_ERROR_NOTIFICATION_INTERVAL_MS = (1000 * 30);
77static const size_t ENGAGE_MAX_GROUPS_PER_BRIDGE = 128;
227#define ENGAGE_DEFAULT_WS_PROTOCOL_NAME "rts-rallypoint-v1"
static const uint8_t ENGAGE_DEFAULT_BLOB_RTP_PAYLOAD_TYPE
The default RTP payload type Engage uses for RTP blob messaging.
static const int ENGAGE_LOG_LEVEL_WARNING
Indicates that a condition exists that should be addressed soon.
static const int ENGAGE_LOG_LEVEL_DEBUG
Debugging, primarily geared toward development and support personnel.
static const int ENGAGE_LOG_LEVEL_ERROR
A error has occurred but operation can continue.
static const int ENGAGE_LOG_LEVEL_INFORMATIONAL
The log message is of an informational nature - no action is required.
static const int ENGAGE_LOG_LEVEL_FATAL
A fatal error has occurred - Engine operation cannot continue.
static const int ENGAGE_NOTIFICATIONS_DISABLE
Disables notifications.
static const int ENGAGE_NOTIFICATIONS_ENABLE
Enables notifications.
static const int ENGAGE_RESULT_HIGH_RES_TIMER_ALREADY_EXISTS
An application high resolution timer is already defined.
static const int ENGAGE_RESULT_OK
The request was succesful.
static const int ENGAGE_RESULT_ALREADY_INITIALIZED
The library has already been initialized.
static const int ENGAGE_RESULT_INVALID_PARAMETERS
One or more parameters are invalid.
static const int ENGAGE_RESULT_CRYPTO_MODULE_INITIALIZATION_FAILED
Initialization of the crypto module failed.
static const int ENGAGE_RESULT_INSUFFICIENT_DESTINATION_SPACE
Insufficient space in destination.
static const int ENGAGE_RESULT_NOT_INITIALIZED
The library has not yet been initialized - engageInitialize() should be called.
static const int ENGAGE_RESULT_GENERAL_FAILURE
An unspecified error has occurred.
static const int ENGAGE_RESULT_ALREADY_STARTED
The Engine has already been started.
static const int ENGAGE_RESULT_NOT_STARTED
The Engine has not yet been started - engageStart() should be called.
static const int ENGAGE_SYSLOG_ENABLE
Enables syslog output on supported systems.
static const int ENGAGE_SYSLOG_DISABLE
Disables syslog output.
static const uint8_t ENGAGE_TXFLAG_AUTOMATED_SYSTEM
Indicates that the transmission is coming from an automated system.
static const uint8_t ENGAGE_TXFLAG_EMERGENCY
Sets the EMERGENCY flag in the transmitted stream.
static const uint8_t ENGAGE_TXFLAG_TID_INVALIDATED
Indicates that the transmission ID is no longer valid.
static const uint8_t ENGAGE_TXFLAG_MUTE_RX_FOR_SPECIALIZER
Indicates that the receiver should auto-mute using the alias specializer if receiver has that special...
static const uint8_t ENGAGE_TXFLAG_STICKY_TID
Indicates a "sticky" transmission ID (if non-zero)
static const uint8_t ENGAGE_TXFLAG_TX_START
Indicates that a transmission is about to start.
static const uint8_t ENGAGE_TXFLAG_TX_END
Indicates that the transmission has concluded.
static const int ENGAGE_WATCHDOG_DISABLE
Disables the watchdog - has no effect if the watchdog is disabled in the policy configuration.
static const int ENGAGE_WATCHDOG_ENABLE
Enables the watchdog - has no effect if the watchdog is disabled in the policy configuration.