Пример #1
0
        static void JoinAndSend()
        {
            #region Validate Inputs
            if (ConfigurationManager.AppSettings["MSR.LST.ConferenceXP.PartSim.JoinAndSend.OtherCapabilityName"] == null)
            {
                Console.WriteLine(Strings.MustSpecifyAnOtherCapabilityName);
                Console.WriteLine(Strings.ValidOtherCapabilitySenders);
                foreach (string s in Conference.OtherCapabilitySenders)
                {
                    Console.WriteLine(s);
                }
                return;
            }
            string otherCapabilitySenderName = ConfigurationManager.AppSettings["MSR.LST.ConferenceXP.PartSim.JoinAndSend.OtherCapabilityName"];

            bool found = false;
            foreach (string s in Conference.OtherCapabilitySenders)
            {
                if (s == otherCapabilitySenderName)
                {
                    found = true;
                    break;
                }
            }
            if (found == false)
            {
                Console.WriteLine(string.Format(CultureInfo.CurrentCulture,
                                                Strings.UnableToFindOtherCapabilitySender, otherCapabilitySenderName));
                Console.WriteLine(Strings.ValidOtherCapabilitySenders);
                foreach (string s in Conference.OtherCapabilitySenders)
                {
                    Console.WriteLine(s);
                }
                return;
            }
            #endregion

            // Hook CapabilitySending so we can autoposition the window
            Conference.CapabilitySending += new CapabilitySendingEventHandler(RestoreCapabilitySavedPosition);
            Conference.AutoPosition       = Conference.AutoPositionMode.None;

            Console.WriteLine(Strings.StartingJoinAndSend);

            JoinVenue();
            Console.WriteLine(string.Format(CultureInfo.CurrentCulture, Strings.JoinedVenue0As1, Conference.ActiveVenue.Name, Conference.LocalParticipant.Name));

            ICapabilitySender cs = Conference.CreateCapabilitySender(otherCapabilitySenderName);
            Console.WriteLine(string.Format(CultureInfo.CurrentCulture, Strings.StartedOtherCapabilitySender,
                                            otherCapabilitySenderName));

            Console.WriteLine(Strings.PressEnterToSaveSendingWindowPosition);
            Console.ReadLine();
            if (cs.IsSending)
            {
                if (cs is ICapabilityWindow)
                {
                    Console.WriteLine(string.Format(CultureInfo.CurrentCulture, Strings.SavingWindowPosition,
                                                    cs.Name));
                    SaveCapabilityPosition((ICapabilityWindow)cs);
                }
                else
                {
                    Console.WriteLine(string.Format(CultureInfo.CurrentCulture,
                                                    Strings.CapabilitySenderDoesNotImplementICapabilityWindow, cs.Name));
                }
                return;
            }
        }