1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
|
#include <GSM.h> // Ajout de la librarie GSM
#define CODEPIN "" // Code pin du téléphone
GSM gsmAccess;
GSMVoiceCall vcs;
char numtel[20]; // Enregistre l’appel entrant
char numerau[] = {"0602053696"}; // Numéro autorisé
int i;
void setup() {
// Initialise les communications serial et attend que le port s'ouvre:
Serial.begin(9600);
while (!Serial) {
; // Attente de connection du port serial. Nécessaire pour le port USB natif seulement
}
Serial.println("Initialisation..");
boolean notConnected = true; // Etat de connection
// Lancement GSM shield
while (notConnected) {
if (gsmAccess.begin(CODEPIN) == GSM_READY) {
notConnected = false;
} else {
Serial.println("Pas connecté");
delay(1000);
}
}
vcs.hangCall(); // Cela permet de s’assurer que le modem signale correctement les événements entrants.
Serial.println("Vous pouvez appeler");
}
void loop() {
switch (vcs.getvoiceCallStatus()) { //Vérifier l’état de l’appel
case IDLE_CALL: // rien ne se passe
break;
case RECEIVINGCALL: // quelqun nous appelle
Serial.println("APPEL ENTRANT");
vcs.retrieveCallingNumber(numtel, 20); // recuperer le numéro appellant
// Afficher le numéro appelant
Serial.print("Number:");
Serial.println(numtel);
break;
}
Serial.println(numtel);
for (int i = 0; i < 9; i++) {
if (numtel[i+3] == numerau[i+1]) {
//vcs.answerCall();
Serial.println("autorise");
} else {
// vcs.hangCall();
Serial.println("refuse");
}
}
} |
Partager