Engage Engine API
1.246.9086
|
#include <ConfigurationObjects.h>
Inherits AppConfigurationObjects::ConfigurationObjectBase.
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 () |
Public Member Functions inherited from AppConfigurationObjects::ConfigurationObjectBase | |
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 | |
Public Attributes inherited from AppConfigurationObjects::ConfigurationObjectBase | |
nlohmann::json | _attached |
Additional Inherited Members | |
Protected Attributes inherited from AppConfigurationObjects::ConfigurationObjectBase | |
bool | _documenting |
Group Configuration.
This describes all the group properties for all supported group types
Example:
Definition at line 4657 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 4681 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 4697 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 4664 of file ConfigurationObjects.h.
|
inline |
Definition at line 4868 of file ConfigurationObjects.h.
|
inline |
Definition at line 4873 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::_wasDeserialized_rtpProfile |
[Internal - not serialized
Definition at line 4827 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 4769 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 4818 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 4812 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 4815 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 4757 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 4857 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 4772 of file ConfigurationObjects.h.
BridgingOpMode_t AppConfigurationObjects::Group::bom |
Specifies the bridging operation mode if applicable (see BridgingOpMode_t).
Definition at line 4710 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 4745 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::disablePacketEvents |
[Optional, Default: false] Disable packet events.
Definition at line 4797 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 4785 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 4863 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 4718 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 4866 of file ConfigurationObjects.h.
std::vector<Source> AppConfigurationObjects::Group::ignoreSources |
[Optional] List of sources to ignore for this group
Definition at line 4842 of file ConfigurationObjects.h.
InboundAliasGenerationPolicy_t AppConfigurationObjects::Group::inboundAliasGenerationPolicy |
[Optional, Default: iagpAnonymousAlias]
Definition at line 4860 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 4803 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 4727 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::languageCode |
ISO 639-2 language code for the group
Definition at line 4845 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::lbCrypto |
[Optional, Default: false] Use low-bandwidth crypto
Definition at line 4748 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 4782 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 4788 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::name |
The human readable name for the group.
Definition at line 4721 of file ConfigurationObjects.h.
Presence AppConfigurationObjects::Group::presence |
Presence configuration (see Presence).
Definition at line 4742 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 4794 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 4806 of file ConfigurationObjects.h.
RallypointCluster AppConfigurationObjects::Group::rallypointCluster |
Cluster of one or more Rallypoints the group may use.
Definition at line 4754 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 4751 of file ConfigurationObjects.h.
RangerPackets AppConfigurationObjects::Group::rangerPackets |
[Optional] Ranger packet options
Definition at line 4824 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 4800 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::rtcpPresenceRx |
The network address for receiving RTCP presencing packets.
Definition at line 4791 of file ConfigurationObjects.h.
RtpProfile AppConfigurationObjects::Group::rtpProfile |
[Optional] RTP profile the group
Definition at line 4821 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::rx |
The network address for receiving network traffic on.
Definition at line 4730 of file ConfigurationObjects.h.
PacketCapturer AppConfigurationObjects::Group::rxCapture |
Details for capture of received packets
Definition at line 4851 of file ConfigurationObjects.h.
TransportImpairment AppConfigurationObjects::Group::rxImpairment |
[Optional] The RX impairment to apply
Definition at line 4833 of file ConfigurationObjects.h.
uint32_t AppConfigurationObjects::Group::securityLevel |
[Optional, Default: 0] The security classification level of the group.
Definition at line 4839 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 4775 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 4836 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::spokenName |
The group name as spoken - typically by a text-to-speech system
Definition at line 4724 of file ConfigurationObjects.h.
int AppConfigurationObjects::Group::stickyTidHangSecs |
[Optional, Default: 10] The number of seconds after which "sticky" transmission IDs expire.
Definition at line 4809 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::synVoice |
Name of the synthesis voice to use for the group
Definition at line 4848 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 4766 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::tx |
The network address for transmitting network traffic to.
Definition at line 4733 of file ConfigurationObjects.h.
TxAudio AppConfigurationObjects::Group::txAudio |
Audio transmit options such as codec, framing size etc (see TxAudio).
Definition at line 4739 of file ConfigurationObjects.h.
PacketCapturer AppConfigurationObjects::Group::txCapture |
Details for capture of transmitted packets
Definition at line 4854 of file ConfigurationObjects.h.
TransportImpairment AppConfigurationObjects::Group::txImpairment |
[Optional] The TX impairment to apply
Definition at line 4830 of file ConfigurationObjects.h.
NetworkTxOptions AppConfigurationObjects::Group::txOptions |
Transmit options for the group (see NetworkTxOptions).
Definition at line 4736 of file ConfigurationObjects.h.
Type_t AppConfigurationObjects::Group::type |
Specifies the group type (see Type_t).
Definition at line 4707 of file ConfigurationObjects.h.