This documentation is archived and is not being maintained.

GetTicketFor

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

Retrieves a login ticket for a specified user.

public Status GetTicketFor(string windowsId,
                    out string lmUserId,
                        out string name, 
                        out string role, 
                        out string ticketURL,
                        out int ticketTimeout)

windowsId

Specifies the Windows identity of the user for whom the login ticket is retrieved.

lmUserId

Returns the user's Live Meeting user ID.

name

Returns the user's Live Meeting name.

role

Returns the user's Live Meeting role: Administrator, Organizer, or Member.

ticket

Returns the login ticket.

ticketTimeout

Returns the timeout interval for the login ticket.

Status

Meaning

HasAccount_NotEntitled

The login ticket was not issued because the Windows user specified in the call has a Live Meeting account but is no longer entitled to have it based on that user's current Active Directory group membership.

LoginDisabled

The login ticket was not issued because the Portal administrator has disabled Live Meeting login.

NoAccount_Entitled

The login ticket was not issued because no Live Meeting account was found for the user; although, the user is entitled to have a Live Meeting account.

NoAccount_NotEntitled

The login ticket was not issued because no Live Meeting account was found for the user, and the user is not entitled to have a Live Meeting account.

NotInDirectory

The login ticket was not issued. See the section Web Method Call Return Values above for details.

Success

The login ticket was issued.

Unauthorized

The login ticket was not issued. See the section Web Method Call Return Values above for details.

The GetTicketFor Web method functions as follows:

  1. The caller invokes the Web method specifying the Windows identity of the user for whom the Live Meeting login ticket is to be obtained.

  2. IIS authenticates the caller using integrated Windows authentication.

  3. The Portal does the following:

    • Verifies that Web method calls are enabled. If not, it returns WebMethodCallsDisabled.

    • Verifies that the caller is a member of a Windows security group listed in Web method callers. If not, it returns Unauthorized.

    • Verifies that login is enabled. If not, it returns LoginDisabled.

    • Calls Active Directory to retrieve the attributes for the user whose windowsId was specified in the call. If the user cannot be found in Active Directory, it returns NotInDirectory.

    • Calls the Live Meeting GetUser XML API to retrieve the user's Live Meeting account information. If the user does not have an account or is not entitled to have an account, it returns NoAccount_Entitled, NoAccount_NotEntitled, or HasAccount_NotEntitled as appropriate.

    • Calls the CreateTicket XML API to obtain a login ticket.

    • Returns Success if the CreateTicket XML API call is successful along with the lmUserId, name, role, and ticket. Otherwise, it returns the XML API error to the caller.

LMWebService lmWebService = new LMWebService();
lmWebService.Url = "https://localhost/LMPortal/LMWebService.asmx";
lmWebService.Credentials = CredentialCache.DefaultCredentials;

string windowsId = @"contoso\bill";
string lmUserId;
string name;
string role;
string ticketURL;
int ticketTimeout;

Status outcome = lmWebService.GetTicketFor(windowsId, out lmUserId, out name,
                                           out role, out ticketURL,
                                           out ticketTimeout);
if (outcome == Status.Success)
{
   Console.WriteLine("Ticket obtained for user " + windowsId);
   Console.WriteLine("lmUserId: " + lmUserId);
   Console.WriteLine("name: " + name);
   Console.WriteLine("role: " + role);
   Console.WriteLine("ticketURL: " + ticketURL);
   Console.WriteLine("ticketTimeout: " + ticketTimeout);
}
else
{
   Console.WriteLine("Ticket not obtained for user " + windowsId +
                     " due to error " + outcome);
}
Show: