OcaMediaTransportSessionAgent#
This document describes the controller implementation of OcaMediaTransportSessionAgent. This class is documented in the AES70 standard as:
Agent to set up, monitor, control, and take down media transport sessions.
This shall be the base class for the AES70-CM4 connection management feature. See [AES70-1(Connection Management)].
This is an optional class. Session management functionality is not a mandatory for CM4 implementations.
Overview#
- ClassID: 1.2.20
- Header:
aes70/controller/OcaMediaTransportSessionAgent.hpp
- Namespace:
aes70::controller
- Inheritance: aes70::controller::OcaAgent, aes70::controller::OcaRoot, aes70::controller::object
Class Declaration#
namespace aes70::controller
{
class OcaMediaTransportSessionAgent : public OcaAgent
{
public:
OcaMediaTransportSessionAgent(std::shared_ptr<connection> connection,
uin32_t object_number);
OcaMediaTransportSessionAgent(const OcaMediaTransportSessionAgent &o);
// Control Methods
// Calls GetSessionType and calls on_result or on_failure
void GetSessionType(auto on_result, failure_callback on_failure);
// Calls GetSessions and calls on_result or on_failure
void GetSessions(auto on_result, failure_callback on_failure);
// Calls GetSession and calls on_result or on_failure
void GetSession(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure);
// Calls GetSession and does not wait for the response
void GetSession(OcaMediaTransportSessionID ID);
// Calls AddSession and calls on_result or on_failure
void AddSession(auto on_result, failure_callback on_failure);
// Calls ConfigureSession and calls on_result or on_failure
void ConfigureSession(OcaMediaTransportSessionID IDinternal, OcaBlob IDexternal, OcaString UserLabel, OcaBlob AdaptationData, auto on_result, failure_callback on_failure);
// Calls ConfigureSession and does not wait for the response
void ConfigureSession(OcaMediaTransportSessionID IDinternal, OcaBlob IDexternal, OcaString UserLabel, OcaBlob AdaptationData);
// Calls DeleteSession and calls on_result or on_failure
void DeleteSession(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure);
// Calls DeleteSession and does not wait for the response
void DeleteSession(OcaMediaTransportSessionID ID);
// Calls ResetSession and calls on_result or on_failure
void ResetSession(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure);
// Calls ResetSession and does not wait for the response
void ResetSession(OcaMediaTransportSessionID ID);
// Calls SetStreamingEnabled and calls on_result or on_failure
void SetStreamingEnabled(OcaMediaTransportSessionID ID, OcaBoolean Active, auto on_result, failure_callback on_failure);
// Calls SetStreamingEnabled and does not wait for the response
void SetStreamingEnabled(OcaMediaTransportSessionID ID, OcaBoolean Active);
// Calls StartStreaming and calls on_result or on_failure
void StartStreaming(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure);
// Calls StartStreaming and does not wait for the response
void StartStreaming(OcaMediaTransportSessionID ID);
// Calls StopStreaming and calls on_result or on_failure
void StopStreaming(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure);
// Calls StopStreaming and does not wait for the response
void StopStreaming(OcaMediaTransportSessionID ID);
// Calls GetSessionStatuses and calls on_result or on_failure
void GetSessionStatuses(auto on_result, failure_callback on_failure);
// Calls GetSessionStatus and calls on_result or on_failure
void GetSessionStatus(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure);
// Calls GetSessionStatus and does not wait for the response
void GetSessionStatus(OcaMediaTransportSessionID ID);
// Calls AddConnection and calls on_result or on_failure
void AddConnection(OcaMediaTransportSessionID SessionID, auto on_result, failure_callback on_failure);
// Calls AddConnection and does not wait for the response
void AddConnection(OcaMediaTransportSessionID SessionID);
// Calls ConfigureConnection and calls on_result or on_failure
void ConfigureConnection(OcaMediaTransportSessionID SessionID, OcaMediaTransportSessionConnectionID ConnectionID, OcaMediaStreamEndpointID LocalEndpointID, OcaBlob RemoteEndpointID, auto on_result, failure_callback on_failure);
// Calls ConfigureConnection and does not wait for the response
void ConfigureConnection(OcaMediaTransportSessionID SessionID, OcaMediaTransportSessionConnectionID ConnectionID, OcaMediaStreamEndpointID LocalEndpointID, OcaBlob RemoteEndpointID);
// Calls DeleteConnection and calls on_result or on_failure
void DeleteConnection(OcaMediaTransportSessionID SessionID, OcaMediaTransportSessionConnectionID ConnectionID, auto on_result, failure_callback on_failure);
// Calls DeleteConnection and does not wait for the response
void DeleteConnection(OcaMediaTransportSessionID SessionID, OcaMediaTransportSessionConnectionID ConnectionID);
// Calls DeleteConnections and calls on_result or on_failure
void DeleteConnections(OcaMediaTransportSessionID SessionID, auto on_result, failure_callback on_failure);
// Calls DeleteConnections and does not wait for the response
void DeleteConnections(OcaMediaTransportSessionID SessionID);
// Calls GetAdaptationData and calls on_result or on_failure
void GetAdaptationData(auto on_result, failure_callback on_failure);
// Calls SetAdaptationData and calls on_result or on_failure
void SetAdaptationData(OcaAdaptationData Data, auto on_result, failure_callback on_failure);
// Calls SetAdaptationData and does not wait for the response
void SetAdaptationData(OcaAdaptationData Data);
// Observing Properties
subscription observeSessions(auto callback, failure_callback on_failure);
subscription observeSessionStatuses(auto callback, failure_callback on_failure);
subscription observeAdaptationData(auto callback, failure_callback on_failure);
// Property Changed Subscriptions
subscription OnSessionsChanged(auto callback, failure_callback on_failure);
subscription OnSessionStatusesChanged(auto callback, failure_callback on_failure);
subscription OnAdaptationDataChanged(auto callback, failure_callback on_failure);
};
}
Methods#
GetSessionType#
void GetSessionType(auto on_result, failure_callback on_failure)
Calls the method GetSessionType in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaString Type
failure_callback on_failure
: A callback which is called on error.
GetSessions#
void GetSessions(auto on_result, failure_callback on_failure)
Calls the method GetSessions in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaList<OcaMediaTransportSession> Sessions
failure_callback on_failure
: A callback which is called on error.
GetSession#
void GetSession(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure)
Calls the method GetSession in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID ID
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaMediaTransportSession Session
failure_callback on_failure
: A callback which is called on error.
AddSession#
void AddSession(auto on_result, failure_callback on_failure)
Calls the method AddSession in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ConfigureSession#
void ConfigureSession(OcaMediaTransportSessionID IDinternal, OcaBlob IDexternal, OcaString UserLabel, OcaBlob AdaptationData, auto on_result, failure_callback on_failure)
Calls the method ConfigureSession in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID IDinternal
OcaBlob IDexternal
OcaString UserLabel
OcaBlob AdaptationData
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
DeleteSession#
void DeleteSession(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure)
Calls the method DeleteSession in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID ID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ResetSession#
void ResetSession(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure)
Calls the method ResetSession in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID ID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
SetStreamingEnabled#
void SetStreamingEnabled(OcaMediaTransportSessionID ID, OcaBoolean Active, auto on_result, failure_callback on_failure)
Calls the method SetStreamingEnabled in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID ID
OcaBoolean Active
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
StartStreaming#
void StartStreaming(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure)
Calls the method StartStreaming in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID ID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
StopStreaming#
void StopStreaming(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure)
Calls the method StopStreaming in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID ID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
GetSessionStatuses#
void GetSessionStatuses(auto on_result, failure_callback on_failure)
Calls the method GetSessionStatuses in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaMap<OcaMediaTransportSessionID, OcaMediaTransportSessionStatus> Sessions
failure_callback on_failure
: A callback which is called on error.
GetSessionStatus#
void GetSessionStatus(OcaMediaTransportSessionID ID, auto on_result, failure_callback on_failure)
Calls the method GetSessionStatus in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID ID
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaMediaTransportSessionStatus Session
failure_callback on_failure
: A callback which is called on error.
AddConnection#
void AddConnection(OcaMediaTransportSessionID SessionID, auto on_result, failure_callback on_failure)
Calls the method AddConnection in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID SessionID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
ConfigureConnection#
void ConfigureConnection(OcaMediaTransportSessionID SessionID, OcaMediaTransportSessionConnectionID ConnectionID, OcaMediaStreamEndpointID LocalEndpointID, OcaBlob RemoteEndpointID, auto on_result, failure_callback on_failure)
Calls the method ConfigureConnection in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID SessionID
OcaMediaTransportSessionConnectionID ConnectionID
OcaMediaStreamEndpointID LocalEndpointID
OcaBlob RemoteEndpointID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
DeleteConnection#
void DeleteConnection(OcaMediaTransportSessionID SessionID, OcaMediaTransportSessionConnectionID ConnectionID, auto on_result, failure_callback on_failure)
Calls the method DeleteConnection in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID SessionID
OcaMediaTransportSessionConnectionID ConnectionID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
DeleteConnections#
void DeleteConnections(OcaMediaTransportSessionID SessionID, auto on_result, failure_callback on_failure)
Calls the method DeleteConnections in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaMediaTransportSessionID SessionID
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
GetAdaptationData#
void GetAdaptationData(auto on_result, failure_callback on_failure)
Calls the method GetAdaptationData in the remote device.
Parameters:#
auto on_result
: A callable (e.g. a lambda) with the following arguments:OcaAdaptationData Data
failure_callback on_failure
: A callback which is called on error.
SetAdaptationData#
void SetAdaptationData(OcaAdaptationData Data, auto on_result, failure_callback on_failure)
Calls the method SetAdaptationData in the remote device. If no result and error callback is specified, the method will be called without requesting a response.
Parameters:#
OcaAdaptationData Data
auto on_result
: A callable (e.g. a lambda) with 0 arguments.failure_callback on_failure
: A callback which is called on error.
observeSessions#
subscription observeSessions(auto callback, failure_callback on_failure)
Fetches the remote property Sessions and subscribes for modifications. The callback is called with the initial values of Sessions and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaList<OcaMediaTransportSession> Sessions
failure_callback on_failure
: A callback which is called on error.
observeSessionStatuses#
subscription observeSessionStatuses(auto callback, failure_callback on_failure)
Fetches the remote property SessionStatuses and subscribes for modifications. The callback is called with the initial values of SessionStatuses and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaMap<OcaMediaTransportSessionID, OcaMediaTransportSessionStatus> SessionStatuses
failure_callback on_failure
: A callback which is called on error.
observeAdaptationData#
subscription observeAdaptationData(auto callback, failure_callback on_failure)
Fetches the remote property AdaptationData and subscribes for modifications. The callback is called with the initial values of AdaptationData and whenever it changes.
Parameters:#
auto callback
: A callable (e.g. a lambda) with one argument:OcaAdaptationData AdaptationData
failure_callback on_failure
: A callback which is called on error.
OnSessionsChanged#
subscription OnSessionsChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaList<OcaMediaTransportSession> Sessions
failure_callback on_failure
: A callback which is called on error.
OnSessionStatusesChanged#
subscription OnSessionStatusesChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaMap<OcaMediaTransportSessionID, OcaMediaTransportSessionStatus> SessionStatuses
failure_callback on_failure
: A callback which is called on error.
OnAdaptationDataChanged#
subscription OnAdaptationDataChanged(auto callback, failure_callback on_failure)
Parameters#
auto callback
: A callable (e.g. a lambda) with one argument:OcaAdaptationData AdaptationData
failure_callback on_failure
: A callback which is called on error.