Vai su https://docs.google.com/forms e crea un modulo
Aggiungi i campi che ti interessano ;)
Vai su https://app.cadulis.com
Vai su Parametri
> Accessi esterni
> Crea un accesso esterno
Scegli il tipo “Webservice REST”
Nella sezione API Rest hai imparato a creare il tuo accesso webservice?
Spunta la casella per permettere di Creare un'attività
e, se necessario, Creare un cliente
Salva.
Copia la tua chiave API
disponibile nel riquadro corrispondente
Ora vogliamo inserire le risposte del modulo Google Form direttamente in Cadulis. Automatizzeremo questo processo tramite l’editor di script
.
Dal tuo modulo GoogleForm, clicca su e scegli Editor di script
Aggiungi un file e utilizza il seguente codice, ricordandoti di sostituire la chiave API
con quella ottenuta in precedenza
Qui sotto, ricordati di sostituire all'inizio dello script apiKey e activityTypeId
:
function onFormSubmit(e) {
// apiKey: Sostituisci con la chiave dell'accesso esterno della tua configurazione Cadulis
var apiKey = 'XXXXXXXX';
// activityTypeId: Sostituisci con l'id del tipo di attività (nel catalogo) che vuoi creare
var activityTypeId = 1234;
var form = FormApp.getActiveForm();
var allResponses = form.getResponses();
var latestResponse = allResponses[allResponses.length - 1];
var responseId = latestResponse.getId();
var response = latestResponse.getItemResponses();
var responseMap = {};
// Genera una stringa contenente tutte le domande per titolo e la loro risposta
var responseString = '# ' + responseId + "\n\n";
for (var i = 0; i < response.length; i++) {
var question = response[i].getItem().getTitle();
var answer = response[i].getResponse();
responseString += question + ' : ' + answer + "\n";
responseMap[question] = answer;
}
// genera un riferimento univoco dall'ID della risposta di Google Form
var cref = responseId.substring(0, 15) + '-' + responseId.substring(responseId.length - 15);
// prepara i dati per Cadulis
var formData = {
'cref': cref,
'reference': cref,
'intervention_type':{
'id': activityTypeId
},
'comment': responseString,
'title': 'Risposta su Google Form'
};
var options = {
"method": "post",
"contentType": "application/json",
"payload": JSON.stringify(formData)
};
console.log(formData);
var url = 'https://api.cadulis.com/connectors/' + apiKey + '/interventions';
var result = UrlFetchApp.fetch(url, options);
console.log(result.getContentText());
}
Per fare in modo che questo script venga utilizzato ad ogni invio del modulo, vai nel menu a sinistra e scegli Trigger
Nel campo “Tipo di evento”, scegli All'invio del modulo
e salva.
Ed ecco fatto: ad ogni risposta su Google Form, verrà creata un’attività in Cadulis!