Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Descrizione

Questo metodo può essere utilizzato per richiedere il rendering della preview di un progetto presente all'interno del sistema.

Utilizzo

I parametri richiesti da questa funzione sono:

  • projectId: Id del progetto.
  • previewHeight: Intero che rappresenta l'altezza della preview da generare (la larghezza viene calcolata in proporzione). minimo 50px massimo 500px.
  • callbackUrl: Url a cui verrà inviata la conferma al termine dell'operazione, false se non necessario.
  • callbackExtraParams: Array di oggetti che rappresentano i parametri extra che verranno inviati all'url di callback così composti:
    • paramName: Nome del parametro extra.
    • paramValue: Valore del parametro extra.
  • customerPasswordHash: Hash in formato SHA1 della password del cliente.

 In caso di successo ritorna un'intero che rappresenta l'id dello spool di rendering.

Gestione errori

In caso di errore il metodo genererà un'eccezione che riporterà uno dei seguenti codici di errore:

  • ERROR_INVALID_PARAMS: Uno dei parametri inviati non è valido.
  • ERROR_INVALID_CUSTOMER_PASSWORD: La password dell'utente non è validaERROR_INVALID_PROJECT_ID: Il del progetto non è valido.
  • ERROR_INVALID_TOKEN: Non è stato effettuato nessun login in precedenza o la sessione è scaduta per inutilizzo.
  • ERROR_INVALID_IP: L'indirizzo ip del server che sta effettuando la chiamata non valido perchè non inserito nella whitelist associata alle credenziali.
  • ERROR_SERVER_UNAVAILABLE: Il server non è disponibile o si è verificato un errore di comunicazione generico.

Status
colourRed
titleAttenzione

Info
titleCome gestire correttamente le immagini di preview

Una volta effettuata la richiesta della generazione del rendering della preview è necessario gestire correttamente la lista delle immagini generate. Per maggiori informazioni ed esempi su come accedere a queste informazioni è consigliato consultare la pagina Gestione immagini di preview.

Code Block
languagexml
titleEsempio struttura dati inviati all'url di callback
linenumberstrue
<?xml version="1.0" encoding="UTF-8"?>
<data>
    <taskId>11</taskId>
    <taskStatus>PROCESSED</taskStatus>
    <taskStartTime>2016-04-18 15:39:41</taskStartTime>
    <taskEndTime>2016-04-18 15:58:21</taskEndTime>
    <projectId>8</projectId>
</data>

 

Code Block
languagephp
titlePHP
linenumberstrue
require "vendor/autoload.php"
 
try {
    $ezPrintSDK = new ezPrintSDKWrapper('http://demo.ezprint.it');
	$apiToken = $ezPrintSDK->cLoginAPI('1WHm0icsupAEm9fil9en','yCHZ0nKiyn1MU0DhpgmG');
 
	$projectsList = $ezPrintSDK->editor->eGetProjects(false, false, false, 100);
	
	$renderingSpoolId = $ezPrintSDK->editor->eRequestPreviewRendering($projectsList[0]['projectId'], 500, false, array(), sha1("password"));
} catch (Exception $e) {
    echo 'Error Code: ',  $e->getMessage();
}

Code Block
languagejs
titleNode.js
linenumberstrue
try {
	var sha1 = require('sha1');
	var ezPrintSDK = require('ezprint-sdk-wrapper');
	ezPrintSDK.initializeWrapper('http://demo.ezprint.it');

	var projectsList = ezPrintSDK.editor.eGetProjects(false, false, false, 100);
 	
	var renderingSpoolId = ezPrintSDK.editor.eRequestPreviewRendering(projectsList[0].projectId, 500, false, [], sha1("password"));
} catch (ex) {
	console.log(ex);
}
Code Block
languagec#
title.NET (C#)
linenumberstrue
try {
	ezPrintSDKWrapper.Client ezPrintSDK = new ezPrintSDKWrapper.Client("http://demo.ezprint.it");
	ezPrintSDK.cLoginAPI("1WHm0icsupAEm9fil9en","yCHZ0nKiyn1MU0DhpgmG");

	List<ezPrintSDKWrapper.Structures.projectItem> projectsList = ezPrintSDK.Editor.eGetProjects(false, false, false, 100);

	HashAlgorithm algorithmSHA1 = SHA1.Create();
    StringBuilder sb1 = new StringBuilder();
                
	foreach (byte b in algorithmSHA1.ComputeHash(Encoding.UTF8.GetBytes("palladio")))
		sb1.Append(b.ToString("x2"));
 
	int renderingSpoolId = ezPrintSDK.Editor.eRequestPreviewRendering(projectsList[0].projectId, 500, false, new List<ezPrintSDKWrapper.Structures.extraParamItem>(), sb1.ToString());
} catch (ezPrintException ex) {
	string ErrorMessage = ex.Message;
}