 Rank: Member Joined: 7/17/2017(UTC) Posts: 20
Thanks: 2 times Was thanked: 11 time(s) in 9 post(s)
|
Originally Posted by: jhghar  THANKS! That worked!
So without those other functions in the Integration sample how do we go about building the other minimum requisite components of the relay://url to launch the session?
And/or... what are the other minimum components of the relay://url? In chrome dev tools we're seeing ~13 different parameters, but we're assuming that we may only need a few more to allow the session to launch.
Thanks a ton for any tips! Hi jhghar, The components necessary for a url that can launch a session are as follows: For a Host Session (version 6+) http://host:port/Host#Support/the session group name//the session id/Join For a Guest Session http://host:port/?Session=the session id Below are some example functions you can review that will generate these urls (note that neither of these methods do any kind of authentication): Code:
public object CreateGuestSupportSessionLink(string sessionName, string hostName = null)
{
//get a specific session
var session = SessionManagerPool.Demux.GetSessions().FirstOrDefault(s => s.Name == sessionName);
//if no such session exists, then create one
if(session == null)
{
session = SessionManagerPool.Demux.CreateSession(null, SessionType.Support, sessionName, hostName, false, sessionName, null);
}
//return the guest session url
return ServerExtensions.GetWebServerUri(ConfigurationManager.AppSettings, HttpContext.Current.Request.Url, true, true) + "?Session=" + session.SafeNav(s => s.SessionID);
}
public object CreateHostSupportSessionLink(string sessionName, string sessionGroupName, string hostName = null)
{
//get a specific session within a given session group
var sessionGroup = SessionManagerPool.Demux.GetSessionGroups().Where(s => s.Name == sessionGroupName).First();
var session = SessionManagerPool.Demux.GetSessions().FirstOrDefault(s => s.Name == sessionName);
//if no such session exists, then create one
if(session == null)
{
session = SessionManagerPool.Demux.CreateSession(null, SessionType.Support, sessionName, hostName, false, sessionName, null);
}
//depending on the version of the product, return the proper url
if (Constants.ProductVersion.Major < 6)
{
return new Uri(ServerExtensions.GetWebServerUri(ConfigurationManager.AppSettings, HttpContext.Current.Request.Url, true, true).Uri, string.Format("Host#{0}//{1}/Join", Extensions.UrlEncode(sessionGroup.Name), session.SessionID));
}
else
{
return new Uri(ServerExtensions.GetWebServerUri(ConfigurationManager.AppSettings, HttpContext.Current.Request.Url, true, true).Uri, string.Format("Host#Support/{0}//{1}/Join", Extensions.UrlEncode(sessionGroup.Name), session.SessionID));
}
}
|
 1 user thanked Conrad L for this useful post.
|
|