Programmatically Schedule/Create Skype for Business Meeting
Asked Answered
H

2

6

I am working on a C#/console application that will schedule Skype for Business meetings and have not been able to find a clear answer on what is possible and what is the correct approach / sdk to use for doing so.

The application needs to:

  1. Create an lync / skype for business meeting at a future date with a single presenter who can bypass the lobby
  2. Retrieve the URL for joining that meeting for use in an email invitation to the other participants (outside the organization)

This would be running against on office 365 instance of Skype for Business. I have found a dizzying amount of information regarding the subject here in various SDKs that may / may not apply:

All seem to indicate they are not compatible with office 365 though, has anyone built a similar application or dealt with this before that could provide some advice?

Henden answered 3/6, 2015 at 19:14 Comment(0)
S
6

You can create a meeting using the Skype for Business User API (UCWA), which is now available for Skype for Business Online (Office 365).

Specifically, you need to make a POST request to the "myOnlineMeetings" resource:

POST https://lyncweb.contoso.com/ucwa/oauth/v1/applications/103...740/onlineMeetings/myOnlineMeetings HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer cwt=AAEB...buHc
[...]

{
  "attendanceAnnouncementsStatus":"Disabled",
  "description":"hey guys let's do a musical!",
  "subject":"holiday party",
  "attendees":["sip:[email protected]","sip:[email protected]"],
  "leaders":[]
}

In the response, you'll get a "joinURL" that you can give to participants:

HTTP/1.1 200 OK
[...]

{
  "accessLevel":"SameEnterprise",
  "entryExitAnnouncement":"Disabled",
  "attendees":["sip:[email protected]","sip:[email protected]"],
  "automaticLeaderAssignment":"Disabled",
  "description":"hey guys let's do a musical!",
  "expirationTime":"\/Date(136...000)\/",
  "leaders":[],
  "onlineMeetingId":"DED...367",
  "onlineMeetingUri":"sip:[email protected];gruu;opaque=app:conf:focus:id:DED...367",
  "onlineMeetingRel":"myOnlineMeetings",
  "organizerUri":"sip:[email protected]",
  "phoneUserAdmission":"Disabled",
  "lobbyBypassForPhoneUsers":"Disabled",
  "subject":"holiday party",
  "joinUrl":"https://meet.contoso.com/dana/DED...367","56de...4c83":"please pass this in a PUT request",
  "_links":{
    "self":{"href":"/ucwa/oauth/v1/applications/103...740/onlineMeetings/myOnlineMeetings/DEDX9367"},
    "onlineMeetingExtensions":{"href":"/ucwa/oauth/v1/applications/103...740/onlineMeetings/myOnlineMeetings/DED...367/extensions"}
  },
  "rel":"myOnlineMeeting",
  "etag":"891...351"
}

Note that the meeting doesn't have a scheduled time associated with it. It can be used at any time. You can of course place the URL in a calendar appointment (e.g. Outlook does this) but Skype for Business doesn't know about it.

Full details about the "myOnlineMeetings" request are here.

Scratches answered 12/5, 2016 at 22:3 Comment(1)
Can you please explain, how can I make call to get all the meeting scheduled in the "Skype Meeting Broadcast". I want to display it inside office 365 site.Cognize
F
-1

sched.lync.com

You have to rebuild the form request. This is the only way at this time. We try the communication right now with java.

Farina answered 1/9, 2015 at 9:44 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.