Функція remoteNumber()
Клас GSM_SMS
remoteNumber()
Отримує номер телефону від вхідного SMS-повідомлення та зберігає його в названому масиві.
Синтаксис
SMS.remoteNumber(номер, розмір)Параметри
номер: масив символів, названий масив, який зберігатиме номер відправникарозмір: int, розмір масиву
Повертає
intВ асинхронному режимі remoteNumber() повертає 0, якщо остання команда досі виконується, 1, якщо успішно, >1 у разі помилки. У синхронному режимі повертає 1, якщо успішно виконано, 0, якщо ні.
Приклад
#include <GSM.h>
// PIN-номер
#define PINNUMBER ""
// ініціалізувати приклад бібліотеки
GSM gsmAccess; // включити параметр істини для активації налагодження
GSM_SMS sms;
char remoteNumber[20]; // Утримує емітоване число
void setup()
{
// ініціалізувати послідовні зв’язки
Serial.begin(9600);
Serial.println("Відправник SMS-повідомлень");
// стан підключення
boolean notConnected = true;
// Розпочати роботу GSM-шилда
// Якщо SIM має PIN, передайте його як параметр begin () у лапках
while(notConnected)
{
if(gsmAccess.begin(PINNUMBER)==GSM_READY)
notConnected = false;
else
{
Serial.println("Не підключено");
delay(1000);
}
}
Serial.println("GSM ініціалізовано");
Serial.println("Очікування повідомлень");
}
void loop()
{
char c;
// Якщо є доступні SMS
if (sms.available())
{
Serial.println("Повідомлення отримано від:");
// Отримати віддалений номер
sms.remoteNumber(remoteNumber, 20);
Serial.println(remoteNumber);
// Це просто приклад передачі повідомлення
// Повідомлення, що починаються з #, мають бути відкинуті
if(sms.peek()=='#')
{
Serial.println("Discarded SMS");
sms.flush();
}
// Читати байти повідомлень та друкувати їх
while(c=sms.read())
Serial.print©;
Serial.println("\nКінець повідомлення");
// видалити повідомлення з пам’яті модема
sms.flush();
Serial.println("Повідомлення видалено");
}
delay(1000);
}Повернутись до головної

Коментарі 0