//未就绪 public void NotReadyForMedia() { try { RequestNotReadyForMedia request = RequestNotReadyForMedia.Create("chat", ReasonInfo.Create("", "")); LogRequest(request.ToString()); protocolManagementService[ISERVER_IDENTIFIER].Send(request); } catch (Exception e) { LogException(e); } }
public OpenMediaNotReadyAction(IProtocol protocol) : base(protocol) { base.Request = RequestNotReadyForMedia.Create("chat", null); OrPredicate <IMessage> filter = new OrPredicate <IMessage>( new MessageIdFilter(EventAck.MessageId), new MessageIdFilter(EventAgentNotAvailable.MessageId)); filter.AddPredicate(new AgentStatusFilter("chat", 0)); base.SuccessFilter = filter; base.FailureFilter = new MessageIdFilter(EventError.MessageId); }
/// <summary> /// Agents the ready. /// </summary> /// <param name="proxyClientId">The proxy client identifier.</param> /// <param name="mediaType">Type of the media.</param> /// <returns></returns> public OutputValues AgentNotReady(int proxyClientId, string mediaType) { OutputValues output = OutputValues.GetInstance(); output.Message = string.Empty; output.MessageCode = string.Empty; output.ErrorCode = 0; try { RequestNotReadyForMedia requestAgentNotReady = RequestNotReadyForMedia.Create(); requestAgentNotReady.ProxyClientId = proxyClientId; requestAgentNotReady.MediaTypeName = mediaType; if (Settings.InteractionProtocol != null && Settings.InteractionProtocol.State == ChannelState.Opened) { IMessage message = Settings.InteractionProtocol.Request(requestAgentNotReady); if (message != null) { switch (message.Id) { case EventAck.MessageId: EventAck eventAgentNotReady = (EventAck)message; logger.Info("------------AgentNotReady---------------"); logger.Info("ProxyClientId :" + proxyClientId); logger.Info("MediaTypeName :" + mediaType); logger.Info("Name :" + eventAgentNotReady.Name.ToString()); logger.Info("----------------------------------------"); logger.Trace(eventAgentNotReady.ToString()); output.MessageCode = "200"; output.Message = "Agent Not Ready Successful"; break; case EventError.MessageId: EventError eventError = (EventError)message; string LoginErrorCode = Convert.ToString(eventError.ErrorCode); string LoginErrorDescription = Convert.ToString(eventError.ErrorDescription); logger.Trace(eventError.ToString()); output.ErrorCode = eventError.ErrorCode; output.MessageCode = "2002"; output.Message = "AgentNotReady() : " + LoginErrorDescription; break; } } else { output.MessageCode = "2001"; output.Message = "Agent Not Ready UnSuccessful"; } } else { logger.Warn("AgentNotReady() : Interaction Server Protocol is Null.."); } } catch (Exception commonException) { logger.Error("Error occurred while Agent Not Ready request " + commonException.ToString()); output.MessageCode = "2001"; output.Message = commonException.Message; } return(output); }