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 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_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

Code Block
languagexml
titleStruttura Esempio 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->eRequestProjectRendering($projectsList[0]['projectId'], 1, 1, false, false, 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.eRequestProjectRendering(projectsList[0].projectId, 1, 1, false, false, 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.eRequestProjectRendering(projectsList[0].projectId, 1, 1, false, false, false, new List<ezPrintSDKWrapper.Structures.extraParamItem>(), sb1.ToString());
} catch (ezPrintException ex) {
	string ErrorMessage = ex.Message;
}