//Parametros:
// $tweetMessage es el mensaje que quieres enviar, debe tener menos de 140 caracteres
// $keys son las keys que te da la aplicación que creas en twitter (la aplicación debe tener permisos de lectura y escritura) $keys es un array asociativo mas abajo muestro como
//$filePath es la url de la imagen que quieras enviar con el twitt
function anadir_twitt($tweetMessage, $keys, $filePath){
$consumerKey = $keys['consumerKey'];
$consumerSecret = $keys['consumerSecret'];
$accessToken = $keys['accessToken'];
$accessTokenSecret = $keys['accessTokenSecret'];
$connection = new TwitterOAuth($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret);
$url = 'https://upload.twitter.com/1.1/media/upload.json';
$method = 'POST';
$parameters = array( 'media' => base64_encode(file_get_contents($filePath)) );
$request = OAuthRequest::from_consumer_and_token($connection->consumer, $connection->token, $method, $url, $parameters);
$request->sign_request($connection->sha1_method, $connection->consumer, $connection->token);
$response = $connection->http($request->get_normalized_http_url(), $method, $request->to_postdata());
if ($connection->format === 'json' && $connection->decode_json) {
$response = json_decode($response);
if (isset($response->media_id)){
if(strlen($tweetMessage) <= 140) {
$rjson = $connection->post('statuses/update', array('status' => $tweetMessage, 'media_ids' => $response->media_id));
return $rjson;
}
}
$err_media = ['errors' => [0 => json_decode('{"message":"imagen muy pesada","code":347}')]];
return (object) $err_media;
}
return FALSE;
}