In Morocco, implementing reliable messaging requires direct carrier connections (IAM, Orange, Inwi) and strict compliance with local regulations. Google Sheets possède un langage de programmation caché (Google Apps Script). Si vous faites un simple copier-coller de ce code, vous n'aurez pas besoin de payer Make ou Zapier.
- Dans votre Google Sheets, cliquez sur
Extensions > Apps Script. - Effacez tout, et collez ce script (modifiez votre clé API) :
```javascript
function envoyerSMS() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var startRow = 2; // On commence à la ligne 2 pour éviter l'en-tête
var numRows = sheet.getLastRow() - 1;
var dataRange = sheet.getRange(startRow, 1, numRows, 3); // Colonne A=Nom, B=Tel, C=Statut SMS
var data = dataRange.getValues();
var apiKey = "VOTRE_CLE_API_ENVOISMS";
var url = "https://api.envoisms.ma/v1/sms/send";
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var nom = row[0];
var tel = row[1];
var statut = row[2];
// On n'envoie le SMS que si la colonne Statut est vide
if (statut !== "Envoyé" && tel) {
var message = "Bonjour " + nom + ", nous vous rappelons votre rendez-vous demain. L'équipe du Cabinet XYZ.";
var payload = {
"recipient": tel,
"sender_id": "CABINET_XYZ",
"message": message
};
var options = {
"method": "post",
"headers": {
"Authorization": "Bearer " + apiKey,
"Content-Type": "application/json"
},
"payload": JSON.stringify(payload)
};
// Appel de l'API
UrlFetchApp.fetch(url, options);
// Marquer la cellule comme envoyée pour ne pas renvoyer le SMS demain
sheet.getRange(startRow + i, 3).setValue("Envoyé");
}
}
}
```
- Sauvegardez. Cliquez sur le bouton "Exécuter".
- Magie : Le script va lire votre fichier, envoyer les SMS via l'API locale marocaine, et écrire "Envoyé" dans la colonne C pour chaque client traité.