brunoccast c7afe2f86c [TRANSLATION] Update Plugin POs 5 年之前
..
actions 39ebb64b85 Added proper enabling and disabling of sending RTs to Twitter. 8 年之前
classes 2f86cd8602 utf8mb4 conversion on database with index adjusts 9 年之前
daemons e4d432295d Only variables should be assigned by reference 5 年之前
icons 206c090688 Squashed commit of the following: 12 年之前
lib 1f5e306760 Set object_type to ActivityObject::NOTE on notices imported from Twitter. Previously was unset which caused ActivityHandler to throw an error during onStartOpenNoticeListItemElement() and the notices would not display in the timeline. 8 年之前
locale c7afe2f86c [TRANSLATION] Update Plugin POs 5 年之前
scripts e0084a6fdf Exception handling regarding Foreign_link 9 年之前
README fb1b80c915 Updating TwitterBridge README to be clearer on installation 10 年之前
Sign-in-with-Twitter-lighter.png e5ff610e75 'Sign in with Twitter' button img 15 年之前
TwitterBridgePlugin.php 46f98b3142 [VersionBump] 1.19.0, fairly late 5 年之前
tweetctlqueuehandler.php 9933c00c4f TwitterBridge PHP require_once paths now relative 10 年之前
twitter.php 5af96d3ec7 fixed hard coded twitter char limit 7 年之前

README

Twitter Bridge Plugin
=====================

This Twitter "bridge" plugin allows you to integrate your StatusNet
instance with Twitter. Installing it will allow your users to:

- automatically post notices to their Twitter accounts
- automatically subscribe to other Twitter users who are also using
your StatusNet install, if possible (requires running a daemon)
- import their Twitter friends' tweets (requires running a daemon)
- allow users to authenticate using Twitter ('Sign in with Twitter')

Installation
------------

OAuth 1.0a (http://oauth.net) is used to to access protected resources
on Twitter. To use Twitter bridging you will need to register your
instance of StatusNet as an application on Twitter (http://twitter.com/apps).
During the application registration process your application will be assigned
a "consumer" key and secret, which the plugin will use to make OAuth requests
to Twitter. You can either pass the consumer key and secret in when you
enable the plugin, or set it using the Twitter administration panel.

When registering your application with Twitter set the type to "Browser"
and your Callback URL to:

http://example.org/mublog/twitter/authorization

(Change "example.org" to your site domain and "mublog" to your site
path.)

The default access type should be "Read & Write".

To enable the plugin, add the following to your config.php:

addPlugin(
'TwitterBridge',
array(
'consumer_key' => 'YOUR_CONSUMER_KEY',
'consumer_secret' => 'YOUR_CONSUMER_SECRET'
)
);

or if you want to set the variables from the website's administration panel:

addPlugin('TwitterBridge');

After saving your configuration file, please run 'php scripts/upgrade.php'
and also restart the background daemons if they are active on your instance.

Administration panel
--------------------

To access the administration panel, you'll need to use a user with the
"administrator" role (see: scripts/userrole.php).

Sign in with Twitter
--------------------

GNU social optionally allows users to register and authenticate using their
Twitter credentials via the "Sign in with Twitter" pattern described here:

https://dev.twitter.com/web/sign-in

The option is _on_ by default when you install the plugin, but it can
disabled via the Twitter bridge administration panel, or by adding the
following line to your config.php:

$config['twitter']['signin'] = false;

Daemons
-------

For friend syncing and importing Twitter tweets, running two
additional daemon scripts is necessary: synctwitterfriends.php and
twitterstatusfetcher.php.

In the daemons subdirectory of the plugin are three scripts:

* Twitter Friends Syncing (daemons/synctwitterfriends.php)

Users may set a flag in their settings ("Subscribe to my Twitter friends
here" under the Twitter tab) to have StatusNet attempt to locate and
subscribe to "friends" (people they "follow") on Twitter who also have
accounts on your StatusNet system, and who have previously set up a link
for automatically posting notices to Twitter.

The plugin will start this daemon when you run scripts/startdaemons.sh.

* Importing statuses from Twitter (daemons/twitterstatusfetcher.php)

You can allow uses to enable importing of your friends' Twitter
timelines either in the Twitter bridge administration panel or in your
config.php using the following configuration line:

$config['twitterimport']['enabled'] = true;

The plugin will then start the TwitterStatusFetcher daemon along with the
other daemons when you run scripts/startdaemons.sh.

Additionally, you will want to set the integration source variable,
which will keep notices posted to Twitter via StatusNet from looping
back. You can do this in the Twitter bridge administration panel, or
via config.php. The integration source should be set to the name of your
application _exactly_ as you specified it on the settings page for your
StatusNet application on Twitter, e.g.:

$config['integration']['source'] = 'YourApp';

* TwitterQueueHandler (daemons/twitterqueuehandler.php)

This script sends queued notices to Twitter for user who have opted to
set up Twitter bridging.

It's not strictly necessary to run this queue handler, and sites that
haven't enabled queuing are still able to push notices to Twitter, but
for larger sites and sites that wish to improve performance the script
allows notices to be sent "offline" via a separate process.

StatusNet will automatically use the TwitterQueueHandler if you have
enabled the queuing subsystem. See the "Queues and daemons" section of
the main README file for more information about how to do that.