Подтвердить что ты не робот

How to → Предложение купона для Tweet

Я видел недавно несколько раз, когда компании предлагают либо ссылку для загрузки, либо код купона для людей, которые будут чирикать об этом. Все автоматизировано, и я хотел бы сделать что-то подобное, но я не совсем понимаю этот процесс.

Обычно вы переходите на страницу со ссылкой. Вы нажимаете на ссылку, и она спрашивает, даете ли вы разрешение на использование какого-либо приложения Tweeter для подключения к вашему профилю. Вы предоставляете разрешение, и оно выводит предварительно написанное сообщение в Twitter, что-то вроде: "Я только что получил купон, чтобы попробовать..." Как только сообщение Twitter будет отправлено, вы перенаправлены на страницу, где вы найдете свой купон код.

Я использую PHP и могу написать все, что необходимо для этого.

Кто-нибудь знает, как все это делается?


Обновление:

Хорошо, я загрузил http://code.google.com/p/oauth-php/still, не понимая, что делать дальше.

Я пытаюсь понять, начиная с этой страницы: http://code.google.com/p/oauth-php/wiki/ConsumerHowTo#Two-legged_OAuth

Как я понимаю процесс, в этом порядке должно выполняться следующее:

  • Мне нужна ссылка где-нибудь на моем сайте, у которой будет предложение: "Отправить Twit и получить купон", правильно?

  • Как только они нажимают ссылку на предложение, как я могу заполнить сообщение в своем окне обновления Twitter: "Попробуйте этот инструмент бесплатно: http" //mylink.com "?

  • Как только они отправят сообщение в Twitter, я полагаю, что у меня будут некоторые настройки, которые перенаправят обратно на мой сайт на страницу с купоном.


UPDATE: переключится на twitteroauth, но все равно нужна помощь...

4b9b3361

Ответ 1

В принципе, вам нужно создать приложение, которое использует API OAuth для подключения к твиттеру и публикации твита. Это занимает несколько шагов (при условии, что вы зарегистрировали свое приложение в Twitter, предоставив вам ключ и секрет):

  • Создайте объект TwitterOAuth, используя учетные данные клиента.
  • Запросить временные учетные данные из Twitter.
  • Создать авторизационный URL для Twitter.
  • Перенаправить пользователя на авторизацию URL.
  • Пользователь разрешает доступ и возвращается из Twitter.
  • Восстановить объект TwitterOAuth с учетными данными клиента и временными учетными данными.
  • Query Twitter API.

Используя TwitterOAuth, он будет выглядеть примерно так:

<?php
  require_once 'TwitterOAuth.php';
  define('THIS', 'http://example.org/tweet.php'); // Absolute URI to script

  if(isset($_GET['callback']) {
    $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, 
                      $_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);
    $connection->post('statuses/update', array('status' => 'Coupon message'));
    header('Location: coupon.php'); // Supplies user with coupon
  } else {
    $connection = new TwitterOAuth('key', 'secret'); // Key & secret from Twitter
    $temporary_credentials = $connection->getRequestToken(THIS.'?');
    $redirect_url = $connection->getAuthorizeURL($temporary_credentials, FALSE);
    header('Location: '.$redirect_url.'&callback');
  }
?>

(Обратите внимание, что вышеуказанный код не проверен, прочитайте документацию TwitterOAuth, прежде чем делать что-либо самостоятельно.)

Ответ 2

Для более ленивых из нас;) Это делает кнопку заплатить с помощью твита (например, enter image description here) и затем ссылаться на URL-адрес вашего выбора. Я думаю, вы могли бы достичь большинства своих целей с помощью этого (хотя коды купонов, которые являются персональными, могут быть сложными).

Ответ 3

Вы можете использовать Abraham Twitter OAuth Library, я бы предложил это, так как поток OAuth невероятно прост.

Что вы хотите сделать, так это сделать ссылку "Tweet об этом, чтобы получить бесплатную загрузку" или что-то еще. Эта ссылка будет перенаправлять их для авторизации вашего приложения Twitter, когда обратный вызов возвращается на ваш сайт, вы запрашиваете токен доступа и сохраняете его. Эта страница должна иметь текстовое поле, предварительно заполненное вашим сообщением, которое отправляет на ваш сайт сообщение, которое они хотят отправить. Вы выполните вызов API, чтобы отправить сообщение с помощью маркера доступа, который вы получили. После того, как вы сделаете звонок и опубликуете твит, покажите им страницу для загрузки.

Взгляните на Документацию по библиотеке TwitterOAuth, так как в нем есть подробные примеры того, как использовать библиотеку для совершения вызовов, которые вы ищете.

Ответ 4

Немного PHP script и что он делает:

// php.ini::session.auto_start=1
include('commands.php');
$command = get_command_from_request();
switch($command) {
  case 'tweet': 
      command_tweet(); break;
  case 'redirect':
      command_redirect(); break;
  default:
    command_default();
}

Имейте в виду, что вам необходимо реализовать сопоставление команды с запросом самостоятельно (реализация get_command_from_request), а также для конкретных команд.

Tweeting зависит от используемого вами API. В качестве примера можно использовать любой из многих API-интерфейсов.

Рядом с этим вам нужно создать HTML-форму для сбора данных, необходимых для чириканья (ключи API и т.д.). Если вы не знаете, как данные попадают в ваш script, ознакомьтесь с руководством по PHP о формах.

Итак, пусть command_default отображает форму, а также ее верификацию внутри command_tweet, а get_command_from_request выполняется сейчас. Остальное делает перенаправление на ваш секретный купон script.

Как вы не много рассказали о своем секретном купоне script, перенаправления, вероятно, достаточно. Хорошей функцией для перенаправления HTTP в PHP является http_redirect().