/// <summary> /// /// </summary> /// <returns></returns> internal SessionModel PostSession(SessionModel session, DeviceProfile device) { try { string absoluteUri = TywiConfiguration.TywiServiceUri + UriTemplates.POST_SESSION_URI; SessionApiRequest<SessionModel, SessionModel> request = new SessionApiRequest<SessionModel, SessionModel>( device, absoluteUri, Http.HttpUtilities.Methods.POST, session); return this.ProcessRequest<SessionModel, SessionModel>(request); } catch (Exception exc) { throw new AccessDeniedException(String.Format("Failed to post audio from device {0}: {1}", device.profile.id, exc.Message), exc); } }
/// <summary> /// /// </summary> private void InitSession() { if (String.IsNullOrEmpty(SessionId)) { SessionCapabilityModel[] capabilities = new SessionCapabilityModel[] { new SessionCapabilityModel() { name = "allowSecondarySpeakers", value = "true" }, new SessionCapabilityModel() { name = "defaultLayout", value = "medium" }, new SessionCapabilityModel() { name = "defaultTTS", value = "false" }, }; SessionModel session = new SessionModel() { capabilities = capabilities }; SessionModel returnedSession = _service.PostSession(session, Device); this.SessionId = returnedSession.sessionId; } if (this.SessionConnected != null) { SessionConnected(this, EventArgs.Empty); } }