Engage Engine API
1.251.9091
|
#include <ConfigurationObjects.h>
Inherits AppConfigurationObjects::ConfigurationObjectBase.
Inherited by AppConfigurationObjects::EngateGroup.
Public Types | |
enum | Type_t { gtUnknown = 0 , gtAudio = 1 , gtPresence = 2 , gtRaw = 3 } |
Enum describing the group types. More... | |
enum | BridgingOpMode_t { bomRaw = 0 , bomPayloadTransformation = 1 , bomAnonymousMixing = 2 , bomLanguageTranslation = 3 } |
Enum describing bridging operation mode types where applicable. More... | |
enum | InboundAliasGenerationPolicy_t { iagpAnonymousAlias = 0 , iagpSsrcInHex = 1 } |
Enum describing the alias generation policy. More... | |
Public Member Functions | |
void | clear () |
![]() | |
virtual void | initForDocumenting () |
virtual std::string | toString () |
virtual bool | isDocumenting () const |
Public Attributes | |
Type_t | type |
Specifies the group type (see Type_t). | |
BridgingOpMode_t | bom |
Specifies the bridging operation mode if applicable (see BridgingOpMode_t). | |
std::string | id |
Unique identity for the group. | |
std::string | name |
The human readable name for the group. | |
std::string | spokenName |
The group name as spoken - typically by a text-to-speech system | |
std::string | interfaceName |
The name of the network interface to use for multicasting for this group. If not provided, the Engine's default multicast NIC is used. | |
NetworkAddress | rx |
The network address for receiving network traffic on. | |
NetworkAddress | tx |
The network address for transmitting network traffic to. | |
NetworkTxOptions | txOptions |
Transmit options for the group (see NetworkTxOptions). | |
TxAudio | txAudio |
Audio transmit options such as codec, framing size etc (see TxAudio). | |
Presence | presence |
Presence configuration (see Presence). | |
std::string | cryptoPassword |
Password to be used for encryption. Note that this is not the encryption key but, rather, the hexidecimal representation of the baseline material to be used in a PBFDK2 algorithm for key derivation. | |
bool | lbCrypto |
[Optional, Default: false] Use low-bandwidth crypto | |
std::vector< Rallypoint > | rallypoints |
[DEPRECATED] List of Rallypoint (s) the Group should use to connect to a Rallypoint router. Use RallypointCluster instead. | |
RallypointCluster | rallypointCluster |
Cluster of one or more Rallypoints the group may use. | |
Audio | audio |
Sets audio properties like which audio device to use, audio gain etc (see Audio). | |
GroupTimeline | timeline |
Audio timeline is configuration. | |
std::string | alias |
User alias to transmit as part of the realtime audio stream when using the engageBeginGroupTx API. | |
bool | blockAdvertising |
[Optional, Default: false] Set this to true if you do not want the Engine to advertise this Group on the Presence group. | |
std::string | source |
[Optional, Default: null] Indicates the source of this configuration - e.g. from the application or discovered via Magellan | |
int | maxRxSecs |
[Optional, Default: 0] Maximum number of seconds the Engine will receive for on this group. | |
bool | enableMulticastFailover |
[Optional, Default: false] Set this to true to enable failover to multicast operation if a Rallypoint connection cannot be established. | |
int | multicastFailoverSecs |
[Optional, Default: 10] Specifies the number fo seconds to wait after Rallypoint connection failure to switch to multicast operation. | |
NetworkAddress | rtcpPresenceRx |
The network address for receiving RTCP presencing packets. | |
std::vector< std::string > | presenceGroupAffinities |
List of presence group IDs with which this group has an affinity. | |
bool | disablePacketEvents |
[Optional, Default: false] Disable packet events. | |
int | rfc4733RtpPayloadId |
[Optional, Default: 0] The RTP payload ID by which to identify (RX and TX) payloads encoded according to RFC 4733 (RFC 2833). | |
std::vector< RtpPayloadTypeTranslation > | inboundRtpPayloadTypeTranslations |
[Optional] A vector of translations from external entity RTP payload types to those used by Engage | |
GroupPriorityTranslation | priorityTranslation |
[Optional] Describe how traffic for this group on a different addressing scheme translates to priority for the group | |
int | stickyTidHangSecs |
[Optional, Default: 10] The number of seconds after which "sticky" transmission IDs expire. | |
std::string | anonymousAlias |
[Optional] Alias to use for inbound streams that do not have an alias component | |
GroupAppTransport | appTransport |
[Optional] Settings necessary if the group is transported via an application-supplied custom transport | |
bool | allowLoopback |
[Optional, Default: false] Allows for processing of looped back packets - primarily meant for debugging | |
RtpProfile | rtpProfile |
[Optional] RTP profile the group | |
RangerPackets | rangerPackets |
[Optional] Ranger packet options | |
bool | _wasDeserialized_rtpProfile |
[Internal - not serialized | |
TransportImpairment | txImpairment |
[Optional] The TX impairment to apply | |
TransportImpairment | rxImpairment |
[Optional] The RX impairment to apply | |
std::vector< uint16_t > | specializerAffinities |
List of specializer IDs that the local node has an affinity for/member of. | |
uint32_t | securityLevel |
[Optional, Default: 0] The security classification level of the group. | |
std::vector< Source > | ignoreSources |
[Optional] List of sources to ignore for this group | |
std::string | languageCode |
ISO 639-2 language code for the group | |
std::string | synVoice |
Name of the synthesis voice to use for the group | |
PacketCapturer | rxCapture |
Details for capture of received packets | |
PacketCapturer | txCapture |
Details for capture of transmitted packets | |
uint16_t | blobRtpPayloadType |
[Optional, Default: ENGAGE_DEFAULT_BLOB_RTP_PAYLOAD_TYPE] The RTP payload type to be used for blobs sent over RTP (see BlobInfo) | |
InboundAliasGenerationPolicy_t | inboundAliasGenerationPolicy |
[Optional, Default: iagpAnonymousAlias] | |
AudioGate | gateIn |
[Optional] Inbound gating of audio - only audio allowed through by the gate will be processed | |
bool | ignoreAudioTraffic |
[Optional, Default: false] Indicates that the group should ignore traffic that is audio-related | |
![]() | |
nlohmann::json | _attached |
Additional Inherited Members | |
![]() | |
bool | _documenting |
Group Configuration.
This describes all the group properties for all supported group types
Example:
Definition at line 4721 of file ConfigurationObjects.h.
Enum describing bridging operation mode types where applicable.
Enumerator | |
---|---|
bomRaw | Raw mode (default) - packet payloads are not accessed or modified and forwarded as raw packets. |
bomPayloadTransformation | Audio payloads are transformed, headers are preserved, multiple parallel output streams are possible/expected. |
bomAnonymousMixing | Audio payloads are mixed - output is anonymous (i.e. no metadata) if if the target group(s) allow header extensions. |
bomLanguageTranslation | The bridge performs language translations between groups. |
Definition at line 4745 of file ConfigurationObjects.h.
Enum describing the alias generation policy.
Enumerator | |
---|---|
iagpAnonymousAlias | Use the anonymousAlias if present. |
iagpSsrcInHex | Generate hex representation of SSRC. |
Definition at line 4761 of file ConfigurationObjects.h.
Enum describing the group types.
Enumerator | |
---|---|
gtUnknown | Unknown group type. |
gtAudio | |
gtPresence | Presence group type. This group is use to relay presence data to all nodes that are configured for the same presence group. |
gtRaw | Raw group type. No special processing is performed on raw groups - the payload is siomply seen as a binary object to be typically handled by the application logic. |
Definition at line 4728 of file ConfigurationObjects.h.
|
inline |
Definition at line 4932 of file ConfigurationObjects.h.
|
inline |
Definition at line 4937 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::_wasDeserialized_rtpProfile |
[Internal - not serialized
Definition at line 4891 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::alias |
User alias to transmit as part of the realtime audio stream when using the engageBeginGroupTx API.
Definition at line 4833 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::allowLoopback |
[Optional, Default: false] Allows for processing of looped back packets - primarily meant for debugging
Definition at line 4882 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::anonymousAlias |
[Optional] Alias to use for inbound streams that do not have an alias component
Definition at line 4876 of file ConfigurationObjects.h.
GroupAppTransport AppConfigurationObjects::Group::appTransport |
[Optional] Settings necessary if the group is transported via an application-supplied custom transport
Definition at line 4879 of file ConfigurationObjects.h.
Audio AppConfigurationObjects::Group::audio |
Sets audio properties like which audio device to use, audio gain etc (see Audio).
Definition at line 4821 of file ConfigurationObjects.h.
uint16_t AppConfigurationObjects::Group::blobRtpPayloadType |
[Optional, Default: ENGAGE_DEFAULT_BLOB_RTP_PAYLOAD_TYPE] The RTP payload type to be used for blobs sent over RTP (see BlobInfo)
Definition at line 4921 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::blockAdvertising |
[Optional, Default: false] Set this to true if you do not want the Engine to advertise this Group on the Presence group.
Definition at line 4836 of file ConfigurationObjects.h.
BridgingOpMode_t AppConfigurationObjects::Group::bom |
Specifies the bridging operation mode if applicable (see BridgingOpMode_t).
Definition at line 4774 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::cryptoPassword |
Password to be used for encryption. Note that this is not the encryption key but, rather, the hexidecimal representation of the baseline material to be used in a PBFDK2 algorithm for key derivation.
Definition at line 4809 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::disablePacketEvents |
[Optional, Default: false] Disable packet events.
Definition at line 4861 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::enableMulticastFailover |
[Optional, Default: false] Set this to true to enable failover to multicast operation if a Rallypoint connection cannot be established.
Definition at line 4849 of file ConfigurationObjects.h.
AudioGate AppConfigurationObjects::Group::gateIn |
[Optional] Inbound gating of audio - only audio allowed through by the gate will be processed
Definition at line 4927 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::id |
Unique identity for the group.
NOTE: Groups configured with the same multicast addresses but with different id's will NOT be routed correctly via RallyPoints as they are considered different streams.
Definition at line 4782 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::ignoreAudioTraffic |
[Optional, Default: false] Indicates that the group should ignore traffic that is audio-related
Definition at line 4930 of file ConfigurationObjects.h.
std::vector<Source> AppConfigurationObjects::Group::ignoreSources |
[Optional] List of sources to ignore for this group
Definition at line 4906 of file ConfigurationObjects.h.
InboundAliasGenerationPolicy_t AppConfigurationObjects::Group::inboundAliasGenerationPolicy |
[Optional, Default: iagpAnonymousAlias]
Definition at line 4924 of file ConfigurationObjects.h.
std::vector<RtpPayloadTypeTranslation> AppConfigurationObjects::Group::inboundRtpPayloadTypeTranslations |
[Optional] A vector of translations from external entity RTP payload types to those used by Engage
Definition at line 4867 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::interfaceName |
The name of the network interface to use for multicasting for this group. If not provided, the Engine's default multicast NIC is used.
Definition at line 4791 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::languageCode |
ISO 639-2 language code for the group
Definition at line 4909 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::lbCrypto |
[Optional, Default: false] Use low-bandwidth crypto
Definition at line 4812 of file ConfigurationObjects.h.
int AppConfigurationObjects::Group::maxRxSecs |
[Optional, Default: 0] Maximum number of seconds the Engine will receive for on this group.
When the time limit is exceeded, the Engine will fire a PFN_ENGAGE_GROUP_MAX_RX_TIME_EXCEEDED event.
Definition at line 4846 of file ConfigurationObjects.h.
int AppConfigurationObjects::Group::multicastFailoverSecs |
[Optional, Default: 10] Specifies the number fo seconds to wait after Rallypoint connection failure to switch to multicast operation.
Definition at line 4852 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::name |
The human readable name for the group.
Definition at line 4785 of file ConfigurationObjects.h.
Presence AppConfigurationObjects::Group::presence |
Presence configuration (see Presence).
Definition at line 4806 of file ConfigurationObjects.h.
std::vector<std::string> AppConfigurationObjects::Group::presenceGroupAffinities |
List of presence group IDs with which this group has an affinity.
Definition at line 4858 of file ConfigurationObjects.h.
GroupPriorityTranslation AppConfigurationObjects::Group::priorityTranslation |
[Optional] Describe how traffic for this group on a different addressing scheme translates to priority for the group
Definition at line 4870 of file ConfigurationObjects.h.
RallypointCluster AppConfigurationObjects::Group::rallypointCluster |
Cluster of one or more Rallypoints the group may use.
Definition at line 4818 of file ConfigurationObjects.h.
std::vector<Rallypoint> AppConfigurationObjects::Group::rallypoints |
[DEPRECATED] List of Rallypoint (s) the Group should use to connect to a Rallypoint router. Use RallypointCluster instead.
Definition at line 4815 of file ConfigurationObjects.h.
RangerPackets AppConfigurationObjects::Group::rangerPackets |
[Optional] Ranger packet options
Definition at line 4888 of file ConfigurationObjects.h.
int AppConfigurationObjects::Group::rfc4733RtpPayloadId |
[Optional, Default: 0] The RTP payload ID by which to identify (RX and TX) payloads encoded according to RFC 4733 (RFC 2833).
Definition at line 4864 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::rtcpPresenceRx |
The network address for receiving RTCP presencing packets.
Definition at line 4855 of file ConfigurationObjects.h.
RtpProfile AppConfigurationObjects::Group::rtpProfile |
[Optional] RTP profile the group
Definition at line 4885 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::rx |
The network address for receiving network traffic on.
Definition at line 4794 of file ConfigurationObjects.h.
PacketCapturer AppConfigurationObjects::Group::rxCapture |
Details for capture of received packets
Definition at line 4915 of file ConfigurationObjects.h.
TransportImpairment AppConfigurationObjects::Group::rxImpairment |
[Optional] The RX impairment to apply
Definition at line 4897 of file ConfigurationObjects.h.
uint32_t AppConfigurationObjects::Group::securityLevel |
[Optional, Default: 0] The security classification level of the group.
Definition at line 4903 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::source |
[Optional, Default: null] Indicates the source of this configuration - e.g. from the application or discovered via Magellan
Definition at line 4839 of file ConfigurationObjects.h.
std::vector<uint16_t> AppConfigurationObjects::Group::specializerAffinities |
List of specializer IDs that the local node has an affinity for/member of.
Definition at line 4900 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::spokenName |
The group name as spoken - typically by a text-to-speech system
Definition at line 4788 of file ConfigurationObjects.h.
int AppConfigurationObjects::Group::stickyTidHangSecs |
[Optional, Default: 10] The number of seconds after which "sticky" transmission IDs expire.
Definition at line 4873 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::synVoice |
Name of the synthesis voice to use for the group
Definition at line 4912 of file ConfigurationObjects.h.
GroupTimeline AppConfigurationObjects::Group::timeline |
Audio timeline is configuration.
Specifies how the Engine should record times lines. Timelines are used for instant replay and audio archival.
Definition at line 4830 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::tx |
The network address for transmitting network traffic to.
Definition at line 4797 of file ConfigurationObjects.h.
TxAudio AppConfigurationObjects::Group::txAudio |
Audio transmit options such as codec, framing size etc (see TxAudio).
Definition at line 4803 of file ConfigurationObjects.h.
PacketCapturer AppConfigurationObjects::Group::txCapture |
Details for capture of transmitted packets
Definition at line 4918 of file ConfigurationObjects.h.
TransportImpairment AppConfigurationObjects::Group::txImpairment |
[Optional] The TX impairment to apply
Definition at line 4894 of file ConfigurationObjects.h.
NetworkTxOptions AppConfigurationObjects::Group::txOptions |
Transmit options for the group (see NetworkTxOptions).
Definition at line 4800 of file ConfigurationObjects.h.
Type_t AppConfigurationObjects::Group::type |
Specifies the group type (see Type_t).
Definition at line 4771 of file ConfigurationObjects.h.