cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
870
Views
2
Helpful
5
Replies

GetHostUrlMeeting for alternate host.

rebuild76
Level 1
Level 1

Hi. Please advice me what am I doing wrong in my scenario.

I have corporate intranet website and want to integrate and use Webex. Suppose we have registered 3 users: webexadmin (site administrator, owner of virtual room), wbx1 and wbx2 (registered users, account type "host").

Registered users should be able to schedule and host meetings using intranet website interface. To schedule meeting, I use API method "CreateMeeting" (set for wbx1 and wbx2 host role: <serv:role>HOST</serv:role>):

<?xml version="1.0" encoding="utf-8"?>

<serv:message xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting" xmlns:com="http://www.webex.com/schemas/2002/06/common" xmlns:att="http://www.webex.com/schemas/2002/06/service/attendee" xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service http://www.webex.com/schemas/2002/06/service/service.xsd" xmlns:serv="http://www.webex.com/schemas/2002/06/service">

  <serv:header>

    <serv:securityContext>

      <serv:webExID>webexadmin</serv:webExID>

      <serv:password>***</serv:password>

      <serv:siteName>***</serv:siteName>

    </serv:securityContext>

  </serv:header>

  <serv:body>

    <serv:bodyContent xsi:type="java:com.webex.service.binding.meeting.CreateMeeting">

      <serv:accessControl>

        <serv:meetingPassword>***</serv:meetingPassword>

      </serv:accessControl>

      <serv:metaData>

        <serv:confName>Api10</serv:confName>

      </serv:metaData>

      <serv:participants>

        <serv:maxUserNumber>5</serv:maxUserNumber>

        <serv:attendees>

          <serv:attendee>

            <serv:person>

              <com:name>Wbx1</com:name>

              <com:email>wbx1@***.ru</com:email>

              <com:sendReminder>true</com:sendReminder>

            </serv:person>

            <serv:role>HOST</serv:role>

            <att:emailInvitations>true</att:emailInvitations>

          </serv:attendee>

          <serv:attendee>

            <serv:person>

              <com:name>Wbx2</com:name>

              <com:email>wbx2@***.ru</com:email>

              <com:sendReminder>true</com:sendReminder>

            </serv:person>

            <serv:role>HOST</serv:role>

            <att:emailInvitations>true</att:emailInvitations>

          </serv:attendee>

          <serv:attendee>

            <serv:person>

              <com:name>Wbx3</com:name>

              <com:email>wbx3@***.ru</com:email>

              <com:sendReminder>true</com:sendReminder>

            </serv:person>

            <att:emailInvitations>true</att:emailInvitations>

          </serv:attendee>

        </serv:attendees>

      </serv:participants>

      <serv:enableOptions>

        <serv:chat>true</serv:chat>

        <serv:poll>true</serv:poll>

        <serv:audioVideo>true</serv:audioVideo>

        <serv:attendeeList>true</serv:attendeeList>

        <serv:presentation>true</serv:presentation>

      </serv:enableOptions>

      <serv:schedule>

        <serv:startDate>04/05/2018 11:25:30</serv:startDate>

        <serv:timeZoneID>33</serv:timeZoneID>

        <serv:duration>180</serv:duration>

        <serv:openTime>600</serv:openTime>

      </serv:schedule>

    </serv:bodyContent>

  </serv:body>

</serv:message>

I get success response. When metting's time will come, user wbx1 or wbx2 should be able to start and host meeting without webexadmin. But how to do that? When I'm trying to use GethosturlMeeting:

<?xml version="1.0" encoding="UTF-8"?>

<serv:message xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:serv="http://www.webex.com/schemas/2002/06/service" xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service http://www.webex.com/schemas/2002/06/service/service.xsd">

<header>

<securityContext>

<webExID>wbx1</webExID>

<password>***</password>

<siteName>***</siteName>

</securityContext>

</header>

<body>

<bodyContent xsi:type="java:com.webex.service.binding.meeting.GethosturlMeeting">

<sessionKey>***</sessionKey>

</bodyContent>

</body>

</serv:message>

I'm getting error:

<serv:response>

<serv:result>FAILURE</serv:result>

<serv:reason>Access denied, additional privileges are required</serv:reason>

<serv:gsbStatus>PRIMARY</serv:gsbStatus>

<serv:exceptionID>000001</serv:exceptionID>

</serv:response>

If I use securityContext of webexadmin

<?xml version="1.0" encoding="UTF-8"?>

<serv:message xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:serv="http://www.webex.com/schemas/2002/06/service" xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service http://www.webex.com/schemas/2002/06/service/service.xsd">

<header>

<securityContext>

<webExID>webexadmin</webExID>

<password>***</password>

<siteName>***</siteName>

</securityContext>

</header>

<body>

<bodyContent xsi:type="java:com.webex.service.binding.meeting.GethosturlMeeting">

<sessionKey>***</sessionKey>

</bodyContent>

</body>

</serv:message>

this works fine and I get Url. But this url is for webexadmin. I need url for wbx1 or wbx2 (with their names and emails).

Please advice me how to properly use this scenario.

1 Accepted Solution

Accepted Solutions

Hello,

     To resolve the MCPrivilegeRequired error, the alternate host(s) must be granted permission to host Meeting Center sessions on their own. Your WebEx account manager can meet to demonstrate user privilege modification as needed.

View solution in original post

5 Replies 5

nmorrow
Cisco Employee
Cisco Employee

Hello,

     GethosturlMeeting requires schedule level permission, so it will only work for the primary host and the scheduling host (usually the same, but scheduling duties can be delegated using schedule on behalf). You can build a host URL for alternate host by using GetLoginTicket to get a one time login ticket and building the host URL using URL API in the following format: https://sitename.webex.com/sitename/p.php?AT=LI&WID=username&TK=TicketProvidedByGetLoginTicket&MU=https://sitename.webex.com/sitename/m.php?AT=HM%26MK=123456789, where sitename should be changed to the actual site name (x4), TicketProvidedByGetLoginTicket should be changed to the actual ticket provided by GetLoginTicket, and 123456789 should be changed to the actual meeting key. You may also add error handling by adding a &BU=URL, where URL is your actual landing page URL to capture errors. Note that this host URL is actually 2 separate URLs, one for login, and one for launch meeting, if you wish to append &BU= to the launch meeting URL, you will need to encode & as %26, using & will attach it to the login URL.

Hello, Nathan.

Thank you for reply. I tried to generate url, but, unfortunately, couldn't start meeting.

In order you understand, I attached real requests and responses from server. As I understand, in this example user "wbx1" should be able to start scheduled meeting.

According to these requests I generated and tried this URL (it doesn't work now because ticket has been used):

https://compel-test.webex.com/compel-test/p.php?AT=LI&WID=wbx1&TK=c6e25f6c23dc303e689c65ba89c12166e4d2a910d67280b04248387cf5dfd296&MU=https://compel-test.webex.com/compel-test/m.php?AT=HM%26MK=702591799

I attached screenshot of webpage when I have tried this url. As you can see, I successfully login, but meeting does not start and meeting number doesn't show. It seems that parameter "MU=https://compel-test.webex.com/compel-test/m.php?AT=HM%26MK=702591799" is incorrect. When I see this screenshot url in browser's address bar is "https://compel-test.webex.com/mw3200/mywebex/default.do?siteurl=compel-test-en&AT=HM&ST=FAIL&MK=702591799&RS=MCPrivilegeRequired"

The name of virtual room is "v1". Maybe I should add additional parameter?

Hello,

     The original error appears to be MCPrivilegeRequired, which implies that the alternate host does not have permission to host Meeting Center sessions. That would need to be fixed first. The TK value is a one time use ticket, once consumed, it will not work again and a new one would need to be generated. Do note that this forum is public, please be sure to change your password.

Hello Nathan. How can I give permissions for alternate hosts to host meeting

session?

Hello,

     To resolve the MCPrivilegeRequired error, the alternate host(s) must be granted permission to host Meeting Center sessions on their own. Your WebEx account manager can meet to demonstrate user privilege modification as needed.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: