ich guck gleich mal,
dürfte ne sache von nen paar minuten sein.
€dit: Den Peak, oder die aktuelle Listener Anzahl?
So wird die aktuelle Anzahl mit dem Befehl !peak ausgegeben
Die Daten des Streams (IP usw.) sind vorher im Script zu editieren:
Code:
'#######################################################################################
'# ShoutCast Streamscript v3.5 Beta by [TgP]c00l4ZiD & [ABP]Sp33d modified by muffe
'#######################################################################################
Sub Init()
Script "ShoutCast Streamscript v3.5 Beta by [TgP]c00l4ZiD & [ABP]Sp33d modified by muffe"
Hook "Chan_Msg"
GetData
End Sub
Dim Recieved
Dim Stream_listener
'#######################################################################################
'# Daten die Editiert werden müssen ! #
'#######################################################################################
'Bitte URL zum Stream angeben. z.B. http://fun-radio.kicks-ass.org:13090 (ohne / zum schluss)
Const StreamURL = "http://127.0.0.1:1337"
'Den Channel indem das Script laufen soll z.B. #FuN-Radio
Const EmpfChan = "#feds"
'Den Hostnamen oder IP ohne http:// und port (Const StreamHost = "fun-radio.kicks-ass.org")
Const StreamHost = "127.0.0.1"
'Nun den dazugehörigen Port eintragen (Const StreamPort = "13090")
Const StreamPort = "1337"
'#######################################################################################
'# Ab hier bitte nichts mehr ändern ! Thx ! #
'#######################################################################################
Const StreamPage = "/index.html"
Sub Chan_Msg(Chan, Nick, RegUser, Line)
If LCase(Param(Line, 1)) = "!peak" and LCase(Chan) = LCase(EmpfChan) Then
GetData
If Stream_listener <> vbNullString Then
If Stream_listener = "1" Then
SendLine "PRIVMSG " & Chan & " :Es ist " & Stream_listener & " listener auf dem Stream.", 3
Else
SendLine "PRIVMSG " & Chan & " :Es sind " & Stream_listener & " listener auf dem Stream.", 3
End If
Else
SendLine "PRIVMSG " & EmpfChan & " :1,14 «7•1» Es konnte keine Verbindung zum StreamServer hergestellt werden ! Bitte später noch einmal probieren ! «7•1» 1,14" , 2
End If
End If
End Sub
Sub SockEvent(vSock, SEvent, SData)
Select Case SEvent
Case SE_ConnectFailed
SpreadFlagMessage 0, "+m", "5*** ShoutCast: Connection to " & StreamHost & " failed"
TimedCommand "GetData", 30
Case SE_Connected
SpreadFlagMessage 0, "+m", "5*** ShoutCast: Connection to " & StreamHost & " established"
SockWrite vSock, "GET " & StreamPage & " HTTP/1.0" & vbCrLf & _
"Accept: text/html" & vbCrLf & _
"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; AnGeL-Bot)" & vbCrLf & vbCrLf
Case SE_Read
Recieved = Recieved & SData
Case SE_Closed
SpreadFlagMessage 0, "+m", "5*** ShoutCast: Connection closed by server"
If InStr(1, Recieved, "<font class=default><b><a") > 0 Then
Dummy = "with <B>"
iPos = InStr(1, Recieved, Dummy) - 1
Recieved = Right(Recieved, Len(Recieved) - iPos - Len(Dummy))
Stream_listener = Left(Recieved, InStr(1, Recieved, "of") - 1)
Stream_listener = Rtrim(Stream_listener)
Else
SpreadFlagMessage 0, "+m", "5*** ShoutCast: HTML page is not complete"
End If
Recieved = ""
End Select
End Sub
Sub GetData()
vSock = SockConnect(StreamHost, StreamPort, "SockEvent")
If vSock = 0 Then SpreadFlagMessage 0, "+m", "5*** ShoutCast: Couldn't create socket"
End Sub