**Ceci est une ancienne révision du document !**
Utilisez ScanConnect (et la puissance du serveur DocWizOn) dans votre module Dolibarr
Vous voulez extraire des données d'un fichier PDF en vous appuyant sur le serveur DocWizOn ? suivez le guide !
La base
Ajoutez ScanConnect dans les dépendances de votre module (fichier core/modules/modVotreModule.class.php)
// List of module class names as string that must be enabled if this module is enabled. Example: array('always1'=>'modModuleToEnable1','always2'=>'modModuleToEnable2', 'FR1'=>'modModuleToEnableFR'...) $this->depends = ['...','modScanConnect'];
Puis ajoutez scanconnect dans vos include:
dol_include_once('/scanconnect/class/scanConnect.class.php');
Instanciez un objet scanConnect et utilisez le :
$scanConnect = new scanConnect($db);
Informations serveur & compte docwizon
Par exemple
<div id="ocr-server-card" class="clearboth" style="min-height: 40px; padding: 2em; border: 1px solid #888; background: #f8f8f8; text-align: left;"> <?php print $scanConnect->getInfoAboutWebservice(); ?> </div>
Affichera la boite d'information du serveur :
Envoyer un fichier à analyser
$scanConnect->
Récupérer le résultat de l'analyse
Exemple pour un plugin dolibarr
<?php $res = 0; if (!$res && !empty($_SERVER["CONTEXT_DOCUMENT_ROOT"])) { $res = @include $_SERVER["CONTEXT_DOCUMENT_ROOT"]."/main.inc.php"; } // Try main.inc.php into web root detected using web root calculated from SCRIPT_FILENAME $tmp = empty($_SERVER['SCRIPT_FILENAME']) ? '' : $_SERVER['SCRIPT_FILENAME']; $tmp2 = realpath(__FILE__); $i = strlen($tmp) - 1; $j = strlen($tmp2) - 1; while ($i > 0 && $j > 0 && isset($tmp[$i]) && isset($tmp2[$j]) && $tmp[$i] == $tmp2[$j]) { $i--; $j--; } if (!$res && $i > 0 && file_exists(substr($tmp, 0, ($i + 1))."/main.inc.php")) { $res = @include substr($tmp, 0, ($i + 1))."/main.inc.php"; } if (!$res && $i > 0 && file_exists(dirname(substr($tmp, 0, ($i + 1)))."/main.inc.php")) { $res = @include dirname(substr($tmp, 0, ($i + 1)))."/main.inc.php"; } // Try main.inc.php using relative path if (!$res && file_exists("../main.inc.php")) { $res = @include "../main.inc.php"; } if (!$res && file_exists("../../main.inc.php")) { $res = @include "../../main.inc.php"; } if (!$res && file_exists("../../../main.inc.php")) { $res = @include "../../../main.inc.php"; } if (!$res) { die("Include of main fails"); } // ============================================ debut du code ScanConnect dol_include_once('/scanconnect/class/scanConnect.class.php'); $scanConnect = new scanConnect([ 'db'=>$db, 'srcFileName'=>'/var/www/dolibarr/documents/toto.pdf', 'ymlFileName' => '/var/www/dolibarr/documents/toto.yaml', 'profile' => 'raw', 'action' => 'default', 'lang' => 'fra', 'pluginName' => 'SuperTest-1.0' ]); // $apiInfoFromServer = $scanConnect->getInfoAboutWebservice(); print "<p>File = " . $scanConnect->srcFileName . "</p>"; $res = $scanConnect->runAnalyze(); print $scanConnect->error; if ($res) { print "<p>retour positif = " . $res . "</p>"; print "<pre>"; print json_encode($scanConnect->getResult(), JSON_PRETTY_PRINT); print "<pre>"; } else { print "<p>ERREUR:</p>"; print $scanConnect->error; }