AgentStateCallback¶
AgentStateCallback implements the generated WCF duplex callback contract IAgentStateServiceCallback, receiving real-time agent call-state notifications from the CallRex agent-state service and forwarding them to CallRecordingSystem via the CallStateChanged delegate; see CallRex WCF proxy operations.
Purpose¶
- Receives push notifications (
ReceiveState) from the CallRex agent-state WCF service as agents' call states change. - Converts the generated proxy's
RealtimeUserStatetype into this library's own CallMonitorState DTO via the staticConvertmethod. - Filters notifications to only the users currently being monitored, via
UserIdsToMonitor.
Context¶
- Namespace:
SAIF.Services.ClientProxies.ThirdParty - Assembly/package:
SAIF.Application.Services.AudioVideo.32 - Implements: generated
IAgentStateServiceCallback
Public members¶
| Member | Signature | Purpose |
|---|---|---|
| ReceiveState | void ReceiveState(RealtimeUserState state) |
WCF duplex callback entry point invoked by the CallRex agent-state service when a monitored agent's state changes. |
| CallStateChanged | delegate ... CallStateChanged |
Delegate invoked with the converted CallMonitorState so CallRecordingSystem can raise its own OnCallStateChanged event.* |
| UserIdsToMonitor | IEnumerable<string> UserIdsToMonitor { get; set; } |
The set of user IDs this callback instance should forward state changes for.* |
| id | Guid id |
Correlation/instance identifier for this callback registration.* |
| Convert (static) | static CallMonitorState Convert(RealtimeUserState state) |
Maps the generated proxy's RealtimeUserState into this library's CallMonitorState DTO. |
Behavioral notes¶
- Registered with the CallRex agent-state service by
CallRexStateServiceProxy.Register;ReceiveStatecalls triggerCallStateChanged, whichCallRecordingSystem.CallState_Changedsubscribes to in order to raise its ownOnCallStateChangedevent.
Constraints and usage notes¶
- Instances of this type are tied to the lifetime of the duplex WCF channel established by
CallRexStateServiceProxy; they are not intended to be constructed or used independently of that proxy.*
Note: Statements marked with
*were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with**could not be confirmed; treat as unknown until verified.
Sources¶
Application\SAIF.Application.Services.AudioVideo\Services\ClientProxies\ThirdParty\AgentStateCallback.csApplication\SAIF.Application.Services.AudioVideo\Services\ClientProxies\ThirdParty\CallRexStateServiceProxy.csApplication\SAIF.Application.Services.AudioVideo\Services\Utilities\AudioVideo\RecordingSystem.cs