Liaison SOAP avec Mail Capture

Le connecteur entre votre scanner, votre pc et les applications Maarch
The link between your scanner, your Pc, and Maarch solutions

Liaison SOAP avec Mail Capture

Message par dagroupe » 04 Avr 2014, 11:25

Bonjour,

Nous sommes spécialisés dans le domaine de la distribution automatique.

Actuellement nous souhaitons archiver nos documents Business et Technique S.A.V. via un photocopieur de marque SHARP en liaison avec notre serveur Exchange via LDAP pour la réception des numérisation.

Je suis en charge de la liaison avec notre serveur technique qui héberge Maarch et je n'ai rencontré aucun problème au niveau de la config de Maarch et du module Mail_Capture.

Cependant lors de la capture de Mail, le format n'est pas reconnu. Après passage en mode debug du module Mail_Capture et après un check du code j'ai remarqué que la liaison avec Maarch via SOAP ne s'effectue pas, le morceau code concerné :

function SendDocument($fileContent, $client, $data)
{
$encodedContent = base64_encode($fileContent);
$fileFormat = 'HTML';
$destination = 'COURRIER';
if ($_ENV['defaultDocType'] == '') {
$_ENV['defaultDocType'] = '10';
}
array_push(
$data,
array(
'column' => "destination",
'value' => $destination,
'type' => "string"
)
);
array_push(
$data,
array(
'column' => "is_ingoing",
'value' => "Y",
'type' => "string"
)
);
array_push(
$data,
array(
'column' => "type_id",
'value' => $_ENV['defaultDocType'],
'type' => "string"
)
);
array_push(
$data,
array(
'column' => "typist",
'value' => "scanner",
'type' => "string"
)
);
$table = 'res_letterbox';
if ($_ENV['defaultStatus'] == '') {
$_ENV['defaultStatus'] = 'ATT';
}
try {
$resId = $client->storeResource(
$encodedContent,
$data,
$_ENV['collId'],
$_ENV['tableName'],
$fileFormat,
$_ENV['defaultStatus']
);
echo $resId . "\r\n";
} catch (SoapFault $fault) {
echo $fault;
}
return $resId;
}


La variable $resID ne retourne pas d'ID malgré que tous les arguments bien renseignés et bien passés (vérifiés par ajout de lignes de code avec la fonction writeLog)

La variable $client est initialisée par partir du code ci dessous avec les arguments $destination et $proxy renseignés correctement également (vérifiés par ajout de lignes de code avec la fonction writeLog) :

$wsdl = new SOAP_WSDL($destination, $proxy, false);
$client = $wsdl->getProxy();

Doit-on ajouté le module SOAP PHP (issu de PEAR) à Maarch ou à Mail_Capture ? Par ailleurs j'utilise XAMPP 1.8.3 (php 5.5.9) avec tous les modules nécessaires activés dont SOAP

Ai-je omis un élément extérieur à Maarch et Mail_Capture ? si oui lequel

Merci d'avance

Librement...

Cyril REILER
dagroupe
 
Message(s) : 3
Inscription : 04 Avr 2014, 10:47

Re: Liaison SOAP avec Mail Capture

Message par dagroupe » 04 Avr 2014, 20:23

Bonjour,

Rien de grave si pas de réponse à mon 1er post 8-)

Un débogage de mail_capture et du fichier maarch_ws_client.php est nécessaire avec Maarch 1.4, la source 1.4 de mail_capture n'a pas été corrigée, donc :ugeek: :

Ci-dessous la fonction SendDocument corrigée cependant la fonction SendAttachment est aussi buggée du fait de l'obsolescence de la fonction storeAttachmentResource qui est devenue storeResourceFromURI, Cependant il existe la fonction StoreExtResource qui sûrement une utilité mais laquelle ? Un peu d'aide serait la bienvenue... :idea: 8-)

Librement.... :geek:

Hello,

Nothing serious if no answer to my first post 8-)

Debugging module mail_capture and maarch_ws_client.php file is needed with Maarch 1.4. mail_capture source has not been migrated to 1.4 versoin, therefore:

however I fixed SendDocument's function (see below). There are a bug with SendAttachment's function because of obsolescence storeAttachmentResource's function became storeExtResource, storing attachements isn't possible ? A little help would be welcome ...: idea: 8-)

Freely...

Cyril REILER ;)

FONCTION SENDDOCUMENT CORRIGÉE CI-DESSOUS :

SENDDOCUMENT'S FUNCTION FIXED BELOW :

function SendDocument($fileContent, $client, $data)
{
$encodedContent = base64_encode($fileContent);
$fileFormat = 'HTML';
$destination = 'COURRIER';
if ($_ENV['defaultDocType'] == '') {
$_ENV['defaultDocType'] = '10';
}
array_push(
$data,
array(
'column' => "destination",
'value' => $destination,
'type' => "string"
)
);
array_push(
$data,
array(
'column' => "is_ingoing",
'value' => "Y",
'type' => "string"
)
);
array_push(
$data,
array(
'column' => "type_id",
'value' => $_ENV['defaultDocType'],
'type' => "string"
)
);
array_push(
$data,
array(
'column' => "typist",
'value' => "scanner",
'type' => "string"
)
);
$table = 'res_letterbox';
if ($_ENV['defaultStatus'] == '') {
$_ENV['defaultStatus'] = 'ATT';
}
try {
$resId = $client->storeResource(
$encodedContent,
$data,
$_ENV['collId'],
$_ENV['tableName'],
$fileFormat,
$_ENV['defaultStatus']
);
} catch (SoapFault $fault) {
echo $fault;
}
return $resId->resId;
}
dagroupe
 
Message(s) : 3
Inscription : 04 Avr 2014, 10:47

Re: Liaison SOAP avec Mail Capture

Message par archiviste » 26 Oct 2016, 19:36

Bonjour, Svp qqun peut m'aider,

Je suis étudiant , dans un projet d'étude ils nous ont demandé de travailler sur maarch pour gérer les emails entrants, du coup j'ai essayé de travailler avec le module mail capture , quand j’exécute le fichier "launch_mail_capture.bat" , il me renvoi l'erreur :
<ERROR> from file C:\xampp\htdocs\maarch_archive\modules\mail_capture\postprocess_scripts\maarch_ws_client\maarch_ws_client.php line 151 : require(SOAP/Client.php): failed to open stream: No such file or directory </ERROR>

Merci beaucoup pour votre aide.
archiviste
 
Message(s) : 6
Inscription : 26 Oct 2016, 19:18


Retour vers Maarch Capture Connector

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 2 invité(s)

cron