use Friendica\Database\DBA;
use Friendica\Model\Contact;
use Friendica\Model\Conversation;
-use Friendica\Model\GContact;
use Friendica\Model\Group;
use Friendica\Model\Item;
use Friendica\Model\ItemContent;
use Friendica\Model\User;
use Friendica\Object\Image;
-use Friendica\Util\Config\ConfigFileLoader;
+use Friendica\Util\ConfigFileLoader;
use Friendica\Util\DateTimeFormat;
use Friendica\Util\Network;
use Friendica\Util\Strings;
return;
}
- Logger::log('twitter post invoked');
+ Logger::notice('twitter post invoked', ['id' => $b['id'], 'guid' => $b['guid']]);
PConfig::load($b['uid'], 'twitter');
$b['body'] = twitter_update_mentions($b['body']);
$msgarr = ItemContent::getPlaintextPost($b, $max_char, true, 8);
+ Logger::info('Got plaintext', $msgarr);
$msg = $msgarr["text"];
if (($msg == "") && isset($msgarr["title"])) {
$connection = new TwitterOAuth($ckey, $csecret, $otoken, $osecret);
- $parameters = ["exclude_replies" => true, "trim_user" => false, "contributor_details" => true, "include_rts" => true, "tweet_mode" => "extended"];
+ $parameters = ["exclude_replies" => true, "trim_user" => false, "contributor_details" => true, "include_rts" => true, "tweet_mode" => "extended", "include_ext_alt_text" => true];
$first_time = ($lastid == "");
$url = "https://twitter.com/" . $data->screen_name;
$addr = $data->screen_name . "@twitter.com";
- GContact::update(["url" => $url, "network" => Protocol::TWITTER,
- "photo" => $avatar, "hide" => true,
- "name" => $data->name, "nick" => $data->screen_name,
- "location" => $data->location, "about" => $data->description,
- "addr" => $addr, "generation" => 2]);
-
$fields = ['url' => $url, 'network' => Protocol::TWITTER,
'name' => $data->name, 'nick' => $data->screen_name, 'addr' => $addr,
'location' => $data->location, 'about' => $data->description];
}
switch ($medium->type) {
case 'photo':
- $media[$medium->url] .= "\n[img]" . $medium->media_url_https . '[/img]';
+ if (!empty($medium->ext_alt_text)) {
+ Logger::info('Got text description', ['alt_text' => $medium->ext_alt_text]);
+ $media[$medium->url] .= "\n[img=" . $medium->media_url_https .']' . $medium->ext_alt_text . '[/img]';
+ } else {
+ $media[$medium->url] .= "\n[img]" . $medium->media_url_https . '[/img]';
+ }
+
$postarray['object-type'] = ACTIVITY_OBJ_IMAGE;
break;
case 'video':
case 'animated_gif':
- $media[$medium->url] .= "\n[img]" . $medium->media_url_https . '[/img]';
+ if (!empty($medium->ext_alt_text)) {
+ Logger::info('Got text description', ['alt_text' => $medium->ext_alt_text]);
+ $media[$medium->url] .= "\n[img=" . $medium->media_url_https .']' . $medium->ext_alt_text . '[/img]';
+ } else {
+ $media[$medium->url] .= "\n[img]" . $medium->media_url_https . '[/img]';
+ }
+
$postarray['object-type'] = ACTIVITY_OBJ_VIDEO;
if (is_array($medium->video_info->variants)) {
$bitrate = 0;
$posts = [];
while (!empty($post->in_reply_to_status_id_str)) {
- $parameters = ["trim_user" => false, "tweet_mode" => "extended", "id" => $post->in_reply_to_status_id_str];
+ $parameters = ["trim_user" => false, "tweet_mode" => "extended", "id" => $post->in_reply_to_status_id_str, "include_ext_alt_text" => true];
try {
$post = $connection->get('statuses/show', $parameters);
return;
}
- $parameters = ["exclude_replies" => false, "trim_user" => false, "contributor_details" => true, "include_rts" => true, "tweet_mode" => "extended"];
+ $parameters = ["exclude_replies" => false, "trim_user" => false, "contributor_details" => true, "include_rts" => true, "tweet_mode" => "extended", "include_ext_alt_text" => true];
//$parameters["count"] = 200;
// Fetching timeline
$lastid = PConfig::get($uid, 'twitter', 'lasthometimelineid');