private void SendErrorMessage(HTTPSession webSession, Stream stream) { try { if (stream != null) { webSession.CloseStreamObject(stream); stream.Dispose(); stream = null; } HTTPMessage error = new HTTPMessage(); error.StatusCode = 404; error.StatusData = "Error"; error.StringBuffer = "Error"; webSession.Send(error); } catch (Exception ex) { Utils.WriteException(ex); } finally { AllowSystemStandBy(); } }
private void WebSession_OnStreamDone(HTTPSession sender, Stream streamObject) { sender.OnStreamDone -= WebSession_OnStreamDone; AllowSystemStandBy(); try { if (streamObject != null) { sender.CloseStreamObject(streamObject); streamObject.Dispose(); } string lastPlayedFile = sender.StateObject as string; if (!String.IsNullOrEmpty(lastPlayedFile)) { string nextFile = GetNextFile(sender.Remote.Address, lastPlayedFile); if (!String.IsNullOrEmpty(nextFile)) { // Enchain the audio files on the Freebox V5 SendStreamObject(sender, null, String.Format("0/{0}/1", nextFile)); } } } catch (Exception ex) { Utils.WriteException(ex); } }
/// <summary> /// This method gets called when we are done streaming the media /// </summary> /// <param name="sender"></param> /// <param name="S"></param> protected void DoneSink(HTTPSession sender, Stream S) { sender.CloseStreamObject(S); sender.Close(); }
/// <summary> /// This method gets called when we are done streaming the media /// </summary> /// <param name="sender"></param> /// <param name="S"></param> protected void DoneSink(HTTPSession sender, Stream S) { sender.CloseStreamObject(S); sender.Close(); }