Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/03/2013, 21:44
Samou
 
Fecha de Ingreso: junio-2009
Mensajes: 115
Antigüedad: 14 años, 10 meses
Puntos: 0
Login Twitter desde mi web

Hola, estoy integrando el login con Twitter desde mi web, para ello me baso en la libreria OAuth. El codigo me funciona bien, logro retornar los datos del usuario. El problema viene a raiz de que una vez logeado guardo el oauth_token y el oauth_token_secret para cada usuario con el fin de reutilizar estos parametros en futuras ocasiones (la intencion es que cada vez que publique un post en mi web lo pueda publicar tambien en su cuenta), sin embargo no logro que esto me funcione. Les adjunto el codigo que estoy usando para aclaros el problema.

La parte que me funciona:
Código PHP:
$tokens Zend_Session::namespaceGet('tokens');
                    
$uOauthToken $tokens['normal'];
                    
$uOauthTokenSecret $tokens['secret'];
                    
                    
$config Zend_Registry::get('config');
                    
                    
// Get consumer values
                    
$consumerKey $config->mkt->twt->consumer->key;
                    
$consumerSecret $config->mkt->twt->consumer->secret;
                    
                    
$twitterOauth = new TwitterOAuth($consumerKey
                            
$consumerSecret$uOauthToken$uOauthTokenSecret);
                    
                       
$accessToken $twitterOauth->getAccessToken($_GET['oauth_verifier']);
                    
                    
// Get user info
                    
$userInfo $twitterOauth->get('account/verify_credentials'); 
Con lo anterior logro capturar los datos del usuario (eso si, si elimino la variable accessToken deja de funcionar y no entiendo muy bien porque, ya que dicha variable no la leo nunca).

Y en otro metodo hago lo siguiente:

Código PHP:
public function posttwittermsgAction ($twitterID$msgText)
    {
$twitterOauth $this->gettwitterconnectionAction($twitterID);
 
$twitterOauth->post('statuses/update'
                array(
                        
'status' => $msgText
                
));   
}

public function 
gettwitterconnectionAction ($twitterID)
    {
        require_once (
'twitter/twitteroauth.php');
        
$users = new Model_DbTable_UsersData();
        
$tokens $users->getOAuthTokensWithTwitterUserID($twitterID);
        
        
$uOauthToken $tokens->oAuthToken;
        
$uOauthTokenSecret $tokens->oAuthTokenSecret;
        
        
$config Zend_Registry::get('config');
        
        
// Get consumer values
        
$consumerKey $config->mkt->twt->consumer->key;
        
$consumerSecret $config->mkt->twt->consumer->secret;
        
        
$twitterOauth = new TwitterOAuth($consumerKey$consumerSecret
                
$uOauthToken$uOauthTokenSecret);
        
        return 
$twitterOauth;
    } 
Pero como decia no me funciona. El caso es que quisiera saber como podria reutilizar los tokens de twitter sin tener que pasar cada vez por Twitter para recalcular estos parametros.
Muchas gracias de antemano