Go to the source code of this file.
Classes | |
struct | __LwsCallInfo |
struct | SignalingMessageWrapper |
Typedefs | |
typedef struct __LwsCallInfo | LwsCallInfo |
typedef struct SignalingMessageWrapper * | PSignalingMessageWrapper |
#define AWS_SIG_V4_HEADER_HOST (PCHAR) "host" |
#define BLOCK_ON_CORRELATION_ID FALSE |
#define CHECK_SIGNALING_CREDENTIALS_EXPIRATION | ( | p | ) |
#define CREATE_CHANNEL_PARAM_JSON_TEMPLATE |
#define CREATE_SIGNALING_CHANNEL_API_POSTFIX "/createSignalingChannel" |
#define DELETE_CHANNEL_PARAM_JSON_TEMPLATE |
#define DELETE_SIGNALING_CHANNEL_API_POSTFIX "/deleteSignalingChannel" |
#define DESCRIBE_CHANNEL_PARAM_JSON_TEMPLATE "{\n\t\"ChannelName\": \"%s\"\n}" |
#define DESCRIBE_MEDIA_STORAGE_CONF_API_POSTFIX "/describeMediaStorageConfiguration" |
#define DESCRIBE_MEDIA_STORAGE_CONF_PARAM_JSON_TEMPLATE "{\n\t\"ChannelARN\": \"%s\"\n}" |
#define DESCRIBE_SIGNALING_CHANNEL_API_POSTFIX "/describeSignalingChannel" |
#define GET_CHANNEL_ENDPOINT_PARAM_JSON_TEMPLATE |
#define GET_ICE_CONFIG_API_POSTFIX "/v1/get-ice-server-config" |
#define GET_ICE_CONFIG_PARAM_JSON_TEMPLATE |
#define GET_SIGNALING_CHANNEL_ENDPOINT_API_POSTFIX "/getSignalingChannelEndpoint" |
#define ICE_SERVER_INFO_TEMPLATE_BLOAT_SIZE 128 |
#define ICE_SERVER_URI_BLOAT_SIZE 10 |
#define JOIN_STORAGE_SESSION_API_POSTFIX "/joinStorageSession" |
#define LWS_MESSAGE_BUFFER_SIZE (SIZEOF(CHAR) * (MAX_SIGNALING_MESSAGE_LEN + LWS_PRE)) |
#define LWS_SCRATCH_BUFFER_SIZE (MAX_JSON_PARAMETER_STRING_LEN + LWS_PRE) |
#define LWS_SERVICE_LOOP_ITERATION_WAIT (50 * HUNDREDS_OF_NANOS_IN_A_MILLISECOND) |
#define MAX_DATE_HEADER_BUFFER_LENGTH 64 |
#define MAX_ENCODED_ICE_SERVER_INFOS_STR_LEN (MAX_ICE_SERVER_INFOS_STR_LEN + ICE_SERVER_INFO_TEMPLATE_BLOAT_SIZE) |
#define MAX_ICE_SERVER_INFO_STR_LEN (MAX_ICE_SERVER_URI_STR_LEN + MAX_ICE_CONFIG_USER_NAME_LEN + MAX_ICE_CONFIG_CREDENTIAL_LEN + ICE_SERVER_INFO_TEMPLATE_BLOAT_SIZE) |
#define MAX_ICE_SERVER_INFOS_STR_LEN (MAX_ICE_CONFIG_COUNT * MAX_ICE_SERVER_INFO_STR_LEN) |
#define MAX_ICE_SERVER_URI_STR_LEN (MAX_ICE_CONFIG_URI_COUNT * (MAX_ICE_CONFIG_URI_LEN + ICE_SERVER_URI_BLOAT_SIZE)) |
#define MAX_SIGNALING_MESSAGE_TYPE_LEN ARRAY_SIZE(SIGNALING_RECONNECT_ICE_SERVER) |
#define MAX_SIGNALING_STATUS_MESSAGE_LEN 16 |
#define MIN_CLOCK_SKEW_TIME_TO_CORRECT (5 * HUNDREDS_OF_NANOS_IN_A_MINUTE) |
#define PROTOCOL_INDEX_HTTPS 0 |
#define PROTOCOL_INDEX_WSS 1 |
#define SIGNALING_CHANNEL_ARN_PARAM_NAME "X-Amz-ChannelARN" |
#define SIGNALING_CHANNEL_NAME_PARAM_NAME "X-Amz-ChannelName" |
#define SIGNALING_CHANNEL_PROTOCOL "\"WSS\", \"HTTPS\"" |
#define SIGNALING_CHANNEL_PROTOCOL_W_MEDIA_STORAGE "\"WSS\", \"HTTPS\", \"WEBRTC\"" |
#define SIGNALING_CLIENT_ID_PARAM_NAME "X-Amz-ClientId" |
#define SIGNALING_ENDPOINT_MASTER_URL_WSS_TEMPLATE "%s?%s=%s" |
#define SIGNALING_ENDPOINT_VIEWER_URL_WSS_TEMPLATE "%s?%s=%s&%s=%s" |
#define SIGNALING_GO_AWAY "GO_AWAY" |
#define SIGNALING_ICE_CANDIDATE "ICE_CANDIDATE" |
#define SIGNALING_ICE_SERVER_LIST_TEMPLATE_END "\n\t]" |
#define SIGNALING_ICE_SERVER_LIST_TEMPLATE_START |
#define SIGNALING_ICE_SERVER_TEMPLATE |
#define SIGNALING_JOIN_STORAGE_SESSION_MASTER_PARAM_JSON_TEMPLATE "{\n\t\"channelArn\": \"%s\"\n}" |
#define SIGNALING_JOIN_STORAGE_SESSION_VIEWER_PARAM_JSON_TEMPLATE |
#define SIGNALING_MESSAGE_UNKNOWN "UNKNOWN" |
#define SIGNALING_RECONNECT_ICE_SERVER "RECONNECT_ICE_SERVER" |
#define SIGNALING_ROLE_PARAM_NAME "X-Amz-Role" |
#define SIGNALING_SDP_TYPE_ANSWER "SDP_ANSWER" |
#define SIGNALING_SDP_TYPE_OFFER "SDP_OFFER" |
#define SIGNALING_SEND_MESSAGE_TEMPLATE |
#define SIGNALING_SEND_MESSAGE_TEMPLATE_WITH_CORRELATION_ID |
#define SIGNALING_SERVICE_API_CALL_COMPLETION_TIMEOUT (5 * HUNDREDS_OF_NANOS_IN_A_SECOND) |
#define SIGNALING_SERVICE_API_CALL_CONNECTION_TIMEOUT (2 * HUNDREDS_OF_NANOS_IN_A_SECOND) |
#define SIGNALING_SERVICE_API_CALL_TIMEOUT_IN_SECONDS ((SIGNALING_SERVICE_API_CALL_CONNECTION_TIMEOUT + SIGNALING_SERVICE_API_CALL_COMPLETION_TIMEOUT) / HUNDREDS_OF_NANOS_IN_A_SECOND) |
#define SIGNALING_SERVICE_TCP_KEEPALIVE_IN_SECONDS 3 |
#define SIGNALING_SERVICE_TCP_KEEPALIVE_PROBE_COUNT 3 |
#define SIGNALING_SERVICE_TCP_KEEPALIVE_PROBE_INTERVAL_IN_SECONDS 1 |
#define SIGNALING_SERVICE_WSS_HANGUP_IN_SECONDS 7200 |
#define SIGNALING_SERVICE_WSS_PING_PONG_INTERVAL_IN_SECONDS 10 |
#define SIGNALING_STATUS_RESPONSE "STATUS_RESPONSE" |
#define SIGNALING_UPDATE_STORAGE_CONFIG_PARAM_JSON_TEMPLATE |
#define TAG_PARAM_JSON_OBJ_TEMPLATE "\n\t\t{\"Key\": \"%s\", \"Value\": \"%s\"}," |
#define TAGS_PARAM_JSON_TEMPLATE ",\n\t\"Tags\": [%s\n\t]" |
#define UPDATE_MEDIA_STORAGE_CONF_API_POSTFIX "/updateMediaStorageConfiguration" |
#define WSS_SIGNALING_PROTOCOL_INDEX 1 |
Index of the signaling protocol handling WSS IMPORTANT!!! This should match the correct index in the signaling client protocol array
typedef struct __LwsCallInfo LwsCallInfo |
typedef struct SignalingMessageWrapper * PSignalingMessageWrapper |
STATUS connectSignalingChannelLws | ( | PSignalingClient | pSignalingClient, |
UINT64 | time | ||
) |
STATUS createChannelLws | ( | PSignalingClient | pSignalingClient, |
UINT64 | time | ||
) |
STATUS createLwsCallInfo | ( | PSignalingClient | pSignalingClient, |
PRequestInfo | pRequestInfo, | ||
UINT32 | protocolIndex, | ||
PLwsCallInfo * | ppLwsCallInfo | ||
) |
STATUS deleteChannelLws | ( | PSignalingClient | pSignalingClient, |
UINT64 | time | ||
) |
STATUS describeChannelLws | ( | PSignalingClient | pSignalingClient, |
UINT64 | time | ||
) |
STATUS describeMediaStorageConfLws | ( | PSignalingClient | pSignalingClient, |
UINT64 | time | ||
) |
STATUS freeLwsCallInfo | ( | PLwsCallInfo * | ppLwsCallInfo | ) |
STATUS getChannelEndpointLws | ( | PSignalingClient | pSignalingClient, |
UINT64 | time | ||
) |
STATUS getIceConfigLws | ( | PSignalingClient | pSignalingClient, |
UINT64 | time | ||
) |
STATUS getMessageTypeFromString | ( | PCHAR | typeStr, |
UINT32 | typeLen, | ||
SIGNALING_MESSAGE_TYPE * | pMessageType | ||
) |
PCHAR getMessageTypeInString | ( | SIGNALING_MESSAGE_TYPE | messageType | ) |
BOOL isCallResultSignatureExpired | ( | PCallInfo | pCallInfo | ) |
BOOL isCallResultSignatureNotYetCurrent | ( | PCallInfo | pCallInfo | ) |
STATUS joinStorageSessionLws | ( | PSignalingClient | pSignalingClient, |
UINT64 | time | ||
) |
< TBD. Accroding to the design document, the prefix of url will be webrtc://
STATUS lwsCompleteSync | ( | PLwsCallInfo | pCallInfo | ) |
INT32 lwsHttpCallbackRoutine | ( | struct lws * | wsi, |
enum | lws_callback_reasons, | ||
PVOID | user, | ||
PVOID | pDataIn, | ||
size_t | dataSize | ||
) |
PVOID lwsListenerHandler | ( | PVOID | args | ) |
VOID lwsSignalHandler | ( | INT32 | signal | ) |
INT32 lwsWssCallbackRoutine | ( | struct lws * | wsi, |
enum | lws_callback_reasons, | ||
PVOID | user, | ||
PVOID | pDataIn, | ||
size_t | dataSize | ||
) |
STATUS receiveLwsMessage | ( | PSignalingClient | pSignalingClient, |
PCHAR | pMessage, | ||
UINT32 | messageLen | ||
) |
PVOID receiveLwsMessageWrapper | ( | PVOID | args | ) |
PVOID reconnectHandler | ( | PVOID | args | ) |
STATUS sendLwsMessage | ( | PSignalingClient | pSignalingClient, |
SIGNALING_MESSAGE_TYPE | messageType, | ||
PCHAR | peerClientId, | ||
PCHAR | pMessage, | ||
UINT32 | messageLen, | ||
PCHAR | pCorrelationId, | ||
UINT32 | correlationIdLen | ||
) |
STATUS terminateConnectionWithStatus | ( | PSignalingClient | pSignalingClient, |
SERVICE_CALL_RESULT | callResult | ||
) |
STATUS terminateLwsListenerLoop | ( | PSignalingClient | pSignalingClient | ) |
STATUS wakeLwsServiceEventLoop | ( | PSignalingClient | pSignalingClient, |
UINT32 | protocolIndex | ||
) |
STATUS writeLwsData | ( | PSignalingClient | pSignalingClient, |
BOOL | awaitForResponse | ||
) |