Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Symfony2 wrapper around twitteroauth client for app usage
PHP
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
DependencyInjection
Resources/config
Services
InoriTwitterAppBundle.php
LICENSE
README.md
composer.json

README.md

DISCONTINUED

This project is no longer maintained by me. If you want to take over, please get in touch with me at inoryy@gmail.com

Introduction

TwitterAppBundle at its core is just a simple proxy bundle between twitteroauth client and symfony2. It is only meant to be used as a clientless app. If you want to add Twitter login/register/etc functionality to your app, please consider using FOS/TwitterBundle instead.

Example usage

Example use-case for this bundle would be automated twitter messages (from your project account) about certain events in your system.

Installation

With deps:

Add this bundle and Abraham Williams' Twitter library to your application:

[twitteroauth]
    git=http://github.com/abraham/twitteroauth.git

[InoriTwitterAppBundle]
    git=http://github.com/Inori/InoriTwitterAppBundle.git
    target=bundles/Inori/TwitterAppBundle

With composer:

Add this bundle to your composer.json:

// composer.json
{
    // ...
    require: {
        // ...
        "inori/twitter-app-bundle": "master"
    }
}

Register the namespace Inori to your project's autoloader bootstrap script:

//app/autoload.php
$loader->registerNamespaces(array(
    // ...
    'Inori'    => __DIR__.'/../vendor/bundles',
    // ...
));

Add this bundle to your application's kernel:

//app/AppKernel.php
public function registerBundles()
{
    return array(
        // ...
        new Inori\TwitterAppBundle\InoriTwitterAppBundle(),
    );
}

Configure the twitter_app service in your YAML configuration:

#app/config/config.yml
inori_twitter_app:
    file: %kernel.root_dir%/../vendor/twitteroauth/twitteroauth/twitteroauth.php
    consumer_key: xxxxxx
    consumer_secret: xxxxxx
    oauth_token: xxxxxx
    oauth_token_secret: xxxxxx

NB! To learn how to get keys/tokens, take a look at Twitter Developers documentation. For a quick walkthrough check below.

Using TwitterApp

If the setup is done correctly, then you can start using TwitterApp like this:

// ...
$ta = $this->container->get('twitter_app');
$messages = $ta->getDirectMessages();

TwitterApp comes with some basic methods for easier usage (tweet, follow), but for most of the API features you should use twitteroauth via getApi() method like this:

// ...
$ta = $this->container->get('twitter_app');
$trends = $ta->getApi()->get('trends');

Getting Twitter API tokens

  • Login at Twitter Developers page
  • Create your application
  • Go to your app profile page via My applications
  • There you will see Consumer key and Consumer secret under OAuth settings
  • Under Your access token you should see Access token and Access token secret, if not then simply press "Recreate my access token"
  • Make sure Access level is Read, write, and direct messages, if not then then go to Settings tab and under Application Type -> Access choose Read, Write and Access direct messages
Something went wrong with that request. Please try again.