I am running into the issue where the Photon is hanging when I try to send an image that is too large (i.e. anything over ~5000 base64 characters seems to cause the failure). I have copied my code below. It seems to hang on the line return_code = choreo.run();
Any help would be appreciated!
// This #include statement was automatically added by the Particle IDE.
#include "Temboo/Temboo.h"
// Temboo account credentials
#define TEMBOO_ACCOUNT "ShawnHymel"
#define TEMBOO_APP_KEY_NAME "TreatsAndTweets"
#define TEMBOO_APP_KEY "xxx"
// Twitter account credentials
#define TWITTER_CONSUMER_KEY "xxx"
#define TWITTER_CONSUMER_SECRET "xxx"
#define TWITTER_ACCESS_TOKEN "xxx"
#define TWITTER_ACCESS_TOKEN_SECRET "xxx"
// Global variables
TCPClient client;
String msg("Tweet test");
static const char img_st[] = "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";
void setup() {
int return_code;
// Debugging: Press Enter in the console to begin program
Serial.begin(9600);
while(!Serial.available()) { // Wait here until the user presses ENTER
Spark.process(); // in the Serial Terminal. Call the BG Tasks
}
Serial.println("Photo Test");
// Invoke Temboo client. Note we need to repopulate parameters each time.
TembooChoreo choreo(client);
choreo.begin();
// Set Temboo account credentials
choreo.setAccountName(TEMBOO_ACCOUNT);
choreo.setAppKeyName(TEMBOO_APP_KEY_NAME);
choreo.setAppKey(TEMBOO_APP_KEY);
// Identify the choreo to run
choreo.setChoreo("/Library/Twitter/Tweets/UpdateWithMedia");
// Add Twitter account information
choreo.addInput("AccessToken", TWITTER_ACCESS_TOKEN);
choreo.addInput("AccessTokenSecret", TWITTER_ACCESS_TOKEN_SECRET);
choreo.addInput("ConsumerKey", TWITTER_CONSUMER_KEY);
choreo.addInput("ConsumerSecret", TWITTER_CONSUMER_SECRET);
// Set image for Tweet
choreo.addInput("MediaContent", img_st);
// Set the Tweet text
choreo.addInput("StatusUpdate", msg);
// Run the choreo and wait for the return value. 0 means everything worked.
Serial.println("Tweeting image...");
return_code = choreo.run();
if ( return_code == 0 ) {
Serial.println("Success!");
} else {
while ( choreo.available() ) {
char c = choreo.read();
Serial.print(c);
}
}
choreo.close();
}
void loop() {
//Do nothing
}