Page tree
Skip to end of metadata
Go to start of metadata

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.

 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_PROJECT_ID: Il del progetto non è valido.
  • ERROR_UNABLE_TO_RENDER_NOT_SAVED_PROJECT: Non è possibile effettuare richieste di preview di progetti non salvati.
  • 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.

ATTENZIONE

Come 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.

Esempio struttura dati inviati all'url di callback
<?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>

 

PHP
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());
} catch (Exception $e) {
    echo 'Error Code: ',  $e->getMessage();
}

Node.js
try {
	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, []);
} catch (ex) {
	console.log(ex);
}
.NET (C#)
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);
 
	int renderingSpoolId = ezPrintSDK.Editor.eRequestPreviewRendering(projectsList[0].projectId, 500, false, new List<ezPrintSDKWrapper.Structures.extraParamItem>());
} catch (ezPrintException ex) {
	string ErrorMessage = ex.Message;
}
  • No labels