AnGelBot-Portal²

Normale Version: XDCC List und XDCC SEND
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Kann man per script den Angel dazu veranlassen, auf XDCC LIST und SEND zu reagieren? Wenn ja.. könnte wer das script schreiben ????
Schonmal Danke im Vorraus
Speed hat an sowas ma gearbeitet und es funktioneirte auch schon , da ich es mit ihm testete. Aber ka ob er's schon released hat oder will.
Speeeeeeeeeeeeeeeeeeeed .. bitte veröffentliche es Wink
:D so was in der art würde mich auch interessieren
mfg
moppi
mal das Thema neu aufgreifen. Gibts da jetzt schon irgendeine möglichkeit ?
Wie siehts aus mit dem Script??
*nach oben stell* damit das auch mal von dir gesehen wird Speed Wink
hm...toll ich hatte sowas hätte ich den Thread mal vor meinem "Format C" gesehen^^ sorry aber naja...ist nicht alzuviel arbeit ^^
Hmm,

ich habe noch ein Script welches zwar nicht genau so arbeitet, aber leicht auf die XDCC-Befehle umgeschrieben werden kann (verwendet aktuell Channel-Trigger). Einziges Problem was man bei dem Versand von Dateien mit dem Angel hat: Die Größe der Datei ist anscheinend auf ein paar MB begrenzt. Zumindest bei mir brach der Download bei großen Dateien nach einigen MB ab. Ob das bei anderen auch so ist müsste man mal ausprobieren. Hier der Code:
Code:
'############################################################
'# XDCC-Server by v1.0b HAPM                                #
'############################################################
'#                                                          #
'# Beschreibung                                             #
'#                                                          #
'############################################################

Const XDCCDir = "FileArea\xdcc"
Const XDCCINI = "FileArea\INI\xdcc.ini"
Const XDCCCommand = "xdcc"

Const Version = "XDCC-Server by v1.0b HAPM"

Dim fso

Sub Init()
  Script Version
  AddCommand "xdcc", Cl_Mas, "+m", "2*** .xdcc##14Zeigt die aktuell bereitgestellten##Dateien an."
  Hook "Commands"
  Hook "Priv_Msg"
  SpreadFlagMessage 0, "+m", Version&" geladen"
End Sub

Sub Commands(vSock, RegUser, Flags, Line)
  If LCase(Param(Line,1)) <> ".xdcc" Then Exit Sub
  Select Case LCase(Param(Line,2))
    Case "add": AddFile RegUser, vSock, GetRest(Line, 3)
  End Select
End Sub

Sub Priv_Msg(Nick, RegUser, Line)
  If LCase(Param(Line,1)) <> LCase(XDCCCommand) Then Exit Sub
  Select Case LCase(Param(Line,2))
    Case "send": SendXDCCFile Nick, Param(Line,3)
    Case "list": ShowXDCCList Nick
  End Select
  If Not MatchFlags(GetUserFlags(RegUser),"+m") Then Exit Sub
  Select Case LCase(Param(Line,2))
    Case "present": ShowXDCCList Param(Line,3)
  End Select
End Sub

Sub AddFile(RegUser,vSock,Line)
  Dim FileCount, theFile
  If Param(Line,1) = "" Then
    TU vSock, "Bitte gib den Dateinamen der Datei an."
    Exit Sub
  End If
  If Not FileExists("\"&XDCCDir&"\"&Param(Line,1)) Then
    TU vSock, "Die Datei "&Param(Line,1)&" existiert nicht."
    Exit Sub
  End If
  If GetRest(Line,2) = "" Then Line = Line&" "&Line
  FileCount = ReadINIString("Main","FileCount","0",XDCCINI)*1+1
  WriteINIString "File+"&FileCount,"Name",Param(Line,1),XDCCINI
  WriteINIString "File+"&FileCount,"Desc",GetRest(Line,2),XDCCINI
  WriteINIString "Main","FileCount",FileCount,XDCCINI
  TU vSock, "Die Datei "&Param(Line,1)&" wurde hinzugefügt mit der Nummer #"&FileCount
End Sub

Sub SendXDCCFile(Nick,FileNr)
  Dim FileCount, FileName
  If Left(FileNr, 1) <> "#" Then Exit Sub
  FileNr = Mid(FileNr,2)
  If Not IsNumeric(FileNr) Then Exit Sub
  FileNr = FileNr*1
  FileCount = ReadINIString("Main","FileCount","0",XDCCINI)*1
  If FileNr > FileCount Or FileNr < 1 Then Exit Sub
  FileName = ReadINIString("File+"&FileNr,"Name","",XDCCINI)
  SendFile Nick, XDCCDir&"\"&FileName
End Sub

Sub ShowXDCCList(Receiver)
  Dim FileCount, i, Send, FileName, Desc
  FileCount = ReadINIString("Main","FileCount","0",XDCCINI)*1
  If Left(Receiver,1) = "#" Then Send = "PRIVMSG "&Receiver&" :" _
                            Else Send = "PRIVMSG "&Receiver&" :"
  If FileCount < 1 Then Exit Sub
  SendLine Send&"XDCC-File List:",3
  For i = 1 To FileCount
    FileName = ReadINIString("File+"&i,"Name","",XDCCINI)
    Desc = ReadINIString("File+"&i,"Desc","",XDCCINI)
    SendLine Send&i&" - "&FileName&" ( "&Desc&" )",3    
  Next
  SendLine Send&"To request a file type: ""/msg "&MyNick&" "&XDCCCommand&" send #x""",3
  SendLine Send&FileCount&" Files served.",3
End Sub

Function IsXDCCFile(FileName)
  Dim FileCount, i
  IsXDCCFile = False
  FileCount = ReadINIString("Main","FileCount","0",XDCCINI)*1
  If FileCount < 1 Then Exit Function
  For i = 1 To FileCount
    If LCase(ReadINIString("File+"&i,"Name","",XDCCINI)) = LCase(FileName) Then
      IsXDCCFile = True
      Exit Function
    End If
  Next
End Function

Muss auch mal schauen ob das die aktuellste Version ist, kann sein das da noch Fehler drin waren die ich ner anderen Version schon gefixt habe.
Referenz-URLs