Engage Engine API
1.244.9084
|
#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 4515 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 4539 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 4555 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 4522 of file ConfigurationObjects.h.
|
inline |
Definition at line 4726 of file ConfigurationObjects.h.
|
inline |
Definition at line 4731 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::_wasDeserialized_rtpProfile |
[Internal - not serialized
Definition at line 4685 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 4627 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 4676 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 4670 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 4673 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 4615 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 4715 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 4630 of file ConfigurationObjects.h.
BridgingOpMode_t AppConfigurationObjects::Group::bom |
Specifies the bridging operation mode if applicable (see BridgingOpMode_t).
Definition at line 4568 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 4603 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::disablePacketEvents |
[Optional, Default: false] Disable packet events.
Definition at line 4655 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 4643 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 4721 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 4576 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 4724 of file ConfigurationObjects.h.
std::vector<Source> AppConfigurationObjects::Group::ignoreSources |
[Optional] List of sources to ignore for this group
Definition at line 4700 of file ConfigurationObjects.h.
InboundAliasGenerationPolicy_t AppConfigurationObjects::Group::inboundAliasGenerationPolicy |
[Optional, Default: iagpAnonymousAlias]
Definition at line 4718 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 4661 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 4585 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::languageCode |
ISO 639-2 language code for the group
Definition at line 4703 of file ConfigurationObjects.h.
bool AppConfigurationObjects::Group::lbCrypto |
[Optional, Default: false] Use low-bandwidth crypto
Definition at line 4606 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 4640 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 4646 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::name |
The human readable name for the group.
Definition at line 4579 of file ConfigurationObjects.h.
Presence AppConfigurationObjects::Group::presence |
Presence configuration (see Presence).
Definition at line 4600 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 4652 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 4664 of file ConfigurationObjects.h.
RallypointCluster AppConfigurationObjects::Group::rallypointCluster |
Cluster of one or more Rallypoints the group may use.
Definition at line 4612 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 4609 of file ConfigurationObjects.h.
RangerPackets AppConfigurationObjects::Group::rangerPackets |
[Optional] Ranger packet options
Definition at line 4682 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 4658 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::rtcpPresenceRx |
The network address for receiving RTCP presencing packets.
Definition at line 4649 of file ConfigurationObjects.h.
RtpProfile AppConfigurationObjects::Group::rtpProfile |
[Optional] RTP profile the group
Definition at line 4679 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::rx |
The network address for receiving network traffic on.
Definition at line 4588 of file ConfigurationObjects.h.
PacketCapturer AppConfigurationObjects::Group::rxCapture |
Details for capture of received packets
Definition at line 4709 of file ConfigurationObjects.h.
TransportImpairment AppConfigurationObjects::Group::rxImpairment |
[Optional] The RX impairment to apply
Definition at line 4691 of file ConfigurationObjects.h.
uint32_t AppConfigurationObjects::Group::securityLevel |
[Optional, Default: 0] The security classification level of the group.
Definition at line 4697 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 4633 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 4694 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::spokenName |
The group name as spoken - typically by a text-to-speech system
Definition at line 4582 of file ConfigurationObjects.h.
int AppConfigurationObjects::Group::stickyTidHangSecs |
[Optional, Default: 10] The number of seconds after which "sticky" transmission IDs expire.
Definition at line 4667 of file ConfigurationObjects.h.
std::string AppConfigurationObjects::Group::synVoice |
Name of the synthesis voice to use for the group
Definition at line 4706 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 4624 of file ConfigurationObjects.h.
NetworkAddress AppConfigurationObjects::Group::tx |
The network address for transmitting network traffic to.
Definition at line 4591 of file ConfigurationObjects.h.
TxAudio AppConfigurationObjects::Group::txAudio |
Audio transmit options such as codec, framing size etc (see TxAudio).
Definition at line 4597 of file ConfigurationObjects.h.
PacketCapturer AppConfigurationObjects::Group::txCapture |
Details for capture of transmitted packets
Definition at line 4712 of file ConfigurationObjects.h.
TransportImpairment AppConfigurationObjects::Group::txImpairment |
[Optional] The TX impairment to apply
Definition at line 4688 of file ConfigurationObjects.h.
NetworkTxOptions AppConfigurationObjects::Group::txOptions |
Transmit options for the group (see NetworkTxOptions).
Definition at line 4594 of file ConfigurationObjects.h.
Type_t AppConfigurationObjects::Group::type |
Specifies the group type (see Type_t).
Definition at line 4565 of file ConfigurationObjects.h.