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

Descrizione

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

Utilizzo

I parametri richiesti da questa funzione sono:

  • projectId: Id del progetto.
  • orderId: Id del numero d'ordine.
  • orderItemIndex: Indice del progetto all'interno dell'ordine.
  • covertToPdf: true se si vuole avere come formato di uscita un documento pdf, false in caso contrario.
  • splitPages: true se si vuole avere un output a pagine singole, false in caso contrario (il campo viene preso in cosiderazione solo per progetti provenienti da smartEditor).
  • 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 è valida
  • ERROR_INVALID_PROJECT_ID: Il del progetto non è valido.
  • ERROR_UNABLE_TO_RENDER_NOT_SAVED_PROJECT: Non è possibile effettuare richieste di rendering 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 ottenere i dettagli del progetto in rendering

Una volta effettuata la richiesta della generazione del rendering del progetto è possibile ottenere maggiori informazioni sul contenuto del rendering. Per maggiori informazioni ed esempi su come accedere a questi dato è consigliato consultare la pagina Gestione richieste di rendering.

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->eRequestProjectRendering($projectsList[0]['projectId'], 1, 1, false, false, false, array(), sha1("password"));
} catch (Exception $e) {
    echo 'Error Code: ',  $e->getMessage();
}

Node.js
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.eRequestProjectRendering(projectsList[0].projectId, 1, 1, false, false, false, [], sha1("password"));
} 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);

	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.eRequestProjectRendering(projectsList[0].projectId, 1, 1, false, false, false, new List<ezPrintSDKWrapper.Structures.extraParamItem>(), sb1.ToString());
} catch (ezPrintException ex) {
	string ErrorMessage = ex.Message;
}
  • No labels