private void OnClientChatDisconnected()
 {
     if (m_confConversation != null && m_confConversation.State == Rtc.Internal.Platform.ResourceContract.ConversationState.Conferenced)
     {
         m_confConversation.DeleteAsync(LoggingContext).Observe <Exception>();
     }
 }
        private void CleanUpConversations()
        {
            if (m_confConversation != null && m_confConversation.State == ConversationState.Conferenced)
            {
                m_confConversation.DeleteAsync(LoggingContext).Observe <Exception>();
            }

            if (m_p2pConversation != null && m_p2pConversation.State == ConversationState.Connected)
            {
                m_p2pConversation.DeleteAsync(LoggingContext).Observe <Exception>();
            }
        }
Ejemplo n.º 3
0
        public async Task ShouldBeAbleToDeleteConversation()
        {
            // Given
            TestHelper.RaiseEventsFromFile(m_eventChannel, "Event_ConversationConnected.json");
            Assert.AreEqual(ConversationState.Connected, m_conversation.State);

            var resourceRemoved = false;

            m_conversation.HandleResourceRemoved += (sender, args) => { resourceRemoved = true; };
            var eventRaised = false;

            m_conversation.ConversationStateChanged += (sender, args) => { eventRaised = true; };

            // When
            await m_conversation.DeleteAsync(m_loggingContext).ConfigureAwait(false);

            // Then
            Assert.IsTrue(m_restfulClient.RequestsProcessed("DELETE " + DataUrls.Conversation), "Request to delete conversation was not sent out.");
            Assert.IsTrue(resourceRemoved, "ResourceRemoved event not raised for the conversation.");
            Assert.IsFalse(eventRaised, "ConversationStateChanged event raised when not expected.");
        }