Esempio n. 1
0
        /// <summary>
        /// Initiates an operation to establish a new im call with the contact center service.
        /// </summary>
        /// <param name="webConversation">Web conversation.</param>
        /// <param name="message">Message.</param>
        /// <param name="callback">Callback method.</param>
        /// <param name="state">State.</param>
        /// <returns>Async result reference.</returns>
        public IAsyncResult BeginSendImMessage(WebConversation webConversation, string message, AsyncCallback callback, object state)
        {
            //Create new request.
            SendInstantMessageRequest request = new SendInstantMessageRequest();

            request.RequestId    = ContactCenterService.GenerateNewRequestId();
            request.Conversation = webConversation;
            request.Message      = message;
            return(((IContactCenterWcfService)this.WcfClient).BeginSendInstantMessage(request, callback, state));
        }
        /// <summary>
        /// Constructor to create new SendInstantMessageAsyncResult.
        /// </summary>
        /// <param name="request">Send Im message request. cannot be null.</param>
        /// <param name="imFlow">Instant messaging flow. Cannot be null.</param>
        /// <param name="textBody">Text body to send.</param>
        /// <param name="userCallback">User callback.</param>
        /// <param name="state">User state.</param>
        internal SendInstantMessageAsyncResult(SendInstantMessageRequest request,
                                               InstantMessagingFlow imFlow,
                                               string textBody,
                                               AsyncCallback userCallback,
                                               object state)
            : base(userCallback, state)
        {
            Debug.Assert(null != imFlow, "Im flow is null");
            Debug.Assert(null != request, "Request is null");

            m_imFlow = imFlow;
            m_sendImMessageRequest = request;
            m_textBody             = textBody;
        }