说明
检索主叫号码并存储它。
用法
voice.retrieveCallingNumber(number, size)
参数
number:保存数字的char数组 size:数组的大小
返回
int 在异步模式下,retrieveCallingNumber() 如果最后一条命令仍在执行,则返回 0,如果成功则返回 1,如果有错误,则返回 >1。在同步模式下,如果获取到数字则返回 1,否则返回 0。
示例
#include <MKRGSM.h>
// PIN Number
#define PINNUMBER ""
// initialize the library instance
GSM gsmAccess; // include a 'true' parameter for debug enabled
GSMVoiceCall vcs;
char numtel[20]; // buffer for the incoming call
void setup()
{
// initialize serial communications
Serial.begin(9600);
Serial.println("Receive Voice Call");
// connection state
boolean notConnected = true;
// Start GSM shield
// If your SIM has PIN, pass it as a parameter of begin() in quotes
while(notConnected)
{
if(gsmAccess.begin(PINNUMBER)==GSM_READY)
notConnected = false;
else
{
Serial.println("Not connected");
delay(1000);
}
}
// This makes sure the modem notifies correctly incoming events
vcs.hangCall();
Serial.println("Waiting Call");
}
void loop()
{
// Check the status of the voice call
switch (vcs.getvoiceCallStatus())
{
case IDLE_CALL: // Nothing is happening
break;
case CALLING: // This should never happen, as we are not placing a call
Serial.println("CALLING");
break;
case RECEIVINGCALL: // Yes! Someone is calling us
Serial.println("RECEIVING CALL");
// Retrieve the calling number
vcs.retrieveCallingNumber(numtel, 20);
// Print the calling number
Serial.print("Number:");
Serial.println(numtel);
// Answer the call, establish the call
vcs.answerCall();
break;
case TALKING: // In this case the call would be established
Serial.println("TALKING. Enter line to interrupt.");
while(Serial.read()!='\n')
delay(100);
vcs.hangCall();
Serial.println("HANG. Waiting Call.");
break;
}
delay(1000);
}
相关用法
- Arduino MKRGSM - voice.answerCall()用法及代码示例
- Arduino MKRGSM - voice.hangCall()用法及代码示例
- Arduino MKRGSM - voice.voiceCall()用法及代码示例
- Arduino MKRGSM - voice.getVoiceCallStatus()用法及代码示例
- Arduino MKRGSM - gprs.attachGPRS()用法及代码示例
- Arduino MKRGSM - sms.read()用法及代码示例
- Arduino MKRGSM - sms.print()用法及代码示例
- Arduino MKRGSM - client.connected()用法及代码示例
- Arduino MKRGSM - sms.write()用法及代码示例
- Arduino MKRGSM - gsm.shutdown()用法及代码示例
- Arduino MKRGSM - modem.getIMEI()用法及代码示例
- Arduino MKRGSM - sms.available()用法及代码示例
- Arduino MKRGSM - client.available()用法及代码示例
- Arduino MKRGSM - client.stop()用法及代码示例
- Arduino MKRGSM - GSM构造函数用法及代码示例
- Arduino MKRGSM - gsm.begin()用法及代码示例
- Arduino MKRGSM - sms.endSMS()用法及代码示例
- Arduino MKRGSM - grps.ping()用法及代码示例
- Arduino MKRGSM - sms.peek()用法及代码示例
- Arduino MKRGSM - sms.beginSMS()用法及代码示例
- Arduino MKRGSM - client.connect()用法及代码示例
- Arduino MKRGSM - client.read()用法及代码示例
- Arduino MKRGSM - sms.flush()用法及代码示例
- Arduino MKRGSM - sms.remoteNumber()用法及代码示例
- Arduino MKRNB - getCurrentCarrier()用法及代码示例
注:本文由纯净天空筛选整理自arduino.cc大神的英文原创作品 MKRGSM - voice.retrieveCallingNumber()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。