<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<atom:link href="http://ryblog.eu/fritzload/extern.php?action=feed&amp;tid=379&amp;type=rss" rel="self" type="application/rss+xml" />
		<title><![CDATA[Fritz!Load… / fboom.me Plugin reconnect Problem]]></title>
		<link>http://ryblog.eu/fritzload/viewtopic.php?id=379</link>
		<description><![CDATA[Die aktuellsten Beiträge in fboom.me Plugin reconnect Problem.]]></description>
		<lastBuildDate>Mon, 02 Mar 2015 19:54:50 +0000</lastBuildDate>
		<generator>FluxBB</generator>
		<item>
			<title><![CDATA[Antw.: fboom.me Plugin reconnect Problem]]></title>
			<link>http://ryblog.eu/fritzload/viewtopic.php?pid=2376#p2376</link>
			<description><![CDATA[<p>Ich hab doch noch einen kleinen Fehler gefunden:</p><div class="codebox"><pre><code class="language-none">elif grep -qi &quot;&gt;Premium download&lt;/button&gt;&quot; $f; then
		errmsg &quot;Du lädst schon von diesem Hoster&quot;
		waiting 0 10 0
		continue
	fi</code></pre></div><p>Beim parallel Downloads muss nach der Wartezeit ein &quot;Continue&quot; kommen und kein Break. Sonst versuch FritzLoad es nicht noch einmal...</p>]]></description>
			<author><![CDATA[dummy@example.com (stulle84)]]></author>
			<pubDate>Mon, 02 Mar 2015 19:54:50 +0000</pubDate>
			<guid>http://ryblog.eu/fritzload/viewtopic.php?pid=2376#p2376</guid>
		</item>
		<item>
			<title><![CDATA[Antw.: fboom.me Plugin reconnect Problem]]></title>
			<link>http://ryblog.eu/fritzload/viewtopic.php?pid=2375#p2375</link>
			<description><![CDATA[<p>yoa, so funktioniert es...</p><p>Wenn jamand noch Probleme hat, dann Meldung an mich!</p>]]></description>
			<author><![CDATA[dummy@example.com (stulle84)]]></author>
			<pubDate>Mon, 02 Mar 2015 19:13:36 +0000</pubDate>
			<guid>http://ryblog.eu/fritzload/viewtopic.php?pid=2375#p2375</guid>
		</item>
		<item>
			<title><![CDATA[Antw.: fboom.me Plugin reconnect Problem]]></title>
			<link>http://ryblog.eu/fritzload/viewtopic.php?pid=2371#p2371</link>
			<description><![CDATA[<p>@stulle84:</p><p>Ich habe dein Plug-in eingecheckt, mit der von roadman17 vorgeschlagenen Änderung.</p>]]></description>
			<author><![CDATA[dummy@example.com (rolex0815)]]></author>
			<pubDate>Mon, 02 Mar 2015 11:52:49 +0000</pubDate>
			<guid>http://ryblog.eu/fritzload/viewtopic.php?pid=2371#p2371</guid>
		</item>
		<item>
			<title><![CDATA[Antw.: fboom.me Plugin reconnect Problem]]></title>
			<link>http://ryblog.eu/fritzload/viewtopic.php?pid=2369#p2369</link>
			<description><![CDATA[<p>Gib bei waiting einfach einen dritten Parameter an.<br />Der Reconnect wird gemacht, weil 10 Minuten (600 Sekunden) länger sind 200 Sekunden.</p><p>&quot;waiting 0 10 0&quot; sollte das gewünschte Ergebnis liefern.</p>]]></description>
			<author><![CDATA[dummy@example.com (roadman17)]]></author>
			<pubDate>Mon, 02 Mar 2015 09:03:26 +0000</pubDate>
			<guid>http://ryblog.eu/fritzload/viewtopic.php?pid=2369#p2369</guid>
		</item>
		<item>
			<title><![CDATA[Antw.: fboom.me Plugin reconnect Problem]]></title>
			<link>http://ryblog.eu/fritzload/viewtopic.php?pid=2368#p2368</link>
			<description><![CDATA[<div class="quotebox"><cite>stulle84 schrieb:</cite><blockquote><div><p>Hi,</p><p>ich habe ein Plugin für fboom.me geschrieben!!</p><p>Dies funktioniert auch echt super, nur wenn die Fehlermeldung &quot;errmsg &quot;Du lädst schon von diesem Hoster&quot;&quot; kommt, dann will er 10 Minuten warten und macht trotzdem einen reconnect.</p><p>Hat jemand eine Ahnung warum er das macht?</p></div></blockquote></div><p>Das macht er deswegen:</p><div class="codebox"><pre><code>	elif grep -qi &quot;&gt;Premium download&lt;/button&gt;&quot; $f; then
		errmsg &quot;Du lädst schon von diesem Hoster&quot;
		waiting 0 10
		break
	fi</code></pre></div><p>Mit dem &quot;waiting 0 10&quot; lässt du 10 Minuten warten und dann weiter im Code.</p><p>Siehe lib/reconnect.sh:</p><div class="codebox"><pre><code class="language-none"># waiting [SECONDS] [MINUTES] [WAITMAX] [CURL-MSG]
# =&gt; [SECONDS]+[MINUTES] = Wartezeit
# =&gt; WAITMAX =&gt; ist nur noch diese Wartezeit über, löse keinen Reconnect mehr aus, weil es sich nicht mehr lohnt
# - Ist Wartezeit (seconds+minutes) größer als waitmax,
#   : Reconnect erlaubt =&gt; so wird nicht gewartet (Abbruch)
#   : ansonsten wird gewartet
# - Ist Wartezeit kleiner als waitmax (und waitmax ist gesetzt)
#   : Erlaube Reconnect, führe selbst aber keinen Reconnect aus (weil wir innerhalb
#     der gewünschten Wartezeit sind (Zum Beispiel Download-Wartezeit)!
# - Während der Wartezeit über waiting Funktion ist ein Reconnect erwünscht!
#
# waiting 100 0 100 &quot;Testmeldung&quot; =&gt; Warte 100 Sekunden mit Statusmeldung &quot;Testmeldung&quot;
#                                    Löse keinen Reconnect selber aus.
# waiting 100 0 0   &quot;Testmeldung&quot; =&gt; Falls Reconnect erlaubt löse sofort einen Reconnect aus (waitmax ist Null!)
# waiting 100 0 20  &quot;Testmeldung&quot; =&gt; Falls Reconnect erlaubt löse sofort einen Reconnect aus (falls nur noch 20 Sekunden zu warten sind, löse keinen Reconnect mehr aus)
# waiting 100                     =&gt; Warte 100 Sekunden und löse keinen Reconnect selber aus</code></pre></div><br /><p>AHA, ich sehe grade dein Problem. Er macht einen Reconnect, obwohl er nicht sollte. Hmm, interessant, fällt mir auf die Schnelle nichts ein. <img src="http://ryblog.eu/fritzload/plugins/ezbbc/style/smilies/neutral.png" alt="neutral" /></p>]]></description>
			<author><![CDATA[dummy@example.com (rolex0815)]]></author>
			<pubDate>Sun, 01 Mar 2015 23:05:32 +0000</pubDate>
			<guid>http://ryblog.eu/fritzload/viewtopic.php?pid=2368#p2368</guid>
		</item>
		<item>
			<title><![CDATA[fboom.me Plugin reconnect Problem]]></title>
			<link>http://ryblog.eu/fritzload/viewtopic.php?pid=2365#p2365</link>
			<description><![CDATA[<p>Hi,</p><p>ich habe ein Plugin für fboom.me geschrieben!!</p><div class="codebox"><pre class="vscroll"><code class="language-none">#!/bin/ash
DEBUG_GET=1
# fix Captcha-Image by genuK/genuk@gmx.net/27.07.2014

# break und continue =&gt; beendet Funktion und liefert an die darunterliegende while Schleife das break|continue aus
# return             =&gt; beendet Funktion und fuehrt den Prozess an der aufgerufenen Stelle weiter aus

errorHandling_fboom_me(){
	local f=$1
	if grep -qi &quot;This server is in maintenance mode| our store is not available, please try later|&gt;Not Found&lt;&quot; $f; then
		errmsg &quot;Server unter Maintenance&quot;
		waiting 600 &amp;&amp; continue
	elif grep -qiE &quot;error occurred while processing your request|File not found or deleted|&gt;Sorry, this file is blocked or deleted|Downloading blocked&quot; $f; then
		errmsg &quot;Datei nicht mehr vorhanden&quot;
		return 1
	elif grep -qi &quot;File size to large|Only &lt;b&gt;Premium&lt;/b&gt; access&lt;br&gt;|only available to premium|Free user can\&#039;t download large files&quot; $f; then
		errmsg &quot;Datei kann nur von Premium Usern geladen werden&quot;
		return 1
	elif grep -qi &quot;Please wait&quot; $f; then
		errmsg &quot;Downloadlimit erreicht&quot;
		{ needReconnect 30; continue; }
	elif grep -qi &quot;&gt;Premium download&lt;/button&gt;&quot; $f; then
		errmsg &quot;Du lädst schon von diesem Hoster&quot;
		waiting 0 10
		break
	fi
}

fboom_me() {
	local c=$tmp/dl.cookie.txt f=$tmp/dl.response.htm f2=$tmp/dl.response2.htm
	local finalurl filename filesize sizeunit fileid waittime slowid urlpart hour minute second
	local baseurl=&quot;http://fboom.me&quot;

	# fileid=$(echo $param | sed -n &#039;s|.*cc\/file\/\([^ ]*\).*|\1|p&#039;)
	# if [ -z &quot;$fileid&quot; ]; then
		# errmsg &quot;Keine FileID extrahiert&quot;
		# return 1
	# fi

	while [ $try -lt $retries ]; do
		try=$(($try+1))

		# Hauptseite
		GET &quot;$param&quot; &quot;$f&quot; &quot;--cookie-jar $c&quot; &quot;GET1&quot; || { needReconnect 30; continue; }
		errorHandling_fboom_me $f
		# request File Information
		if grep -q &#039;&lt;title&gt;FileBoom\.me - Error&lt;/title&gt;&#039;;then
			errmsg &quot;Dateistatus unbekannt&quot;
			return 1
		fi
		filename=$(grep -A 1 &quot;icon-download&quot; $f | sed -n &#039;s|.*                \([^&lt;&gt;&quot;]*\).*|\1|p&#039;)
		filename=${filename:1}
		if [ -z &quot;$filename&quot; ];then
			grep -q &quot;This file is no longer available&quot; $f &amp;&amp; errmsg &quot;Datei nicht mehr verfügbar&quot; &amp;&amp; break
			errmsg &quot;Konnte Dateinamen nicht bestimmen&quot; &amp;&amp; continue
		fi
		notalreadyLoaded &quot;$filename&quot; || return

		filesize=$(grep -A 1 &quot;File size:&quot; $f | sed -n &#039;s|.*File size: \([^&lt;&gt;&quot;]*\).*|\1|p&#039;)
		[ -z &quot;$filesize&quot; ] &amp;&amp; filesize=$(sed -n &#039;s|.*&gt;Size: \([^&lt;&gt;\&quot;]*\).*|\1|p&#039; $f)
		[ -z &quot;$filesize&quot; ] &amp;&amp; grep -q &#039;&lt;b&gt;File size:&lt;/b&gt;.*&lt;br&gt;&#039; $f &amp;&amp; {
			errmsg &quot;Datei nicht mehr vorhanden&quot;
			return 1
		}
		#TODO: convert size unit MB GB ... 1 000.0 MB =&gt; bytes
		#filesize=$(echo $filesize | tr -d &#039; .&#039;)

		slowid=$(grep &quot;data-slow-id&quot; $f | sed -n &#039;s|.*id=&quot;\([^ &quot;]*\).*|\1|p&#039;)
		[ -z &quot;$slowid&quot; ] &amp;&amp; {
			errmsg &quot;slowid failed: Plugin defekt&quot;
			return 1
		}

		sleep 3
		GET &quot;$param&quot; &quot;$f&quot; &quot;--cookie $c -d slow_id=$slowid&quot; &quot;GET2&quot; || { needReconnect; continue; }
		errorHandling_fboom_me $f
		
		if grep -qi &quot;captcha-form&quot; $f; then
		# Captchas kommen anscheinend nicht immer
			# deleteComment $f
			# extractForm $f &quot;captcha-form&quot; || continue
			local data=&quot;free=1&amp;freeDownloadRequest=1&amp;uniqueId=$slowid&amp;&quot;

			if grep -q &#039;/file/captcha.html?v&#039; $f ; then
				print &quot;=== Detected captcha method \&quot;Captcha image\&quot; ===&quot;
				# extract the captcha link
				local capurl=http://fboom.me&quot;$(grep &#039;/file/captcha.html?v&#039; $f | sed -e &#039;s/.*src=\&quot;\([^\&quot;]*\)\&quot;.*/\1/g&#039;)&quot;
				print &quot;=== Extracted captcha link is: $capurl&quot;
				# get the captcha image
				local capfile=$tmp/dl.captcha.jpg
				curl -s --cookie $c &quot;$capurl&quot; -o $capfile
				set_captcha_solution &quot;$capfile&quot; || continue
				rm -rf $capfile
				data=$data&quot;CaptchaForm%5Bcode%5D=&quot;$CAPTCHA_STRING
				elif grep -qE &#039;api\.recaptcha\.net|google\.com\/recaptcha\/api&#039; $f.form ; then
				print &quot;=== Detected captcha method \&quot;Re Captcha\&quot; ===&quot;
				captcha_solution $f.form || return
				[ -z &quot;$CAPTCHA_STRING&quot; ] &amp;&amp; continue
				data=$data&quot;op=CaptchaForm%5Bcode%5D=&amp;&quot;$CAPTCHA_RESPOND
			else
				errmsg &quot;Kein Captcha gefunden&quot;
			fi

			GET &quot;$param&quot; &quot;$f&quot; &quot;--cookie $c -d $data&quot; &quot;GET3&quot; || { needReconnect; continue; }

			if grep -qE &#039;api\.recaptcha\.net|google\.com\/recaptcha\/api|\/file\/captcha\.html&#039; $f; then
				captcha_wrong
				continue
			else
				captcha_correct
			fi
		fi
		errorHandling_fboom_me
		waittime=$(grep -i &quot;class=\&quot;tik-tak\&quot;&quot; $f | sed -n &#039;s|.*\&quot;tik-tak\&quot;&gt;\([[:digit:]]*\).*|\1|p&#039;)
		[ -z &quot;$waittime&quot; ] &amp;&amp; waittime=$(sed -n &#039;s|.*&lt;div id=\&quot;download-wait-timer\&quot;&gt;[^0-9]*\([[:digit:]]*\).*|\1|p&#039; $f)
		[ -z &quot;$waittime&quot; ] &amp;&amp; errmsg &quot;Konnte keine Wartezeit ermitteln&quot; &amp;&amp; waittime=60 # Fehler werfen oder weitermachen?

		waiting &quot;$waittime&quot;

		# Bekommen wir hier schon unseren DL Link?
		urlpart=$(grep -i -m1 &quot;To download this file with slow speed&quot; $f | sed -n &#039;s|.*href=&quot;\/\([^ &quot;]*\).*|\1|p&#039;)
		[ -z &quot;$urlpart&quot; ] &amp;&amp; urlpart=$(grep window.location.href $f | sed -n &#039;s|.*href.=..\/\([^ ]*\).*|\1|p&#039; | tr -d &quot;\&#039;;&quot;)

		# Leider nein, es muss noch eine Seite geladen werden
#?		if [ -z &quot;$urlpart&quot; ]; then
			GET &quot;$param&quot; &quot;$f&quot; &quot;--cookie $c $AJAX_REQUEST -d free=1&amp;uniqueId=$slowid&quot; &quot;GET4&quot; || { needReconnect; continue; }
			errorHandling_fboom_me

			if grep -qi -m1 &quot;please wait.*to download this file&quot; $f; then 
				hour=$(grep -i -m1 &quot;please wait.*to download this file&quot; $f | sed -n &#039;s|.*wait.\([[:digit:]]*\):\([[:digit:]]*\):\([[:digit:]]*\).*|\1|p&#039;)
				minute=$(grep -i -m1 &quot;please wait.*to download this file&quot; $f | sed -n &#039;s|.*wait.\([[:digit:]]*\):\([[:digit:]]*\):\([[:digit:]]*\).*|\2|p&#039;)
				second=$(grep -i -m1 &quot;please wait.*to download this file&quot; $f | sed -n &#039;s|.*wait.\([[:digit:]]*\):\([[:digit:]]*\):\([[:digit:]]*\).*|\3|p&#039;)

				waiting $second $(($minute+$hour*60))
			fi

			urlpart=$(grep -i -m1 &quot;To download this file with slow speed&quot; $f | sed -n &#039;s|.*href=&quot;\/\([^ &quot;]*\).*|\1|p&#039;)
			[ -z &quot;$urlpart&quot; ] &amp;&amp; urlpart=$(grep window.location.href $f | sed -n &#039;s|.*href.=..\/\([^ ]*\).*|\1|p&#039; | tr -d &quot;\&#039;;&quot;)
			[ -z &quot;$urlpart&quot; ] &amp;&amp; errmsg &quot;Konnte keine Download-URL ermitteln&quot; &amp;&amp; continue
#?		fi

		finalurl=$(echo ${baseurl}/${urlpart})
		if download &quot;$finalurl&quot; &quot;$filename&quot;; then
			#TODO: verify content/filesize (small filesize / html content...?)
			break
		fi
	done
}</code></pre></div><p>Dies funktioniert auch echt super, nur wenn die Fehlermeldung &quot;errmsg &quot;Du lädst schon von diesem Hoster&quot;&quot; kommt, dann will er 10 Minuten warten und macht trotzdem einen reconnect.</p><p>Hat jemand eine Ahnung warum er das macht?</p><p>Gruß<br />Stulle84</p>]]></description>
			<author><![CDATA[dummy@example.com (stulle84)]]></author>
			<pubDate>Sun, 01 Mar 2015 18:47:23 +0000</pubDate>
			<guid>http://ryblog.eu/fritzload/viewtopic.php?pid=2365#p2365</guid>
		</item>
	</channel>
</rss>
