2016-06-24 16 views
0

Ich versuche, twitter4j (in Java) zu verwenden, um die Liste der Benutzer nach einem bestimmten Benutzer zu greifen, die zufällig Direct Messaging aktiviert haben. So etwas wie dies ...twitter API identifizieren Benutzer mit Direct Messaging aktiviert

IDs followerIDs = twitter.getFollowersIDs(someTwitterScreenName, -1); 
long[] ids = followerIDs.getIDs(); 
for (long id : ids) { 

    twitter4j.User user = twitter.showUser(id); 

    String userScreenName = user.getScreenName(); 
    String realName = user.getName(); 

    //I'm hoping for something like... 
    ///Boolean directMessagingEnabled = user.messagingEnabled();    
} 

Das einzige Problem ist, dass ich keine Attribute im Zusammenhang mit dem twitter4j.User Objekt finden kann, die geeignet klingen (und kann auch nicht einen Hinweis auf mich in der API-Dokumentation finden). Weiß jemand, ob es eine Möglichkeit gibt, diese Arten von Benutzern programmgesteuert zu finden? Oder hat twitter das bewusst ausgeschlossen? Danke für irgendwelche Gedanken.

------ ----- EDIT

Die Dokumentation Link von Yuri führte mich auf diese Antwort von einem twitter Mitarbeiter: „Die Bestimmung, ob ein Benutzer DMs von allen akzeptiert, ist über die Öffentlichkeit nicht zugänglich API. Wenn Sie ein vertrauenswürdiger Partner sind, wenden Sie sich bitte direkt an Ihre Twitter-Kontakte. " (https://twittercommunity.com/t/how-can-i-tell-which-users-the-current-user-can-send-messages-to/36127/4)

auch bemerkt, dass es möglich ist, den DM-Status für eine bereits authentifizierte Benutzer erhalten mit "AccountSettings.getAccountSettings(). Allow_dms_from"

Antwort

1

Dies wird hier diskutiert

https://dev.twitter.com/rest/reference/post/direct_messages/new

Es gibt anscheinend eine Whitelist für den Zugang, für den Sie sich bewerben können.

Es scheint jedoch, dass Sie meistens alles haben, was Sie brauchen. Die Benutzer, die Ihrem Konto folgen, können in der Regel bereits DMs von Ihnen erhalten. Dies gilt nicht für die Fälle, in denen der Nutzer Sie entweder zuerst mit DM bediente oder DM von jedem annahm.

Es ist jedoch wahrscheinlich am einfachsten zu versuchen, die Fehler zu senden und zu überprüfen.

+0

Danke Yuri, dies als die Antwort akzeptieren, und fügen Sie ein wenig mehr Informationen zu meinem Beitrag, die ich gerade nach dem Lesen durch Ihren Link und einige zusätzliche Kommentare gefunden – d3wannabe