public ActionResult ConferenceStatus([FromQuery(Name = "roomCode")] string roomCode, ConferenceStatusCallback request) { PerCLScript script = new PerCLScript(); EConferenceStatus status = request.getStatus; String conferenceId = request.getConferenceId; // find which conference room the conference belongs to ConferenceRoom room = conferenceRooms[roomCode]; if (room == null) { // Handle case where callback is called for a room that does not exist } if (status == EConferenceStatus.Empty && room.canConferenceTerminate) { try { terminateConference(conferenceId); room.conferenceId = null; } catch (FreeClimbException pe) { // Handle error when terminateConference fails } } // after first EMPTY status update conference can be terminated room.canConferenceTerminate = true; return(Content(script.toJson(), "application/json")); }
/// <summary> /// Sets the status object value. /// </summary> /// <param name="val">status value.</param> /// <see cref="EConferenceStatus">Boolean enumeration.</see> public void setStatus(EConferenceStatus val) { this.status = val; }