JDownloader Community - Appwork GmbH
 

Reply
 
Thread Tools Display Modes
  #1  
Old 13.01.2016, 23:13
blacksun blacksun is offline
JD Legend
 
Join Date: Mar 2009
Location: Schwaben
Posts: 1,340
Default Ereignismanager: Kann ich Punktestand bei einem CES abfragen und dann Aktion auslösen

Hallo,

ist es möglich bei einem bestimmten Guthabenstand bei einem CES das als Ereignis zu definieren und dann eine Aktion auszulösen?

Konkretes Vorhaben1:
Wenn Guthaben bei 9kw unter 100, deaktiviere 9kw-Solver

Konkretes Vorhaben2:
Wenn Guthaben bei CBH unter 50, deaktiviere alle Downloads die Captcha benötigen (diese gibt es als Einstellung bereits im JD)

Danke
__________________
--
Viele Grüße

BlackSun
Reply With Quote
  #2  
Old 14.01.2016, 14:23
coalado's Avatar
coalado coalado is offline
JD Manager
 
Join Date: Feb 2009
Posts: 1,983
Default

EventTrigger: After Captcha Challenge (Ist neu.. wird im laufe des Nachmittags released)


Code:
var apiKey = "DEIN_API_KEY";
var credits = getPage("**External links are only visible to Support Staff** + apiKey);
if (credits < 50) {
    callAPI("config", "set", "jd.controlling.captcha.CaptchaSettings", null, "captchamode", "SKIP_ALL");
}
__________________
Reply With Quote
  #3  
Old 07.06.2019, 13:37
thecoder2012's Avatar
thecoder2012 thecoder2012 is offline
Official 9kw.eu Support
 
Join Date: Feb 2013
Location: Internet
Posts: 1,279
Default

Quote:
Originally Posted by blacksun View Post
ist es möglich bei einem bestimmten Guthabenstand bei einem CES das als Ereignis zu definieren und dann eine Aktion auszulösen?

Konkretes Vorhaben1:
Wenn Guthaben bei 9kw unter 100, deaktiviere 9kw-Solver
Vollständiges Beispiel:
Code:
// CES Aktion mit Prüfung vom Guthabenstand
// Trigger Required: Interval
var min_credits = 100;

var settings_9kw = "org.jdownloader.captcha.v2.solver.solver9kw.Captcha9kwSettings";
var apikey = callAPI("config", "get", settings_9kw, null, "ApiKey");
var prio = callAPI("config", "get", settings_9kw, null, "prio");
var confirm = callAPI("config", "get", settings_9kw, null, "confirm");
var https = callAPI("config", "get", settings_9kw, null, "https");
var credits_page = '://www.9kw.eu/index.cgi?action=usercaptchaguthaben&apikey=' + apikey;
var credits;
if (https == 1) {
    credits = getPage("https" + credits_page);
} else {
    credits = getPage("http" + credits_page);
}

if (credits.match(/^\d+$/)) {
    if (parseInt(credits) < min_credits) {
        callAPI("config", "set", "jd.controlling.captcha.CaptchaSettings", null, "captchamode", "SKIP_ALL"); //setDownloadsPaused(true);
    } else {
        callAPI("config", "set", "jd.controlling.captcha.CaptchaSettings", null, "captchamode", "NORMAL"); //setDownloadsPaused(false);
    }
}
__________________
Join 9kw.eu Captcha Service now and let your JD continue downloads while you sleep.
Reply With Quote
  #4  
Old 09.06.2019, 12:32
blacksun blacksun is offline
JD Legend
 
Join Date: Mar 2009
Location: Schwaben
Posts: 1,340
Default

2 Fragen:
- in welchem Interval wird geprüft und lässt sich der Wert des Intervals einstellen
- muss im Skript der API-Key eingetragen werden, oder wird dieser aus den Einstellungen des 9kw-Plugin genommen?

Quote:
Originally Posted by thecoder2012 View Post
Vollständiges Beispiel:
Code:
// CES Aktion mit Prüfung vom Guthabenstand
// Trigger Required: Interval
var min_credits = 100;
var credits_page = '://www.9kw.eu/index.cgi?action=usercaptchaguthaben&apikey=' + apikey;
__________________
--
Viele Grüße

BlackSun
Reply With Quote
  #5  
Old 10.06.2019, 13:55
thecoder2012's Avatar
thecoder2012 thecoder2012 is offline
Official 9kw.eu Support
 
Join Date: Feb 2013
Location: Internet
Posts: 1,279
Default

Quote:
Originally Posted by blacksun View Post
- in welchem Interval wird geprüft und lässt sich der Wert des Intervals einstellen
Üblicherweise kannst im Event Scripter den Interval einstellen ohne zusätzlichen Code in Javascript zu haben. Wenn den Trigger "interval" ausgewählt hast, dann sollte beim Bearbeiten darüber ein Feld erscheinen.



Quote:
Originally Posted by blacksun View Post
- muss im Skript der API-Key eingetragen werden, oder wird dieser aus den Einstellungen des 9kw-Plugin genommen?
Der API-Key wird aus dem JDownloader ausgelesen.
__________________
Join 9kw.eu Captcha Service now and let your JD continue downloads while you sleep.
Reply With Quote
  #6  
Old 10.06.2019, 14:37
blacksun blacksun is offline
JD Legend
 
Join Date: Mar 2009
Location: Schwaben
Posts: 1,340
Default

stimmt, da war ich blind

was sollte eigentlich genau passieren?
deaktiviert sich dann der 9kw-Solver, sprich verschwindet das aktiviert häkchen, oder werden nur intern keine Captchas mehr an 9kw gesendet?

Diese Prüfung im Event-Manager, wird diese erst mit einem Download gestartet, oder läuft die immer auch ohne Downloads?

Ausserdem scheint es noch ein anderes Problem zu geben.
Wenn ich im Skipt einen höheren Credit-Stand eingebe und dann einen Download von z.B. Share-Online starte, dann werden alle Captcha-Eingaben mit "Captcha-Eingabe erforderlich" übersprungen.
Ich habe aber auch noch andere Solver, sei es andere CES als auch "Dialogfenster", "Dialogfenster Browser" und "myJD".



Das Skript sollte eigentlich nur dafür sorgen dass entweder nichts mehr an den 9kw-CES geht bzw. dieser Solver deaktiviert wird, nicht aber dass andere Solver beeinflusst werden.
Ich denke das "skip all" im Skript ist falsch.
__________________
--
Viele Grüße

BlackSun

Last edited by blacksun; 10.06.2019 at 14:46.
Reply With Quote
  #7  
Old 10.06.2019, 17:32
thecoder2012's Avatar
thecoder2012 thecoder2012 is offline
Official 9kw.eu Support
 
Join Date: Feb 2013
Location: Internet
Posts: 1,279
Default

Quote:
Originally Posted by blacksun View Post
was sollte eigentlich genau passieren?
Das obige Beispiel setzt nur alle Captchas auf überspringen, wenn zu wenig Guthaben erkannt wurde.

Quote:
Originally Posted by blacksun View Post
deaktiviert sich dann der 9kw-Solver, sprich verschwindet das aktiviert häkchen, oder werden nur intern keine Captchas mehr an 9kw gesendet?
Im neuen Beispiel wird es deaktiviert und ist auch so im JDownloader zu sehen.

Quote:
Originally Posted by blacksun View Post
Diese Prüfung im Event-Manager, wird diese erst mit einem Download gestartet, oder läuft die immer auch ohne Downloads?
Das obige Beispiel würde immer laufen auch ohne Downloads. Das neue Beispiel prüft ob Downloads aktiv sind.
Quote:
Originally Posted by blacksun View Post
Ausserdem scheint es noch ein anderes Problem zu geben.
Wenn ich im Skipt einen höheren Credit-Stand eingebe und dann einen Download von z.B. Share-Online starte, dann werden alle Captcha-Eingaben mit "Captcha-Eingabe erforderlich" übersprungen.
Ich habe aber auch noch andere Solver, sei es andere CES als auch "Dialogfenster", "Dialogfenster Browser" und "myJD".
Sollte mit dem neuen Beispiel dann nur noch 9kw betreffen.

Quote:
Originally Posted by blacksun View Post
Das Skript sollte eigentlich nur dafür sorgen dass entweder nichts mehr an den 9kw-CES geht bzw. dieser Solver deaktiviert wird, nicht aber dass andere Solver beeinflusst werden.
Erledigt.

Quote:
Originally Posted by blacksun View Post
Ich denke das "skip all" im Skript ist falsch.
Ja, wenn es so gewünscht wird. Das "skip all" gilt für jegliche Captchas.

Neues Beispiel:
Code:
// CES Aktion mit Guthabenstand (nur 9kw.eu)
// Trigger Required: Interval
var min_credits = 50;

var settings_9kw = "org.jdownloader.captcha.v2.solver.solver9kw.Captcha9kwSettings";
var apikey = callAPI("config", "get", settings_9kw, null, "ApiKey");
var prio = callAPI("config", "get", settings_9kw, null, "prio");
var confirm = callAPI("config", "get", settings_9kw, null, "confirm");
var https = callAPI("config", "get", settings_9kw, null, "https");
var credits_page = '://www.9kw.eu/index.cgi?action=usercaptchaguthaben&apikey=' + apikey;
var credits;

if (isDownloadControllerRunning()) {
    if (https == 1) {
        credits = getPage("https" + credits_page);
    } else {
        credits = getPage("http" + credits_page);
    }

    if (credits.match(/^\d+$/)) {
        if (parseInt(credits) < min_credits) {
            callAPI("config", "set", settings_9kw, null, "enabledglobally", false);
        } else {
            callAPI("config", "set", settings_9kw, null, "enabledglobally", true);
        }
    }
}
__________________
Join 9kw.eu Captcha Service now and let your JD continue downloads while you sleep.
Reply With Quote
  #8  
Old 11.06.2019, 16:11
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 67,599
Default

@thecoder2012: Danke fürs Helfen und Scripten
__________________
JD-Dev & Server-Admin
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT +2. The time now is 08:22.
Provided By AppWork GmbH | Privacy | Imprint
Parts of the Design are used from Kirsch designed by Andrew & Austin
Powered by vBulletin® Version 3.8.10 Beta 1
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.