private string ICEcastGetStats(string password, BASSEncodeStats type) { string text = null; Socket socket = null; if (password == null) { password = this.AdminUsername + ":" + this.AdminPassword; } else if (password.IndexOf(':') < 0) { password = this.AdminUsername + ":" + password; } try { string request; if (type == BASSEncodeStats.BASS_ENCODE_STATS_ICE) { request = string.Format("GET /admin/listclients?mount={0} HTTP/1.0\r\nUser-Agent: {1}\r\nAuthorization: Basic {2}\r\n\r\n", Uri.EscapeDataString(this.MountPoint), Bass.BASS_GetConfigString(BASSConfig.BASS_CONFIG_NET_AGENT), this.Base64String(password)); } else { request = string.Format("GET /admin/stats HTTP/1.0\r\nUser-Agent: {0}\r\nAuthorization: Basic {1}\r\n\r\n", Bass.BASS_GetConfigString(BASSConfig.BASS_CONFIG_NET_AGENT), this.Base64String(password)); } socket = this.CreateSocket(this.ServerAddress, this.ServerPort); if (socket != null) { text = this.SendAndReceive(socket, request, Encoding.UTF8); if (text != null) { int num = text.ToUpper().IndexOf("<?XML"); if (num >= 0) { text = text.Substring(num); } } } } catch { } finally { if (socket != null) { socket.Close(); socket = null; } } return(text); }
public static string BASS_Encode_CastGetStats(int handle, BASSEncodeStats type, string pass) { if (string.IsNullOrEmpty(pass)) { IntPtr intPtr = BassEnc.BASS_Encode_CastGetStatsPtr(handle, type, IntPtr.Zero); if (intPtr != IntPtr.Zero) { return(Utils.IntPtrAsStringAnsi(intPtr)); } return(null); } else { IntPtr intPtr2 = BassEnc.BASS_Encode_CastGetStatsPtr(handle, type, pass); if (intPtr2 != IntPtr.Zero) { return(Utils.IntPtrAsStringAnsi(intPtr2)); } return(null); } }
public static string CastGetStats(int handle, BASSEncodeStats statsType, string password) { string result = BassEnc.BASS_Encode_CastGetStats(handle, statsType, password); return result; }
private static extern IntPtr BASS_Encode_CastGetStatsPtr(int handle, BASSEncodeStats type, IntPtr pass);
private static extern IntPtr BASS_Encode_CastGetStatsPtr(int handle, BASSEncodeStats type, [MarshalAs(UnmanagedType.LPStr)][In] string pass);