Halyri - Server
0.9.1
|
Class for managing audio/video and measurement data distribution from mobile emergency clients to the associated call center clients. Data packets from mobile emergency clients can be relayed in a fan-out style to multiple call center connections. Data subscriptions for each call center connection are stored in the "dataSubscribers" dictionary. More...
Public Member Functions | |
void | Disable () |
Disables the UdpMediaRelayServerCore to release its undelying UDP socket. More... | |
void | SubscribeCallCenterClientForData (CallCenterConnection callCenter, Connection mobileClient) |
Adds the call center client as a receiver for audio/video and instrument measurement data sent by the specified mobile emergency client. Also adds the call center client as the sole sender of data to the mobile emerngenct client. More... | |
void | UnsubscribeCallCenterClientForData (CallCenterConnection callCenter, Connection mobileClient) |
Unsubscribes the call center client from audio/video and instrument measurement data sent by the specified mobile emergency client. More... | |
void | UnsubscribeCallCenterClientForAnyData (CallCenterConnection callCenter) |
Unsubscribes the call center client from audio/video and instrument measurement data sent by any mobile emergency client. Also removes queues and mappings for publishing data from the call center client to any mobile emergency client. More... | |
void | PublishMobileClientAudioVideo (string mobileGuid, MediaInformationDto mediaInformation, byte[] mediaPayload) |
Performs fan-out distribution of audio/video data received from a mobile emergency client with the specified GUID. The data is distributed to the call center clients that have subscribed for data from mobile client using the specified GUID. More... | |
bool | PublishCallCenterClientAudioVideo (CallCenterConnectionDto user, MediaInformationDto mediaInfo, byte[] mediaData) |
Publishes audio and video from a call center client to its client specific queue. This data can be asynchronously read by the remote mobile emergency client over its WCF connection. More... | |
AudioVideoContainerDto | MobileClientGetAudioVideoFromPublishQueue (string mobileGuid) |
Returns audio and video media published by a call center connection. If the publishing queue for the call center client associated with the calling mobile emergency client, this method returns an empty AudioVideoContainerDto. Otherwise returns the AudioVideoContainerDto from the from of the media queue. More... | |
void | PublishMobileClientInstrumentData (string mobileGuid, MeasurementInstrumentDto measurementInstrument, byte[] measurementPayload) |
Performs fan-out distribution of measurement data received from a mobile emergency client with the specified GUID. The data is distributed to the call center clients that have subscribed for data from mobile client using the specified GUID. More... | |
Properties | |
static DataTransferController | Instance [get] |
Returns the DatatransferController instance. More... | |
Class for managing audio/video and measurement data distribution from mobile emergency clients to the associated call center clients. Data packets from mobile emergency clients can be relayed in a fan-out style to multiple call center connections. Data subscriptions for each call center connection are stored in the "dataSubscribers" dictionary.
<author>Veli-Mikko Puupponen</author> Data packets from call center clients to the mobile emergency clients are enqueued in a call center client specific queue from which the mobile emergency client that the call center client is currently processing is able to fetch them.
Contains an instance of UdpMediaRelayServerCore that manages the UDP based media data transfer.
void Disable | ( | ) |
Disables the UdpMediaRelayServerCore to release its undelying UDP socket.
AudioVideoContainerDto MobileClientGetAudioVideoFromPublishQueue | ( | string | mobileGuid | ) |
Returns audio and video media published by a call center connection. If the publishing queue for the call center client associated with the calling mobile emergency client, this method returns an empty AudioVideoContainerDto. Otherwise returns the AudioVideoContainerDto from the from of the media queue.
mobileGuid | Guid of an existing emergency mobile client that is connected to the server. |
bool PublishCallCenterClientAudioVideo | ( | CallCenterConnectionDto | user, |
MediaInformationDto | mediaInfo, | ||
byte[] | mediaData | ||
) |
Publishes audio and video from a call center client to its client specific queue. This data can be asynchronously read by the remote mobile emergency client over its WCF connection.
user | CallCenterConnectionDto describing the publishing call center client |
mediaInfo | MediaInformationDto describing the published media data |
mediaData | Media data |
void PublishMobileClientAudioVideo | ( | string | mobileGuid, |
MediaInformationDto | mediaInformation, | ||
byte[] | mediaPayload | ||
) |
Performs fan-out distribution of audio/video data received from a mobile emergency client with the specified GUID. The data is distributed to the call center clients that have subscribed for data from mobile client using the specified GUID.
mobileGuid | GUID of the mobile emergency client connection providing the audio/video |
mediaInformation | Description of the audio/video data |
mediaPayload | Audio/video payload data |
void PublishMobileClientInstrumentData | ( | string | mobileGuid, |
MeasurementInstrumentDto | measurementInstrument, | ||
byte[] | measurementPayload | ||
) |
Performs fan-out distribution of measurement data received from a mobile emergency client with the specified GUID. The data is distributed to the call center clients that have subscribed for data from mobile client using the specified GUID.
mobileGuid | GUID of the mobile emergency client connection providing the data |
measurementInstrument | Instrument producing the measurement data |
measurementPayload | Measurement data from the instrument |
void SubscribeCallCenterClientForData | ( | CallCenterConnection | callCenter, |
Connection | mobileClient | ||
) |
Adds the call center client as a receiver for audio/video and instrument measurement data sent by the specified mobile emergency client. Also adds the call center client as the sole sender of data to the mobile emerngenct client.
callCenter | The subscribing call center client |
mobileClient | The mobile emergency client from whon the data is subscribed from |
void UnsubscribeCallCenterClientForAnyData | ( | CallCenterConnection | callCenter | ) |
Unsubscribes the call center client from audio/video and instrument measurement data sent by any mobile emergency client. Also removes queues and mappings for publishing data from the call center client to any mobile emergency client.
callCenter | The unsubscribing call center client |
void UnsubscribeCallCenterClientForData | ( | CallCenterConnection | callCenter, |
Connection | mobileClient | ||
) |
Unsubscribes the call center client from audio/video and instrument measurement data sent by the specified mobile emergency client.
callCenter | The unsubscribing call center client |
mobileClient | The mobile emergency client from whom data is no more subscribed by the specified call center connection |
|
staticget |
Returns the DatatransferController instance.