I’m using an Arduino Yun and trying to send an SMS through Temboo using the example code slightly modified. The code is below. Sorry for it being so long. Last week I was able to send all the text messages I wanted and it worked perfect. This morning, I hook it up and I get this error message.
Error
curl: (6) Couldn’t resolve host ‘iamtheream.temboolive.com’
HTTP_CODE
000
This is really weird because all of my information is correct and it worked every other time/day/week I’ve tested. A few buddies at school are having this exact same problem. Any help or clarification on why this is happening would be awesome. Thanks!
#include <Bridge.h>
#include <Temboo.h>
#include "TembooAccount.h" // contains Temboo account information
// as described in the footer comment below
#define TEMBOO_ACCOUNT "username" // your Temboo account name
#define TEMBOO_APP_KEY_NAME "myFirstApp" // your Temboo app key name
#define TEMBOO_APP_KEY "key" // your Temboo app key
int button1 = 11; // button1 put into pin 11
int button2 = 10; // button1 put into pin 10
int button3 = 9; // button1 put into pin 9
int button4 = 8; // button1 put into pin 8
int button5 = 7; // button1 put into pin 7
int button6 = 6; // button1 put into pin 6
int ledRed = 13; // led put into pin 12
int ledGreen = 12; // led pit into pin 13
int buttonState1 = 0;
int buttonState2 = 0;
int buttonState3 = 0;
int buttonState4 = 0;
int buttonState5 = 0;
int buttonState6 = 0;
/*** SUBSTITUTE YOUR VALUES BELOW: ***/
// Note that for additional security and reusability, you could
// use #define statements to specify these values in a .h file.
// the Account SID from your Twilio account
const String TWILIO_ACCOUNT_SID = "accountInfo";
// the Auth Token from your Twilio account
const String TWILIO_AUTH_TOKEN = "tokenID";
// your Twilio phone number, e.g., "+1 555-222-1212"
const String TWILIO_NUMBER = "twillioNumber";
// the number to which the SMS should be sent, e.g., "+1 555-222-1212"
const String RECIPIENT_NUMBER = "myNumber";
// a flag to indicate whether we've attempted to send the SMS yet or not
boolean attempted = false;
boolean attempted1 = false;
boolean attempted2 = false;
boolean attempted3 = false;
boolean attempted4 = false;
boolean attempted5 = false;
void setup() {
Serial.begin(9600);
pinMode(button1, INPUT);
pinMode(button2, INPUT);
pinMode(button3, INPUT);
pinMode(button4, INPUT);
pinMode(button5, INPUT);
pinMode(button6, INPUT);
pinMode(ledRed, OUTPUT);
pinMode(ledGreen, OUTPUT);
Serial.print("setUpComplete");
// for debugging, wait until a serial console is connected
delay(4000);
while(!Serial);
Bridge.begin();
}
void loop()
{
buttonState1 = digitalRead(button1);
buttonState2 = digitalRead(button2);
buttonState3 = digitalRead(button3);
buttonState4 = digitalRead(button4);
buttonState5 = digitalRead(button5);
buttonState6 = digitalRead(button6);
digitalWrite(ledRed, HIGH);
if(buttonState1 == HIGH) {
Serial.println("Starting SMS 1");
digitalWrite(ledRed, LOW);
// only try to send the SMS if we haven't already sent it successfully
if (attempted = true) {
Serial.println("Running SendAnSMS...");
// we need a Process object to send a Choreo request to Temboo
TembooChoreo SendSMSChoreo;
digitalWrite(ledRed, HIGH);
// invoke the Temboo client
// NOTE that the client must be reinvoked and repopulated with
// appropriate arguments each time its run() method is called.
SendSMSChoreo.begin();
// set Temboo account credentials
SendSMSChoreo.setAccountName(TEMBOO_ACCOUNT);
SendSMSChoreo.setAppKeyName(TEMBOO_APP_KEY_NAME);
SendSMSChoreo.setAppKey(TEMBOO_APP_KEY);
digitalWrite(ledRed, LOW);
// identify the Temboo Library choreo to run (Twilio > SMSMessages > SendSMS)
SendSMSChoreo.setChoreo("/Library/Twilio/SMSMessages/SendSMS");
// the first input is a your AccountSID
SendSMSChoreo.addInput("AccountSID", TWILIO_ACCOUNT_SID);
// next is your Auth Token
SendSMSChoreo.addInput("AuthToken", TWILIO_AUTH_TOKEN);
// next is your Twilio phone number
SendSMSChoreo.addInput("From", TWILIO_NUMBER);
// next, what number to send the SMS to
SendSMSChoreo.addInput("To", RECIPIENT_NUMBER);
// finally, the text of the message to send
SendSMSChoreo.addInput("Body", "Message 1");
digitalWrite(ledRed, HIGH);
// tell the Process to run and wait for the results. The
// return code (returnCode) will tell us whether the Temboo client
// was able to send our request to the Temboo servers
unsigned int returnCode = SendSMSChoreo.run();
// a return code of zero (0) means everything worked
if (returnCode == 0) {
Serial.println("Success! SMS sent!");
digitalWrite(ledRed, LOW);
digitalWrite(ledGreen, HIGH);
delay(3500);
digitalWrite(ledGreen, LOW);
digitalWrite(ledRed, HIGH);
buttonState1 = LOW;
} else {
// a non-zero return code means there was an error
// read and print the error message
while (SendSMSChoreo.available()) {
char c = SendSMSChoreo.read();
Serial.print(c);
}
}
SendSMSChoreo.close();
// set the flag indicatine we've tried once.
attempted=true;
}
}
if(buttonState2 == HIGH) {
Serial.println("Starting SMS 2");
digitalWrite(ledRed, LOW);
// only try to send the SMS if we haven't already sent it successfully
if (attempted1 = true) {
Serial.println("Running SendAnSMS...");
// we need a Process object to send a Choreo request to Temboo
TembooChoreo SendSMSChoreo1;
digitalWrite(ledRed, HIGH);
// invoke the Temboo client
// NOTE that the client must be reinvoked and repopulated with
// appropriate arguments each time its run() method is called.
SendSMSChoreo1.begin();
// set Temboo account credentials
SendSMSChoreo1.setAccountName(TEMBOO_ACCOUNT);
SendSMSChoreo1.setAppKeyName(TEMBOO_APP_KEY_NAME);
SendSMSChoreo1.setAppKey(TEMBOO_APP_KEY);
digitalWrite(ledRed, LOW);
// identify the Temboo Library choreo to run (Twilio > SMSMessages > SendSMS)
SendSMSChoreo1.setChoreo("/Library/Twilio/SMSMessages/SendSMS");
// the first input is a your AccountSID
SendSMSChoreo1.addInput("AccountSID", TWILIO_ACCOUNT_SID);
// next is your Auth Token
SendSMSChoreo1.addInput("AuthToken", TWILIO_AUTH_TOKEN);
// next is your Twilio phone number
SendSMSChoreo1.addInput("From", TWILIO_NUMBER);
// next, what number to send the SMS to
SendSMSChoreo1.addInput("To", RECIPIENT_NUMBER);
// finally, the text of the message to send
SendSMSChoreo1.addInput("Body", "Message 2");
digitalWrite(ledRed, HIGH);
// tell the Process to run and wait for the results. The
// return code (returnCode) will tell us whether the Temboo client
// was able to send our request to the Temboo servers
unsigned int returnCode = SendSMSChoreo1.run();
// a return code of zero (0) means everything worked
if (returnCode == 0) {
Serial.println("Success! SMS sent!");
digitalWrite(ledRed, LOW);
digitalWrite(ledGreen, HIGH);
delay(3500);
digitalWrite(ledGreen, LOW);
digitalWrite(ledRed, HIGH);
buttonState2 = LOW;
} else {
// a non-zero return code means there was an error
// read and print the error message
while (SendSMSChoreo1.available()) {
char c = SendSMSChoreo1.read();
Serial.print(c);
}
}
}