SugarCRM Case Management System

Il modulo di Case Management (SugarCRM) offre la possibilità di poter gestire e tenere traccia delle segnalazioni su problemi riguardanti prodotti e/o servizi della vostra azienda da parte dei propri clienti. Le segnalazioni sono in genere collegate a un vostro cliente (solitamente account) e molteplici segnalazioni possono essere associate a un singolo cliente.

Come accade per ogni modulo di SugarCRM, a ogni segnalazione è possibile correlare altre entità come per esempio: chiamate, contatti, bug, etc…

Nel corso di quest’articolo non voglio assolutamente annoiarvi nel spiegare come inserire o gestire le segnalazioni da SugarCRM, per questo basta una veloce lettura dell’Application Guide (SugarCRM), vorrei invece andare a presentare un caso non molto lontano dalla realtà e sicuramente più affascinante.

1.    Creazione della segnalazione

Esistono vari modi che consentono la creazione di segnalazioni all’interno del CRM, uno dei metodi più spesso utilizzati per l’acquisizione di nuove segnalazioni è attraverso il processo di Inbound Email (SugarCRM).

Nella realtà esistono parecchi casi, dove, l’origine della segnalazione potrebbe essere di qualunque natura e deve essere acquisita (quindi creata) sul CRM per poi in seguito essere gestita; una situazione possibile potrebbe essere quella mostrata in Figura 1.

Figura 1 Acquisizione segnalazioni da fonte esterna sconosciuta e gestione.

Figura 1 Acquisizione segnalazioni da fonte esterna sconosciuta e gestione.

Volendo identificare le possibili sorgenti delle nostre segnalazioni, il nostro caso d’integrazione potrebbe trasformarsi dallo schema di Figura 1 in quello di Figura 2.

Figura 2 Acquisizione segnalazioni da fonti eterogene e gestione.

Figura 2 Acquisizione segnalazioni da fonti eterogene e gestione.

Ecco che ho introdotto la parolina magica che mi piace tanto: integrazione. Nello schizzo di Figura 2 che mostra un tipico scenario d’integrazione, è reso evidente il fatto che l’azienda (che fornisce prodotti e/o servizi) ha la necessità di acquisire sul proprio CRM le segnalazioni provenienti dai propri clienti e da diversi canali che possono essere:

  • Email (Out of the box con SugarCRM);
  • Web Form del portale aziendale;
  • Da una base dati;
  • Da una coda JMS (per esempio nei rapporti B2B o A2A);
  • File

Non fatevi terrorizzare da quanto schematizzato in Figura 2, non dobbiamo implementare nulla, cerchiamo invece di evidenziare quali sono i nostri confini sulla base dell’obiettivo da raggiungere.

2.    Dalla teoria alla pratica

Con riferimento allo schema di Figura 2, il nostro confine è rappresentato dal perimetro della “scatola SugarCRM”, dove, all’interno siamo più che bravi, e il nostro ruolo è di offrire (come esperti di prodotto) un servizio di consulenza verso l’entità (in genere un System Integrator) che poi dovrà realizzare l’integrazione. Anche all’interno del nostro “orto” questa volta non dobbiamo implementare nulla.

Ho introdotto il termine consulenza ma in cosa consiste? Dobbiamo essere nelle condizioni d’illustrare quali sono le diverse possibilità d’integrazione offerte da SugarCRM e come utilizzare i servizi esposti per creare una segnalazione legata a uno specifico account.

 L’integrazione avverrà tramite i Web Services (SugarCRM) esposti da SugarCRM (poco importa se SOAP o REST) ma quale dovrà essere il flusso delle operazioni chiamate? Affinché sia possibile inserire con successo una segnalazione su SugarCRM, occorre eseguire nell’ordine le seguenti operazioni:

  • Login: esegue il processo di login su SugarCRM restituendo la chiave di sessione. L’utenza con la quale si esegue l’accesso deve avere i permessi adeguati;
  • Lookup dell’Account: ricerca l’account su SugarCRM per ottenere l’identificativo univoco. Solitamente la ricerca è eseguita su base indirizzo email. L’identificativo dell’account (nel formato UUID) dovrà essere in seguito utilizzato per associare la segnalazione creata all’account;
  • Inserimento Segnalazione: crea una nuova segnalazione correlata a uno specifico account e restituisce l’identificativo della segnalazione appena creata;
  • Logout: esegue il logout da SugarCRM.

  In Tabella 1 è indicato il mapping tra operazione funzionale e metodo del servizio web.

Operazione Funzionale Metodo del servizio
Login login()
Lookup Account search_by_module()
Inserimento Segnalazione set_entry()
Logout logout()

Tabella 1 Mapping tra operazione funzionale e metodo del servizio web.

Tutti i flussi SOAP (richiesta e risposta) che implementano l’inserimento di una segnalazione su SugarCRM sono disponibili sul mio repository GitHub all’indirizzo SugarCRM_SOAPRequestCase

Tramite il tool SOAP UI è possibile in modo semplice preparare un test case che replica il flusso sopra indicato. In Figura 3 è mostrato l’esecuzione del test case su di un’istanza pubblica di SugarCRM (versione 6.5.CE) e in Figura 4 il case appena inserito dall’esecuzione del test case.

Per maggiori informazioni su Web Services e relativi metodi consiglio la lettura della documentazione ufficiale disponibile sul portale di supporto di SugarCRM.

Figura 3 Esecuzione del test case per l’inserimento di una segnalazione su SugarCRM.

Figura 3 Esecuzione del test case per l’inserimento di una segnalazione su SugarCRM.

Figura 4 Detail View della segnalazione inserita tramite Web Services.

Figura 4 Detail View della segnalazione inserita tramite Web Services.

3.    Conclusioni

Questa volta niente codice, invece, immerso nel ruolo di consulente esperto di prodotto che fa la sua bella figura con il cliente e il system integrator esponendo la soluzione d’integrazione.

La prossima volta cercherò di portarvi fuori dai confini della “scatola SugarCRM” per entrare nella “scatola Process input flow” e affrontare Spring Integration, un altro lato dell’integrazione.

Bibliography

SugarCRM. (s.d.). Cases – SugarCRM Support. Tratto da SugarCRM Support: http://support.sugarcrm.com/02_Documentation/01_Sugar_Editions/04_Sugar_Professional/Sugar_Professional_6.5/Application_Guide/40_Cases/ SugarCRM. (s.d.). Introduction to Email Functionality in Sugar. Tratto da SugarCRM Support: http://support.sugarcrm.com/04_Find_Answers/02KB/01Getting_Started/Introduction_to_Email_Functionality_in_Sugar/#Inbound_Email_in_SugarCRM SugarCRM. (s.d.). Sugar Professional 6.5 Application Guide. Tratto da SugarCRM Support: http://support.sugarcrm.com/02_Documentation/01_Sugar_Editions/04_Sugar_Professional/Sugar_Professional_6.5/Application_Guide/ SugarCRM. (s.d.). Web Services. Tratto da SugarCRM Support: http://support.sugarcrm.com/02_Documentation/04_Sugar_Developer/Sugar_Developer_Guide_6.5/02_Application_Framework/Web_Services/

0 Condivisioni

Antonio Musarra

I began my journey into the world of computing from an Olivetti M24 PC (http://it.wikipedia.org/wiki/Olivetti_M24) bought by my father for his work. Day after day, quickly taking control until … Now doing business consulting for projects in the enterprise application development using web-oriented technologies such as J2EE, Web Services, ESB, TIBCO, PHP.

Potrebbero interessarti anche...