我正在尝试使用UCMA 3.0安排一次lync会议。创建会议后,我将ConferenceUri发送给用户,并让他们加入会议。

<a href="callto:sip:[email protected];gruu;opaque=app:conf:focus:id:XXXXXXX">Lync Test 2.0</a>


我使用以下代码安排会议:

public LyncConference CreateConference(LyncConference lyncConference)
       {
        ApplicationEndpoint appEndpoint = CreateApplicationEndpoint();
        if (appEndpoint == null)
        {
            return null;
        }

        // Event to notify the main thread when the endpoint has scheduled a conference.
        AutoResetEvent waitForConferenceScheduling = new AutoResetEvent(false);

        LyncConference newLyncConference = null;

        ConferenceScheduleInformation conferenceScheduleInformation = CreateConferenceScheduleInformation(lyncConference, null);

        WriteLine("New Conference Schedule Information created. Calling Lync ...", EventLogEntryType.Information);

        Exception error = null;

        appEndpoint.ConferenceServices.BeginScheduleConference(conferenceScheduleInformation,
            result =>
            {
                try
                {
                    Conference conference = appEndpoint.ConferenceServices.EndScheduleConference(result);
                    newLyncConference = CreateLyncConference(conference);
                    waitForConferenceScheduling.Set();
                }
                catch (Exception e)
                {
                    error = e;
                    WriteLine(e.Message, EventLogEntryType.Error);
                    waitForConferenceScheduling.Set();
                }
            },
            appEndpoint.ConferenceServices);


        // Wait until scheduling of the conference completes.
        waitForConferenceScheduling.WaitOne();


        if (error != null)
        {
            String errorMessage = "Error while creating a new lync conference: " + error.Message;
            WriteLine(errorMessage, EventLogEntryType.Error);
            throw new Exception(error.Message, error);
        }

            WriteLine("Conference scheduled with ID: " + newLyncConference.ConferenceId, EventLogEntryType.Information);
            PrintConferenceInfo(newLyncConference);

        return newLyncConference;
    }


安排会议后,我将属性Conference.ConferenceUri发送给用户。
如果用户单击带有ConferenceUri的链接,则lync客户端会做出反应并询问是否要呼叫会议。一切正常,但我和另一个自120天以来一直处于离线状态的模拟用户一起独自在会议中。

有人能帮我吗?
非常感谢。

最佳答案

根据UCMA 3.0,会议流程为:


使用BeginScheduleConference和EndScheduleConference安排会议。
使用BeginJoin和EndJoin-Important加入会议(您的本地端点将通过这些呼叫加入会议)。
使用BeginEscalateToConference和EndEscalateToConference来升级本地端点。
现在,您可以为其他参与者发布会议ID和uri。

关于c# - 通过UCMA 3.0安排Lync session ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21019286/

10-11 22:49