Table of Contents

Plugin Development

Plugin developers themselves. Don't forget - Quality is our advantage!

Necessary tools to start making plugin

I expect you are smart enough and you already know some programming languages. It can be painful for you - as for beginner, but you can nothing to lose, just to earn. So, JDK is here:

Working with SVN

Check my tutorials how to work with SVN:

but you can also use the integrated Version Control in IntelliJ IDEA.

A must with a plugin

Coding

Releasing

Documentation

Tutorial videos

Javadoc

FAQ

this.httpFile.setNewURL(....); //to setup new URL
this.httpFile.setPluginID(""); //to run detection what plugin should be used for new URL, when file is in QUEUED state

Knowns problems in current version of API

New feature suggestions

Web administration

* Web administration

Using Recaptcha in plugin

It's necessary to add dependency in plugin.xml after <attributes> section:

 <requires>
      <import plugin-id="recaptcha.com" plugin-version="1.0" match="greater-or-equal"/>
 </requires>

In build.xml: In target “compile” - javac task - add another sourcepath to /devapp

   <sourcepath location="../devapp"/>
   <sourcepath location="../recaptcha"/>

Then you can use cz.vity.freerapid.plugins.services.recaptcha.ReCaptcha plugin and call its methods. After that manual build plugin with Ant task should work properly.

CAPTCHA recognition

Here are some steps from my experience:
a) creating a training set

1. Trim every character from the picture, remove background color, probably with every same size

2. Build a structure many mappings characters' picture→character + convert character picture into black and white or gray

b) testing

1. extract every character from the captcha, trim, convert it into BW or gray

2. compare character against training set using Euclidean distance method -

I usually counted it this way: for all x,y on the same sized pictures -
Sum ( (picture1.point[x,y].value - picture2.point[x,y].value)^2) training pattern with lowest sum is the best matching picture against testing picture
See Netload.in CAPTCHA recognition or older versions of Bagruj recognition.

Other