]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Make SyncTwitterFriends and TwitterStatusFetcher daemons use both HTTP Basic Auth...
authorZach Copley <zach@controlyourself.ca>
Fri, 28 Aug 2009 07:02:27 +0000 (07:02 +0000)
committerZach Copley <zach@controlyourself.ca>
Fri, 28 Aug 2009 07:02:27 +0000 (07:02 +0000)
lib/oauthclient.php
lib/twitterbasicauthclient.php
lib/twitteroauthclient.php
scripts/synctwitterfriends.php
scripts/twitterqueuehandler.php
scripts/twitterstatusfetcher.php

index cc10cea8f98ed9c1948ac40ecc53960a069f9565..f1827726e71e843d4e2e17daeedc6005308304f0 100644 (file)
@@ -22,7 +22,7 @@
  * @category  Action
  * @package   StatusNet
  * @author    Zach Copley <zach@status.net>
- * @copyright 2008 StatusNet, Inc.
+ * @copyright 2009 StatusNet, Inc.
  * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
  * @link      http://status.net/
  */
index 82359d93d10bcd91cbe0733833a9fb9b19da9a2d..66bb01e539c72d20f6bff37aa5904447ea9e9613 100644 (file)
@@ -88,7 +88,7 @@ class TwitterBasicAuthClient
         $params   = array('status' => $status,
                           'source' => common_config('integration', 'source'),
                           'in_reply_to_status_id' => $in_reply_to_status_id);
-        $response = $this->httpRequest($url, $params, true);
+        $response = $this->httpRequest($url, $params);
         $status   = json_decode($response);
         return $status;
     }
@@ -117,7 +117,7 @@ class TwitterBasicAuthClient
             $url .= "?$qry";
         }
 
-        $response = $this->httpRequest($url, null, true);
+        $response = $this->httpRequest($url);
         $statuses = json_decode($response);
         return $statuses;
     }
@@ -190,7 +190,7 @@ class TwitterBasicAuthClient
      *
      * @return mixed the request
      */
-    function httpRequest($url, $params = null, $auth = false)
+    function httpRequest($url, $params = null, $auth = true)
     {
         $options = array(
                          CURLOPT_RETURNTRANSFER => true,
index 9821a491e5f0a513eddda26fdfc7afa456924714..e37fa05f0a6214c140ab71dab264c9f200702496 100644 (file)
@@ -22,7 +22,7 @@
  * @category  Integration
  * @package   StatusNet
  * @author    Zach Copley <zach@status.net>
- * @copyright 2008 StatusNet, Inc.
+ * @copyright 2009 StatusNet, Inc.
  * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
  * @link      http://status.net/
  */
index 545cb23b3cac4678fb2753472ee8a11a918e5870..2cb7525eaf64ce2d9fea91dc795083a3eb119df0 100755 (executable)
@@ -19,6 +19,8 @@
  */
 
 define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+define('STATUSNET', true);
+define('LACONICA', true); // compatibility
 
 $shortoptions = 'di::';
 $longoptions = array('id::', 'debug');
@@ -142,13 +144,20 @@ class SyncTwitterFriendsDaemon extends ParallelizingDaemon
     {
         $friends = array();
 
-        $token = TwitterOAuthClient::unpackToken($flink->credentials);
+        $client = null;
 
-        $client = new TwitterOAuthClient($token->key, $token->secret);
+        if (TwitterOAuthClient::isPackedToken($flink->credentials)) {
+            $token = TwitterOAuthClient::unpackToken($flink->credentials);
+            $client = new TwitterOAuthClient($token->key, $token->secret);
+            common_debug($this->name() . '- Grabbing friends IDs with OAuth.');
+        } else {
+            $client = new TwitterBasicAuthClient($flink);
+            common_debug($this->name() . '- Grabbing friends IDs with basic auth.');
+        }
 
         try {
             $friends_ids = $client->friendsIds();
-        } catch (OAuthCurlException $e) {
+        } catch (Exception $e) {
             common_log(LOG_WARNING, $this->name() .
                        ' - cURL error getting friend ids ' .
                        $e->getCode() . ' - ' . $e->getMessage());
@@ -177,7 +186,7 @@ class SyncTwitterFriendsDaemon extends ParallelizingDaemon
 
         try {
             $more_friends = $client->statusesFriends(null, null, null, $i);
-        } catch (OAuthCurlException $e) {
+        } catch (Exception $e) {
             common_log(LOG_WARNING, $this->name() .
                        ' - cURL error getting Twitter statuses/friends ' .
                        "page $i - " . $e->getCode() . ' - ' .
index ce4d824d0d31938f3445a9058e2706004be89419..992141f9de43220189f4c674f5a7d2b7cb1e28cc 100755 (executable)
@@ -19,6 +19,8 @@
  */
 
 define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+define('STATUSNET', true);
+define('LACONICA', true); // compatibility
 
 $shortoptions = 'i::';
 $longoptions = array('id::');
index 68f7e9bf758cee4d73ffde0a59b191818b188717..6dca6f75b8902cae2013777a15d7641da6c0a429 100755 (executable)
@@ -19,6 +19,8 @@
  */
 
 define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+define('STATUSNET', true);
+define('LACONICA', true); // compatibility
 
 // Tune number of processes and how often to poll Twitter
 // XXX: Should these things be in config.php?
@@ -148,9 +150,9 @@ class TwitterStatusFetcher extends ParallelizingDaemon
 
     function getTimeline($flink)
     {
-         if (empty($flink)) {
+        if (empty($flink)) {
             common_log(LOG_WARNING, $this->name() .
-                " - Can't retrieve Foreign_link for foreign ID $fid");
+                       " - Can't retrieve Foreign_link for foreign ID $fid");
             return;
         }
 
@@ -161,17 +163,24 @@ class TwitterStatusFetcher extends ParallelizingDaemon
         // to start importing?  How many statuses?  Right now I'm going
         // with the default last 20.
 
-        $token = TwitterOAuthClient::unpackToken($flink->credentials);
+        $client = null;
 
-        $client = new TwitterOAuthClient($token->key, $token->secret);
+        if (TwitterOAuthClient::isPackedToken($flink->credentials)) {
+            $token = TwitterOAuthClient::unpackToken($flink->credentials);
+            $client = new TwitterOAuthClient($token->key, $token->secret);
+            common_debug($this->name() . ' - Grabbing friends timeline with OAuth.');
+        } else {
+            $client = new TwitterBasicAuthClient($flink);
+            common_debug($this->name() . ' - Grabbing friends timeline with basic auth.');
+        }
 
         $timeline = null;
 
         try {
             $timeline = $client->statusesFriendsTimeline();
-        } catch (OAuthClientCurlException $e) {
+        } catch (Exception $e) {
             common_log(LOG_WARNING, $this->name() .
-                       ' - OAuth client unable to get friends timeline for user ' .
+                       ' - Twitter client unable to get friends timeline for user ' .
                        $flink->user_id . ' - code: ' .
                        $e->getCode() . 'msg: ' . $e->getMessage());
         }