/sockwrite: 'youtube' not connected (line x, Y.mrc)

#1
Hallo

ich hab vor einiger Zeit mal einige YT Script am rumprobieren gehabt, aber irgendwie scheint mIRC den Dienst zu verweigern.

Jedes YT Script (Das mir eigentlich nur den Titel des Videos im Channel posten soll; ja es ist unter anderem auch ein Bot.) funktioniert einfach nicht.

Ich hab auch geschaut dass mIRC nicht bei der Firewall blockiert wird.

Sonst weiß ich auch nicht weiter...


Grüße
 

DJFelipe

Well-Known Member
c-b Experte
#2
Meine Glaskugel sagt mir, dass deine Fahrrad klingel kaputt ist, denn du schaust gerade in ein Display...

Aber jetzt mal im Ernst.. was erhoffst du dir mit diesem Beitrag? Du hast weder das Script angehängt, um zu sehen was schief läuft, noch gibst du an in welcher Zeile der Fehler auftritt...
not connected bedeutet, dass der Socket geschlossen wird, bevor er was schreiben kann... mehr kann man dir jetzt so auch nicht sagen, da eigendlich alles fehlt..
 
#3
Der Fehler wird mir angezeigt:

Code:
* /sockwrite: 'youtube' not connected (line 9, youtube3.mrc)
Das ist das derzeit benutzte Script:

Code:
;YouTube Info 1.2
;By Neo Nemesis

alias youtube {
  %ytube1 = $remove($1,[url]http://,www.,youtube,.com[/url])
  sockopen youtube [url]www.youtube.com[/url] 80
}
on *:SOCKOPEN:youtube: {
  sockwrite -n $sockname GET %ytube1 HTTP/1.1
  sockwrite -n $sockname Host: [url]www.youtube.com[/url]
  sockwrite -n $sockname Connection: Keep-Alive
  sockwrite -n $sockname Content-Type: text/html
  sockwrite -n $sockname $crlf
}
on *:SOCKREAD:youtube: {
  sockread %ytube2
  if (%ytube2 == $null) && (%sockread == $null) {
    msg %ytube3 1,0You0,4Tube15,1 Error receiving information.
    set %sockread 1
  }
  elseif (%ytube2 == $null) && (%sockread != $null) { noop }
  elseif (<meta name="title" content=" isin %ytube2) {
    msg %ytube3 1,0You0,4Tube15,1 $remove(%ytube2,<meta name="title" content=",">,&amp;quot;)
  }
}
on *:TEXT:*youtube*:#: {
  %ytube3 = $chan
  %ytube4 = 1
  while ([ $chr(36) $+ [ %ytube4 ]  ]) {
    if ([url]www.youtube.com/watch?v=[/url] isin [ $chr(36) $+ [ %ytube4 ]  ]) {
      sockclose youtube
      youtube [ $chr(36) $+ [ %ytube4 ]  ]
    }
    inc %ytube4
  }
}
 
Zuletzt bearbeitet von einem Moderator:

DJFelipe

Well-Known Member
c-b Experte
#4
Es sieht so aus als würde www.youtube.com deine Anfrage, sobald diese kommt, sofort abzublocken... Das Script öffnet den Socket, versucht den Header zu schicken (sockwrite -n geschickte) um dann ne antwort zu erhalten... Jedoch wird direkt beim SockOpen der Socket anscheinend geschlossen..

Da scheint ein Problem entweder bei dir im Netzwerk zu sein (z.B. Firewall blockt) oder du hast eine statische IP Adresse und Youtube hat dich auf seiner IPTables (weshalb auch immer...)
 
#5
Lokale Firewall blockiert nicht, hab ich bereits erwähnt.
Nope, bin bei Telekom, die haben ne dynamische (sonst würde ich nicht immer um kurz nach Mitternacht nen 24h Disconnect bekommen)

Wie meinst du eig mit IPTable? YouTube kann ich im Browser problemlos aufrufen.. (Oder verstehe ich das falsch?)
 

lano

Well-Known Member
c-b Experte
#6
Nope, bin bei Telekom, die haben ne dynamische (sonst würde ich nicht immer um kurz nach Mitternacht nen 24h Disconnect bekommen)
LOL das hat nix mit einer Festen IP zu tun.


Hacker sind die dümmsten auf dieser Welt.
Wenn du dich für soviel schlauer hälst sollte das ja kein Ding sein für dich.
Wireshark
Verbindungsaufbau vergleichen
Feststellen das Hacker doch nicht so blöd sind
Dein Script anpassen
Läuft
 
#7
Was soll das nun heißen.. ich hab keine Feste IP. (Kann auch jederzeit den Router neustarten, dann hab ich ne neue...)

Außerdem was hat jetzt Script mit Hacker zu tun...? Die Signatur ist alt, und hab ich jetzt entfernt... Meine Güte.
 

DJFelipe

Well-Known Member
c-b Experte
#8
Ganz einfach.. du bekommst jeh nach Tarif bei eigentlich JEDEM Anbieter entweder eine dynamische oder feste IP. Das hat auch nichts mit der Zwangstrennung zutun (zumal diese auch nicht zwanghaft um 0Uhr stattfindet, sondern nach genau 24 Stunden nach der Einwahl). Ich z.B. habe 2 Verträge bei der Telekom für 2 verschiedene Standorte und hab am 1. eine dynamische und am 2. eine feste IP Adresse.

Nachdem du ja auf Youtube kommst, ist deine IP schonmal nicht per IPTables von Youtube geblockt. Es scheint eher was mit deiner Konfiguration deines PC's zutun zu haben, da der Socket direkt nach dem Öffnen geschlossen wird. Das Problem kann mIRC, Treiber, ein Programm was einen Eingriff in mIRC macht (z.B. BlowFish und co), etc etc etc. sein...

Ich kann dir bei deinem Problem leider nicht helfen. Meine Empfehlung für dich ist, wenn du schon einen Bot zur Verfügung stellen willst, das ganze auf einem Server via eines Eggdrop's zu realisieren. Wenn du willst, kannst du auch mein youtube tcl Script haben.
 

lano

Well-Known Member
c-b Experte
#9
Außerdem was hat jetzt Script mit Hacker zu tun...? Die Signatur ist alt, und hab ich jetzt entfernt... Meine Güte.
Ich wollt nur darauf hinweisen das wenn man von manchen Leuten hilfe möchte, es nicht grade schlau ist sie in der Signatur zu beleidigen.

Zurück zum Thema:
Wenn ich dein script ausprobiere scheint es erstmal das zu machen was es soll...
Code:
<lano_> http://www.youtube.com/watch?v=UgJMc-_yxmA
<lano> 1,0You0,4Tube15,1 Error receiving information.
<lano> 1,0You0,4Tube15,1 <script>var yt = yt || {};yt.preload = {};yt.preload.counter_ = 0;yt.preload.start = function(src) {var img = new Image();var counter = ++yt.preload.counter_;yt.preload[counter] = img;img.onload = img.onerror = function () {delete yt.preload[counter];};img.src = src;img = null;};yt.preload.start("http:\/\/r19---sn-4g57ln7k.c.youtube.com\/crossdomain.xml");yt.preload.start("http:\/\/r19---sn-4g57ln7k.c.youtube.com\/generate_204?signature=96D4F92215F0C915642E1C60FBEA28E13E7C1F54.B3222B743A6400624A29EAF8DA60CDBE6F0E00F3\u0026source=youtube\u0026mv=m\u0026ipbits=8\u0026factor=1.25\u0026key=yt1\u0026ip=46.115.41.15\u0026expire=1359345805\u0026algorithm=throttle-factor\u0026sparams=algorithm%2Cburst%2Ccp%2Cfactor%2Cid%2Cip%2Cipbits%2Citag%2Csource%2Cupn%2Cexpire\u0026upn=fU752BTx0IQ\u0026burst=40\u0026fexp=923109%2C916626%2C920704%2C912806%2C922403%2C922405%2C929901%2C913605%2C925710%2C929104%2C920201%2C913302%2C919009%2C911116%2C910221%2C901451\u0026sver=3\u0026cp=U0hUTlNPU19FT0NONF9LSVdJOk9ZMGtQZ0NkeVhs\u0026mt=1359320773\u0026itag=34\u0026id=52024c73eff2c660\u0026ms=au");</script><title>Children For Sale - Brazil - YouTube</title><link rel="search" type="application/opensearchdescription+xml" href="http://www.youtube.com/opensearch?locale=de_DE" title="YouTube-Videosuche<link rel="shortcut icon" href="http://s.ytimg.com/yts/img/favicon-vfldLzJxy.ico" type="image/x-icon <link rel="icon" href="//s.ytimg.com/yts/img/favicon_32-vflWoMFGx.png" sizes="32x32<link rel="canonical" href="/watch?v=UgJMc-_yxmA<link rel="alternate" media="handheld" href="http://m.youtube.com/watch?v=UgJMc-_yxmA<link rel="alternate" media="only screen and (max-width: 640px)" href="http://m.youtube.com/watch?v=UgJMc-_yxmA<link rel="shortlink" href="http://youtu.be/UgJMc-_yxmA Children For Sale - Brazil
mit "lano_" hab ich einen Link gepostet, bei "lano" läuft das script. Deine Fehlermeldung bekomme ich da nicht herrausgekitzelt.
 
#10
@lano Wenn du dir mal die ersten beiden Zeilen des Scripts ansehen würdest, siehst du dass dieses Script nicht von mir ist.

@DJFelipe, ja wenn du mir den Link zu deinem Script geben würdest, gern. ;)
 

DJFelipe

Well-Known Member
c-b Experte
#11
Ich wollt nur darauf hinweisen das wenn man von manchen Leuten hilfe möchte, es nicht grade schlau ist sie in der Signatur zu beleidigen.

Zurück zum Thema:
....
Whoa lano! Woher kennst du meine Vergangenheit? :D

@Kn0p3XX
Das Script ist nicht von mir und hatte Fehler drinnen.. Ich hab diese nur Quick-n-Dirty entfernt und die Funktion angepasst auf die Titelausgabe des Videos inkl. Rating.
Das Script findest du hier: http://nopaste.info/4d1d42f258.html

Und so sieht es aus:
Code:
[22:47:08] <%DJFelipe> http://www.youtube.com/watch?v=UWb5Qc-fBvk&hd=1
[22:47:09] <%[Blubb-Utils]> [Y] Tomorrowland 2012 | official aftermovie (Ø 4.9)
 

lano

Well-Known Member
c-b Experte
#12
Das mir eigentlich nur den Titel des Videos im Channel posten soll
Nagut da du ja Besserung gelobt hast will ich mal nicht so sein.


Code:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Open Socket
alias -l opensocket {
  if ($regex($2-, /((?:https?\://)?(?:\w+\.)?(?>youtube|youtu)(?:\.\w+){1,2}/)/i)) {
    var urldomain $regml(1)
    if ($regex($2-, /(?:=|%3F)?v(?:=|%3D)([\w\-]+)/i)) var %urlmatch = $regml(1)
    else if ($regex($2-, /(?:(?:https?\://)?(?:\w+\.)?(?>youtube|youtu)(?:\.\w+){1,2}/)([\w\-]+)/i)) {
      var %urlmatch = $regml(1)
    }
    else return
    var %urlticks = $ticks
    if ($sock($+(url., %urlticks))) sockclose $+(url., %urlticks)
    set %urltarget $1
    sockopen $+(url., %urlticks) gdata.youtube.com 80
    sockmark $+(url., %urlticks) %urlmatch
  }
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Channel Triggers
on *:TEXT:*:#: {
  opensocket $chan $1-
}

on *:ACTION:*:#: {
  opensocket $chan $1-
}

on *:INPUT:#: {
  opensocket $chan $1-
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Query Triggers
on *:TEXT:*:?: {
  ; opensocket $nick $1-
}

on *:ACTION:*:?: {
  opensocket $nick $1-
}

on *:INPUT:?: {
  opensocket $nick $1-
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Socket Triggers
on *:SOCKOPEN:url.*: {
  if ($sockerr > 0) halt
  sockwrite -nt $sockname GET $+(/feeds/api/videos?&v=2.1&safeSearch=none&restriction=255.255.255.255&q=", $sock($sockname).mark, "&fields=entry[media:group/yt:videoid=", $sock($sockname).mark, "](title)) HTTP/1.1
  sockwrite -nt $sockname Host: gdata.youtube.com
  sockwrite -nt $sockname Connection: close
  sockwrite -nt $sockname Content-Type: text/xml
  sockwrite -nt $sockname $crlf
}

on *:SOCKREAD:url.*: {
  if ($sockerr > 0) return
  var %urlreader
  sockread %urlreader
  if ($regex(%urlreader, /<title>(.*?)<\/title>/si)) {
    echo 10 -gnt %urltarget <***> Youtube: $regml(1)
    sockclose $sockname
    unset %url*
  }
}

; This is only triggered when the remote client/server closes the connection
on *:SOCKCLOSE:url.*: {
  unset %url*
}
<@lano_> http://www.youtube.com/watch?v=UgJMc-_yxmA
<***> Youtube: Children For Sale - Brazil
So wollst du das doch haben oder ?
 
Oben