public void ParseFromXMLStringMultiDialogsUnitTest()
        {
            Console.WriteLine("--> " + System.Reflection.MethodBase.GetCurrentMethod().Name);

            string eventDialogInfoStr = "<?xml version='1.0' encoding='utf-16'?>" +
                                        "<dialog-info version='1' state='full' entity='sip:[email protected]' xmlns='urn:ietf:params:xml:ns:dialog-info'>" +
                                        " <dialog id='as7d900as8' call-id='a84b4c76e66710' local-tag='1928301774' direction='initiator'>" +
                                        "  <state event='remote-bye' code='486'>terminated</state>" +
                                        "  <duration>13</duration>" +
                                        " </dialog>" +
                                        " <dialog id='4353458'>" +
                                        "  <state>progressing</state>" +
                                        " </dialog>" +
                                        "</dialog-info>";

            SIPEventDialogInfo dialogInfo = SIPEventDialogInfo.Parse(eventDialogInfoStr);

            Assert.True(dialogInfo.DialogItems.Count == 2, "The parsed event dialog items count was incorrect.");
            Assert.True(dialogInfo.DialogItems[0].ID == "as7d900as8", "The parsed event dialog event id for the first dialog was incorrect.");
            Assert.True(dialogInfo.DialogItems[0].State == "terminated", "The parsed event dialog event state for the first dialog was incorrect.");
            Assert.True(dialogInfo.DialogItems[1].ID == "4353458", "The parsed event dialog event id for the second dialog was incorrect.");
            Assert.True(dialogInfo.DialogItems[1].State == "progressing", "The parsed event dialog event state for the second dialog was incorrect.");

            Console.WriteLine(dialogInfo.ToXMLText());

            Console.WriteLine("-----------------------------------------");
        }
        public void GetAsXMLStringUnitTest()
        {
            Console.WriteLine("--> " + System.Reflection.MethodBase.GetCurrentMethod().Name);

            SIPEventDialogInfo dialogInfo = new SIPEventDialogInfo(0, SIPEventDialogInfoStateEnum.full, SIPURI.ParseSIPURI("sip:[email protected]"));

            dialogInfo.DialogItems.Add(new SIPEventDialog("abcde", "terminated", 487, SIPEventDialogStateEvent.Cancelled, 2));

            Console.WriteLine(dialogInfo.ToXMLText());

            Console.WriteLine("-----------------------------------------");
        }
        public void ParseFromXMLStringDialogWithParticipantsUnitTest()
        {
            logger.LogDebug("--> " + System.Reflection.MethodBase.GetCurrentMethod().Name);
            logger.BeginScope(System.Reflection.MethodBase.GetCurrentMethod().Name);

            string eventDialogInfoStr = "<?xml version='1.0' encoding='utf-16'?>" +
                                        "<dialog-info version='1' state='full' entity='sip:[email protected]' xmlns='urn:ietf:params:xml:ns:dialog-info'>" +
                                        " <dialog id='as7d900as8' call-id='a84b4c76e66710' local-tag='1928301774' direction='initiator'>" +
                                        "  <state event='remote-bye' code='486'>terminated</state>" +
                                        "  <duration>13</duration>" +
                                        "  <local>" +
                                        "   <identity>sip:[email protected];user=phone</identity>" +
                                        "   <cseq>2</cseq>" +
                                        "  </local>" +
                                        "  <remote>" +
                                        "   <identity display-name='Joe Bloggs'>sip:[email protected]</identity>" +
                                        "   <target uri='sip:[email protected]:5070' />" +
                                        "   <cseq>1</cseq>" +
                                        "  </remote>" +
                                        " </dialog>" +
                                        "</dialog-info>";

            SIPEventDialogInfo dialogInfo = SIPEventDialogInfo.Parse(eventDialogInfoStr);

            Assert.True(dialogInfo.DialogItems[0].LocalParticipant != null, "The parsed event dialog local participant was not correct.");
            Assert.True(dialogInfo.DialogItems[0].RemoteParticipant != null, "The parsed event dialog remote participant was not correct.");
            Assert.True(dialogInfo.DialogItems[0].LocalParticipant.URI == SIPURI.ParseSIPURI("sip:[email protected];user=phone"), "The local participant URI was incorrect.");
            Assert.True(dialogInfo.DialogItems[0].LocalParticipant.CSeq == 2, "The local participant CSeq was incorrect.");
            Assert.True(dialogInfo.DialogItems[0].RemoteParticipant.URI == SIPURI.ParseSIPURI("sip:[email protected]"), "The remote participant URI was incorrect.");
            Assert.True(dialogInfo.DialogItems[0].RemoteParticipant.DisplayName == "Joe Bloggs", "The remote participant display name was incorrect.");
            Assert.True(dialogInfo.DialogItems[0].RemoteParticipant.TargetURI == SIPURI.ParseSIPURI("sip:[email protected]:5070"), "The remote participant target URI was incorrect.");
            Assert.True(dialogInfo.DialogItems[0].RemoteParticipant.CSeq == 1, "The remote participant CSeq was incorrect.");

            logger.LogDebug(dialogInfo.ToXMLText());

            logger.LogDebug("-----------------------------------------");
        }
Exemple #4
0
 public override string GetNotifyBody()
 {
     return(DialogInfo.ToXMLText());
 }