Автоматические сообщения в Twitter через PHP (Twitter API, OAuth)
dev.twitter.com сделал очередные обновления в дизайне и функционале. Довёл статью до актуального состояния.
dev.twitter.com изменил расположение кнопок и меню, инструкция обновлена до актуального состояния.
Статья о том, как написать скрипт на php для автоматического управления своей twitter страницей. Скрипт даст возможность: писать сообщения, удалять сообщения, узнавать статус, кол-во фолловеров, последнюю запись и многое другое!
Все действия в работе с Twitter API (для аутентификации) выполняются при помощи механизма OAuth.

Для использования Twitter API нужно добавить своё приложение на dev.twitter.com, далее я написал подробную, пошаговую инструкцию о регистрации twitter-приложения, а затем как это приложение использовать с помощью php-скрипта.
1. Вход в dev.twitter.com
Зайдите на страницу dev.twitter.com. Войдите в систему под логином и паролем, используемыми для входа в Ваш twitter аккаунт. Вход в систему осуществляется по нажатию кнопки "Sign in".
2. Создание приложения на dev.twitter.com
Войдите в меню вашего логина и выберите My applications. Вы войдёте на страницу ваших приложений, созданных на dev twitter.
Создайте новое приложение, нажав на кнопку "Create New App". Так, вы попадёте на страницу создания приложения, где вам предложат заполнить необходимые детали для работы приложения.
Введите название приложения (Name), описание приложения (Description), ссылку на веб-сайт вашего приложения (Website), ссылка на страницу с контактными данным (Callback URL) - это опция для указания страницы обратной связи, напр. "http://makefuture.net/feedback/". После заполнения всех необходмых данных, прочитайте правила и согласитесь (Yes, I agree), если согласны :), введите капчу и нажмите на "Create your Twitter application" (создать моё твиттер-приложение).
3. Настройка twitter приложения
После того, как вы создали приложение, вас направит на страницу с данными созданного приложения. Выберите вкладку "Settings" (настройки) для настройки иконки и других данных о приложении. Затем выберите вкладку "Permissions" (разрешения) - для настройки полномочий вашего приложения.
Выберите "Read, Write and Access direct messages" или другой вам подходящий вариант. Внимание! Для того, чтобы поставить эти настройки Вам необходимо указать свой номер телефона в твиттер аккаунте!
Read - приложение только читает, Read and Write - читает и записывает, Read, Write and Access direct messages - читает, записывает и может напрямую добавлять сообщения в твит.
После проведения всех необходимых настроек на этой странице, нажмите на кнопку "Update settings", находящуюся снизу, следом за настройками.
4. Сбор необходимых ключей
После того, как вы изменили настройки, зайдите на вкладку "API Keys" (ключи приложения).
Скопируйте к себе в блокнот ключи "API key" и "API secret", а затем нажмите на кнопку "Create my access token" (создать ключи безопасности), находящуюся ниже на странице.
5. Дело за малым! Осталось настроить сам PHP-скрипт отправки в twitter.
Сначала, загрузите нужную для работы библиотеку Abraham Twitter OAuth. Нам нужны только два файла: twitteroauth/twitteroauth.php и twitteroauth/OAuth.php. Всего в рабочей папке на вашем сайте, должно быть 3 файла, twitteroauth.php, OAuth.php и (наш скрипт) script.php.Вот код скрипта:
require_once('twitteroauth.php'); //Загружаем библиотеку
//Вводим свои данные
define("CONSUMER_KEY", "Вставьте ваш API Key");
define("CONSUMER_SECRET", "Вставьте ваш API Secret");
define("OAUTH_TOKEN", "Вставьте ваш Access Token");
define("OAUTH_SECRET", "Вставьте ваш Access Token Secret");
//Инициализируем класс
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, OAUTH_TOKEN, OAUTH_SECRET);
$content = $connection->get('account/verify_credentials');
//Постим сообщение
$connection->post('statuses/update', array('status' => "Привет Твиттерe от http://makefuture.net !"));
Скачайте пример и нужные файлы
Дополнительные возможности
Как удалить сообщение на twitter?Замените строку:
$connection->post('statuses/update', array('status' => "Сообщение!"));
на
$content = $connection->delete('statuses/destroy/Айди сообщения в твиттере');
Различная информация о вашем твите, которую вы получите с помощью переменной $content
//Ваш id
$content['id']
$content['id_str']
//Имя
$content['name']
//Показываемое название твита
$content['screen_name']
//Изображение профиля
$content['profile_image_url']
//Язык
$content['lang']
//Читаете
$content['friends_count']
//Вас читают
$content['']
//Кол-во твитов
$content['statuses_count']
//Статус
$content['description']
//Кол-во фолловеров
$content['followers_count']
//Создан
$content['created_at']
//Временная зона
$content['time_zone']
//Дизайн профиля:
$content['profile_background_image_url_https']
$content['profile_background_image_url_http']
$content['profile_use_background_image']
$content['profile_text_color']
$content['profile_sidebar_border_color']
$content['profile_sidebar_fill_color']
$content['profile_background_color']
$content['profile_background_tile']
$content['default_profile_image']
//Получить все ключи/значения вы можете добавив такую строку:
foreach($content as $key => $value){echo "{$key} - {$value}";}
Ссылки
API ДокументацияOAuth Документация
MakeFuture на твиттере
P.S.
Если будут проблемы с кириллицей, то сохраните файл с сообщением в UTF8 BOM.Ну вот и всё, когда запустите данный скрипт, то в ваш твиттер упадёт приветственное сообщение! Основа есть, а далее полёт вашей фантазии и логики, к примеру, можно настроить скрипт на отправку сообщения в твиттер, после публикации нового материала на Вашем сайте. Если Вам это не по силам, вы можете обратиться ко мне и в качестве платной услуги я быстро настрою вашу систему так, как Вам захочется.
Похожие материалы
Комментарии и отзывы к материалу
09.10.2012
Lock пишет:20.03.2013
Игорь Л. пишет:в картинках объясните где галочки ставить и что выбирать
20.03.2013
Григорий (MakeFuture) пишет:29.03.2013
Alex пишет:21.04.2013
Алексей пишет:21.04.2013
Григорий (MakeFuture) пишет:22.04.2013
serge пишет:24.04.2013
frozen пишет:24.04.2013
Григорий (MakeFuture) пишет:Ну и не помешало бы перезалить файлы OAuth.php (обновился месяц назад) и twitteroauth.php (обновился 13 дней назад).
28.04.2013
nasdak пишет:07.05.2013
Григорий (MakeFuture) пишет:09.05.2013
Александр пишет:06.06.2013
yung пишет:Хотелось бы взять совета,
удаление и постинг твитов проходит на ура, а вот возможно ли изменение определенного твита, что то вроде:
$connection->post('statuses/update/ID', array('status' => "ЕЩЕ РАЗ Здравствуй Твиттер!"));
Заранее спасибо!
12.06.2013
Григорий (MakeFuture) пишет:01.08.2013
Володя пишет:24.08.2013
Денис пишет:30.09.2013
www.mediakirov.ru пишет:The Twitter REST API v1 is no longer active. Please migrate to API v1.1
30.09.2013
www.mediakirov.ru пишет:https://raw.github.com/abraham/twitteroauth/master/twitteroauth/twitteroauth.php
22.01.2014
Kubig пишет:07.02.2014
Сергей пишет:01.07.2014
Григорий (MakeFuture) пишет:У них поменялся дизайн и теперь требуют телефон для более широких полномочий приложения.
12.08.2014
Максим пишет:03.10.2014
Вячеслав пишет:24.12.2014
Алекс пишет:Спасибо.
08.02.2015
Алексей пишет:01.07.2015
Андрей пишет:08.07.2015
Андрей пишет:29.09.2015
Дмитрий пишет:Отправить комментарий
Как зовут?
Сообщение