2015-12-03 1 views
2

Comment puis-je vérifier si l'API de diffusion en flux Twitter est connectée ou déconnectée? Y a-t-il une variable qui stocke cette information? En cas d'échec, Twitter Hosebird Client (hbc) tente en interne de se reconnecter à l'API. Cette information est enregistrée. Comment puis-je récupérer le statut de réponse de la connexion dans une variable?Twitter API HBC: indicateur permettant de vérifier l'état de la connexion de l'API de diffusion en continu

Répondre

1

Ceci est une question plutôt ancienne, mais depuis que j'ai rencontré le même problème, je voulais partager ma solution. Fondamentalement, ce que je fais écoute une exception SocketTimeoutException, et si cela se produit, je définis un booléen isConnected = false. Une fois que je reçois à nouveau des statuts, je remets ce booléen à isConnected = true. Ce n'est pas la plus jolie solution, mais ça marche. Voici mon code pour l'auditeur:

private StatusListener createListener() { 
    return new StatusListener() { 
     @Override 
     public void onStatus(Status tweet) { 
      if (!isConnected) 
       isConnected = true; 

      doSomething(tweet); 
     } 

     (...) // Other @Override functions 

     @Override 
     public void onException(Exception ex) { 
      if ((ex instanceof SocketTimeoutException) && isConnected) { 
       handleConnectionLoss(); 
       isConnected = false; 
      } else { 
       System.err.println(ex); 
      } 
     } 
    }; 
} 
+0

@Merci You PeterU –