Du bist nicht angemeldet.
Kann man noch irgendwelche Daten anbieten um die Anpassung der nächsten Hoster zu erleichtern?
Zur Zeit nicht, ich muss 99% der Sachen ohnehin auf einer FB ausführen, also das meiste kann ich selbst testen. Wenn was ungetestet eingecheckt wird (nur Kleinigkeiten), dann vermerke ich es hier eigentlich immer.
Ausnahmsweise off-topic, nur da dieser Thread gerade so aktuell ist:
Gelesen wird eh alles und der Übersichtlichkeit halber sollte schon gelten: Thema passend zum Thread.
Man kann das zwar im Kopf direkt umrechnen, aber ehrlicher und einfacher wäre es wahrscheinlich einfach direkt die Credits anzuzeigen.
Schon geändert, macht mittlerweile mehr Sinn.
Teste mal mit dem anderen Link von hier: https://filer.net/get/oofl4bhzewzwyg8r
Darüberhinaus ist das kein Debug Log.
Download sollte wieder funktionieren, Hoster an Recaptcha v2 angepasst.
Ich will so wenig wie möglich an der bestehenden Captcha Implementierung (generell wie es in FL gehandhabt wird) ändern.
Das erfordert mMn nach (ich lasse mich gern eines besseren belehren) ein Erkennen im Captcha Handling ob Recaptcha v1 oder v2 vorliegt ODER eine Änderung der Hoster Plug-ins, wo dann an der entsprechenden Stelle z.B. gleich
set_solution_recaptchav2()
aufgerufen wird.
Bei filer.net ist es für mich zumindest so zu sehen. Der jetzige komfortable Aufruf beschränkt sich auf
# captcha processing
if is_captcha $f; then
captcha_service_active || return
captcha_solution $f || continue
den Rest übernehmen dann eben die Funktionen fürs Captcha Handling. Das heißt, man muss entweder dort erkennen ob v1 oder v2, oder den komfortablen Aufruf ändern. Tendiere klar zum Erkennen in den Captcha Routinen, nur mir ist eben kein sicher funktionierender Weg klar bis jetzt.
Aber hier im Forum kommen sicher Anregungen - sorry, wenn ich bereits etwas Über-sehen/lesen habe, wo die Lösung schon steht.
Die von @roadman17 erstellten recaptcha v2 solver Funktionen sind an die richtige Stelle gewandert.
Siehe https://sourceforge.net/p/avmload/code/2895/
Derweil ist die Erkennung ob recaptcha v2 vom Hoster verwendet wird noch nicht zuverlässig, aber das ist nur temporär, da ab 01.04.2018 nur mehr v2 gehen wird.
Kommt wohl auf den eingesetzten HTML-Code bzw. zusätzlichen Javascript-Code (z.B. callbacks) in der Seite auch drauf an.
Allerdings werden Seiten auf v1 nicht zurückjgehen, wenn v2 aktiv ist.
Das Problem löst sich am 31.03.2018 eh von selbst - wie ich im anderen Thread gesehen habe.
Bei filer.net finde ich z.B. nichts, was auf api2 o.ä. hindeutet, nur den grundlegenden Link:
https://www.google.com/recaptcha/api.js
Das kann ich runterladen und mit grep nach api2 durchsuchen - dann gibt's in dem Fall eine Unterscheidung.
Das soll nur als Bsp. dienen - für's captcha Handling wie es jetzt in FL aktiv ist, braucht man eine immer funktionierende Methode und da kam ich eben noch nicht entscheidend weiter.
Ich versuche gerade grundlegenden Support für Recaptcha v2 einzubauen.
Also im Großen und Ganzen die bereits geschriebene Funktionalität aus dem Plug-in in die entsprechenden Files zu schieben.
Gibt es eigentlich eine einfache Methode, um im Source der Seite zu erkennen, ob v1 oder v2 verwendet wird?
Ich fand nur einen komplizierten Weg, der aber noch verifiziert werden muss.
Wer kann Zeile 126 im Code erklären?
https://sourceforge.net/p/avmload/code/ … ine_biz.sh
Der zweite Parameter pageurl sollte doch dynamisch sein?
Der hardcodierte Link ist das Testfile lotto-spieleinsatz.pdf.
Wenn das mal offline ist, geht das Plugin nicht mehr ...
Wird es von irgendjemandem noch genutzt? Funktioniert überhaupt ein Upload noch?
Wird es noch gebraucht?
Ich denke, was nicht mehr genutzt wird, kann entfernt werden.
Die Wartbarkeit wird leichter, andere tun sich vielleicht beim Einstieg ins Entwickeln leichter, wenn der Code Umfang schrumpft.
Und man gewinnt Platz im GUI, die man mit anderen Funktionen belegen kann.
Bitte Meinungen bekannt geben.
Unglaubliche Odyssee ... wahrscheinlich aber auch durch Spezialfall "7590 A-CH Version" und Ziel "Freetz-de".
Früher[tm] war alles leichter.
Aber: FritzLoad läuft auf der 7590 wie eigentlich erwartet ohne Probleme, wenn man den SSH/telnet Zugang hinkriegt.
Wer's nachlesen will:
https://www.ip-phone-forum.de/threads/7 … en.298603/
Mit Verlaub - Katastrophe das ganze.
Eine FB 7590 A-CH Version (internationale Version) und darauf ein freetz zu bekommen grenzt an Wissenschaft.
Macht so irgendwie keinen Spaß, habe seit gestern daran bereits über 7 Stunden versch*** mit Info suchen, ausprobieren, vieles geht nicht oder anders ...
Ein bißchen investier ich noch, dann wird's mir denk ich zu blö^^^anstrengend.
Das if ! kehrt den Rückgabewert der reconnectEnabled() um?
Wird da implizit ein positives Ergebnis erwartget? Anders macht der Ausdruck irgendwie keinen Sinn.
Schau dir an, was reconnectEnabled() zurückgibt. Eine Funktion kann etwas zurückliefern, muss aber nicht immer nicht einen Rückgabewert haben.
In diesem Fall kommt von reconnectEnabled() entweder "0" oder "1" - je nach den Ergebnissen innerhalb der Funktion.
http://openbook.rheinwerk-verlag.de/she … ammierung/ kann ich als Einstieg sehr empfehlen.
Diese Zeile verstehe ich nicht.
if ! reconnectEnabled $forceReconnect $showMsg; then
Die Funktion reconnect Enabled ist erst weiter unten!? Wir die hier aufgerufen und ausgeführt?
Danke für die Aufklärung!
Dafür sind ja Funktionen gedacht. Damit man sie an anderer Stelle aufrufen kann.
Stell dir den Spaghetti Code vor, wenn du bei jeder Funktionalität alles immer wieder neu schreiben musst.
Deswegen werden Bereiche, die man möglicherweise wieder benötigt, in Funktionen ausgelagert.
Wo die Funktion implementiert ist, ist von Programmiersprache zu Programmiersprache verschieden.
In Bash Scripts kann die unterhalb im File stehen und trotzdem oberhalb aufgerufen werden.
Plain old C erlaubt das z.B. nicht.
local showMsg="${1:--}" forceReconnect=${2:-0} showMsg=${3:-0}
Das erste showMsg ist in "", die sind irgendwie nicht gleich.
Das ist unerheblich, da links vom '=' der Variablenname festgelegt wird und der ist ident.
Möglicherweise reicht bereits meine Änderung zu einem anderen Variablennamen.
Hast du meinen geänderten Beitrag gesehen? Könnte sich nämlich überschnitten haben.
Dort wird
/bin/reconnect 0
aufgerufen - das ist echt madig. Und ohne jeglichen Kommentar ins log usw.
Warum wird da nicht die/lib/reconnect.sh
aufgerufen?
Offensichtlich sind ja beide Skripte lauffähig! Gibt's da einen technischen Grund?
Das eine ist eine Funktion, das andere ist ein File. Du kannst kein Scriptfile per se so aufrufen, wenn das File mehrere Funktionen erhält.
Das sind Programmier Grundlagen - das aber nur so beiseite.
EDIT: Das obige ist nicht falsch, aber man sollte sich doch den Code genau ansehen, bevor man was postet *hüstel* (auf mich bezogen).
Warum das so gelöst worden ist, erschließt sich mir jetzt auch nicht, es wird aber seine Gründe gehabt gehabt haben ... hoffentlich
Das entscheidende passiert im File "reconnect" (OHNE Endung) hier:
reconnect "Manuell" 1 1
Das ruft dann in der reconnect.sh die Funktion reconnect() auf:
reconnect() {
local showMsg="${1:--}" forceReconnect=${2:-0} showMsg=${3:-0}
...
}
Und damit sollte als Message "Manuell" angezeigt werden und/oder ins Log gehen, forceReconnect erhält eine "1" und ebenso bekommt der dritte Parameter eine "1" - damit die Message eben angezeigt wird.
Und wenn ich das jetzt sehe, dass zweimal die gleiche Variable angelegt wird (showMsg) aber unterschiedliche Parameter erhält (einmal den ersten und einmal den dritten) dann dürfte hier schon ein Bug liegen. Unter der Voraussetzung, dass es nicht doch was zulässiges ist - ich bin kein Bash Script Experte.
EDIT_ENDE
Im gesamten Code sind sicher genug "Wanzen/nicht mehr lauffähige Teile/nicht angepasster Code" enthalten, manchmal kommt mir so vor, wenn eine Baustelle zugemacht wird, gehen zwei neue auf.
Auf den Switch "Erneut verbinden:" hab ich noch nie geklickt, ich sehe erst jetzt, dass da was dahinter steckt und nicht nur beim aktiv/inaktiv Switch daneben.
Zusammengefasst ist das Problem jetzt folgendes:
Beim Klick auf "Erneut verbinden" wird ein Reconnect eingeleitet und die Prüfungen wie beim automatischen Aufruf finden nicht statt
Falls ja, glaube ich, daß dass immer so war, denn der Code hier wurde mWn schon lange nicht mehr verändert.
Außerdem denke ich soll ja ein Reconnect erzwungen werden, deswegen wurde das so erst implementiert.
Es kann aber auch ganz anders sein, nur ob wir das je erfahren ...
da rolex0815 keine Telefone an seiner FB mehr hat.
Die FB hat nie Telefone gehabt. Bin seit 4 Jahren an einem Kabelanschluss mit eigenem Modem und die FB hab ich rein für F!L (bei ebay ersteigert).
Die Änderungen sind zwar im SVN aber nicht an der richtigen Stelle. Wollte weitere Rückmeldungen abwarten und dann blieb's liegen.
Wird demnächst dann eingecheckt.
Und diesen "Rat" gibt's nicht, nur Diskussions- bzw. Findungsphasen.
Das klingt nach einem Haufen Arbeit!
Nüchtern betrachtet fürchte ich eher, dass sich das niemand anfangen wird und F!L leider bald von der Bildfläche verschwindet.
Ein Proxy-Binary mit F!L zusammen ausliefern ist wahrscheinlich nicht das Problem. So funktioniert es ja bisher auch mit dem eigenen Webserver (busybox) und stunnel, um verschlüsselte Verbindungen zu ermöglichen.
Zugriff von außen durch den Captcha-Dienst auf diesen Proxy wird tricky (Port Forwarding, etc.) und security-mäßig ist das auch nicht die erste Wahl.
Es sind bis auf roadman und rolex, danke Euch beiden, keine Entwickler mehr an F!L aktiv dran.
"genuk" gibt es noch, macht auch ein paar commits.
Wie groß die userbase ist kann ich nicht sagen, dürfte aber nicht überwältigend sein.
Vermutlich nicht, ein Anhaltspunkt wäre die Anzahl der registrierten Benutzer hier im Forum, plus ein zusätzlicher Prozentsatz.
Aber ist ja auch egal wie viele es im Moment verwenden - wenn es keiner der Entwickler mehr verwendet und/oder keine FB mehr zur Verfügung steht, wird es nicht mehr weiter gepflegt werden, das ist das Schicksal von Freeware.
Ich hab eine 7590 mittlerweile, aber nicht mit F!L im Moment.
Freetz deklariert den Support zur Zeit als "sehr experimentell" - drum noch nicht geflasht. Originale FW wollte ich gar nicht angreifen für telnet etc.