App inventor 2 en español
Cómo programar los teléfonos móviles con Android
mediante App inventor 2 - Juan Antonio Villalpando
-- Tutorial de iniciación de App Inventor 2 en español --
Volver al índice del tutorial
_________________________________________________
137.- Google sheet. Enviar SMS.
p137_googlesheet_sms.aia
- Este ejemplo consiste en tener en la Hoja de Cálculo de Google (Sheet) filas con Nombres, Teléfonos, Mensajes,... y enviar automáticamente esos mensajes a sus respectivos números.
- Cuando enviemos los correos, en el campo Status aparecerá "SMS Sent" para que ese correo no se vuelva a listar ni a enviar.
- Para realizar esta aplicación sería conveniente haber realizado el ejemplo anterior, el tutorial 136.- Google sheet.
- El ejemplo lo podemos obtener en esta web: https://www.labnol.org/send-sms-google-sheets-200402
- Tenemos una Sheet de Google con estos datos:
- La hoja es la SMS.
_________________________________________________________________
- Script. Secuencia de comandos.
- Vamos a crear un Script de Google para utilzarlo con esa Hoja de Cálculo.
Script |
const SHEET_URL = "https://docs.google.com/spreadsheets/d/19iRIRdnCXf2XXXXXXXXXXXXn3dwLL8/edit#gid=1078807472";
const SHEET_NAME = "SMS";
const doGet = () => {
const sheet = SpreadsheetApp.openByUrl(SHEET_URL).getSheetByName(
SHEET_NAME
);
const [header, ...data] = sheet.getDataRange().getDisplayValues();
const PHONE = header.indexOf('Phone');
const TEXT = header.indexOf('Text');
const STATUS = header.indexOf('Status');
const output = [];
data.forEach((row, index) => {
if (row[STATUS] === '') {
output.push([index + 1, row[PHONE], row[TEXT]]);
}
});
const json = JSON.stringify(output);
return ContentService.createTextOutput(json).setMimeType(
ContentService.MimeType.TEXT
);
};
const doPost = (e) => {
const sheet = SpreadsheetApp.openByUrl(SHEET_URL).getSheetByName(
SHEET_NAME
);
const [header] = sheet.getRange('A1:1').getValues();
const STATUS = header.indexOf('Status');
var rowId = Number(e.parameter.row);
sheet.getRange(rowId + 1, STATUS + 1).setValue('SMS Sent');
return ContentService.createTextOutput('').setMimeType(
ContentService.MimeType.TEXT
);
};
|
_________________
- Diseño.
_________________
- Bloques.
|