====== Interfacciamento allo scanner con itaScanner ====== itaScanner è una libreria che permette ad itaEngine di interfacciarsi agli scanner installati sul client tramite SmartAgent. ===== Utilizzo della libreria ===== La libreria è formata da due elementi: * **classe itaScannerClient** contiene la logica di interfacciamento allo scanner * **classe itaScanner** classe statica che contiene i metodi di interfacciamento allo scanner. In linea di massima **itaScanner** l'unica classe con cui ci si dovrebbe andare ad interfacciare, di seguito se ne descrivono i metodi ==== scanCallback() ==== Permette di aprire la finestra dello scanner sul client e richiamare un model ed un evento scelto a piacere a scansione avvenuta. Il metodo prende i seguenti parametri: * **$model** stringa con il nome del model da richiamare una volta avvenuta la scansione * **$event** stringa dell'evento da scatenare sul model (//default='scanCallback'//) * **$scannerDriver** permette di indicare che driver usare, i valori concessi sono contenuti nelle costanti //itaScanner::ITASCANNER_DRIVER_*// * **$parameters** array che contiene i parametri addizionali da configurare. Al richiamo del metodo verrà aperta una schermata di interfacciamento allo scanner (differente a seconda del driver selezionato). L'utente potrà così effettuare una o più scansioni, al termine delle quali, alla pressione del tasto "chiudi" verrà scatenato l'evento impostato. Il model riceverà così una chiamata avente le seguenti informazioni: * **$_POST['event']** valore passato in $event * **$_POST['id']** valore fisso 'scan' * **$_POST['data']** path (server side) che contiene il pdf della scansione. ==== scannerService() ==== Permette di aprire la finestra dello scanner sul client e di gestire in maniera automatizzata il return dello stesso. Il metodo prende i seguenti parametri: * **$mode** indica la modalità di gestione della risposta dello scanner, può assumere i seguenti valori: - //itaScanner::ITASCANNER_TAB// a scansione avvenuta viene aperta una nuova tab di itaEngine con l'anteprima del pdf scannerizzato - //itaScanner::ITASCANNER_MODAL// a scansione avvenuta viene aperta una modale di itaEngine con l'anteprima del pdf scannerizzato - //itaScanner::ITASCANNER_NONE// a scansione avvenuta non viene mostrato niente all'utente. * **$scannerDriver** permette di indicare che driver usare, i valori concessi sono contenuti nelle costanti //itaScanner::ITASCANNER_DRIVER_*// * **$parameters** array che contiene i parametri addizionali da configurare. * **$savePath** stringa contenente il path completo di nome del file dove salvare il documento scannerizzato. Se lasciato a null non verrà salvato il documento. Il campo è obbligatorio nel caso si usi la modalità //ITASCANNER_NONE// * **$allowDownload** booleana che indica se l'utente può scaricare o meno il documento scannerizzato. Se impostata a true verrà mostrato nella tab/modale di anteprima il documento insieme a due tasti per aprirlo con l'editor di sistema o per scaricarlo. ===== Parametri di impostazione ===== La libreria itaScanner è dotata di diversi parametri che possono essere trasmessi nel momento in cui si richiamano i metodi //scanCallback()// e //scannerService()//. Di seguito la descrizione: * 'color' integer: 0=Bianco e nero, 1=colori, 2=scala di grigi * 'quality' integer: valore da 1 a 100 che indica la qualità dell'immagine * 'forceClose' boolean: indica se chiudere automaticamente la finestra dello scanner o meno a scansione avvenuta * 'showUi' boolean: indica se visualizzare o meno la finestra dello scanner. Questi parametri hanno delle configurazioni di default nella forma delle chiavi dei parametri visualizzabili sotto 'PARAMETRI PER LA GESTIONE DELLO SCANNER'