Schedule a Lync Conference with UCMA 3.0

2.1k Views Asked by At

I am trying to schedule a lync conference with UCMA 3.0. After creating the conference I send the ConferenceUri to the users and let them join the conference.

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

I schedule the conference with the following code:

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;
    }

After scheduling the conference i send the property Conference.ConferenceUri to the users. If the users clicks on the link with the ConferenceUri, the lync client reacts and asks if one would like to call the conference. Everything works fine but i am alone in the conference together with a other impersonate user who is offline since 120 days.

Can someone help me? Thanks a lot.

3

There are 3 best solutions below

1
On

Have you looked at the sample apps that ship with UCMA 3? There's one on conferencing. The sample is described in this brief article:

Schedule and Join a Conference (QuickStart)

3
On

As per UCMA 3.0 Conference flow is:

  1. Schedule conference using BeginScheduleConference and EndScheduleConference.
  2. Join Conference using BeginJoin and EndJoin-Important (your local end point will join the conference through these calls).
  3. Escalate using BeginEscalateToConference and EndEscalateToConference for your local endpoint.
  4. Now you can publish the conference id and uri for other participants.
1
On

i think you can use

conferenceScheduleInformation.ExpiryTime