Introduction: Automatic Answering Machine Using Linkit ONE

Hi... This instructable is about how to make an automatic answering machine....... I got a Linkit ONE free giveaway board... its an excellent board with inbuilt GSM,GRPS,GPS,RTC,BLUETOOTH,Wi-Fi,AUDIO,SD card slot... As the programming language is similar to Arduino its easier to code but compiling and uploading takes some time..

Step 1: Materials Required

1) Linkit ONE Board

2) Microphone with 3.5mm jack

3) simcard

4) Laptop or PC

Step 2: Connections

  1. Insert sim card in the sim card slot of Linkit one board.
  2. Connect the GSM antenna to Linkit ONE
  3. connect microphone to the audio jack of Linkit ONE

Step 3: Coding

Copy and paste the code shown below to Arduino IDE and upload it to Linkit ONE board
save your recorded voice to D:\abc1.wav location
ensure that your recorded voice name is "abc1" and it should be in .wav format.

#include <LGSM.h>

char n; char numtel[20]; void setup() { // initialize serial communications Serial.begin(115200); Serial.println("Receive Voice Call");

// This makes sure the modem notifies correctly incoming events LVoiceCall.hangCall();

Serial.println("Waiting Call"); }

void loop() { // Check the status of the voice call switch (LVoiceCall.getVoiceCallStatus()) { case IDLE_CALL: // Nothing is happening

break;

case RECEIVINGCALL: // Yes! Someone is calling us

Serial.println("RECEIVING CALL");

// Retrieve the calling number LVoiceCall.retrieveCallingNumber(numtel, 20);

// Print the calling number Serial.print("Number:"); Serial.println(numtel);

//checking the incoming phone no if last two digits are 8 and 0 if(numtel[12]=='0') { if(numtel[11]=='8') { Serial.println("Number matched"); Serial.println("Its akshay"); \\ your friend name Serial.println("call answering"); Serial.println("opening recorded voice"); LVoiceCall.answerCall(); Serial.print('A'); delay(2000); while(!Serial.available()); while(!Serial.available()); n=Serial.read(); if(n=='A') { Serial.println("call hanged"); LVoiceCall.hangCall(); } else { Serial.println("internal error"); LVoiceCall.hangCall(); Serial.println("call ended"); } } } break;

}

delay(100);

}

Step 4: VB Application

download VB application from the following link
VB application
open it and write the com port in which your Linkit ONE board is connected to the first text box field and click open button.
the large textbox field present in the vb app acts as a serial monitor

now make a call to the sim card which is inserted to your linkit one board...if the last two number of your calling phone number, matches the predefined number in code then your call will be attend and VB application plays the recorded voice in the location D:\abc1.wav after playing the audio the call will be hanged automatically....

Epilog Contest VII

Participated in the
Epilog Contest VII