【问题标题】:twitter API identify users with direct messaging enabledtwitter API 识别启用了直接消息传递的用户
【发布时间】:2016-06-26 18:14:13
【问题描述】:

我正在尝试使用 twitter4j(在 Java 中)来获取关注某个特定用户的用户列表,该用户恰好启用了直接消息传递。像这样的……

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();              
}

唯一的问题是我找不到任何与 twitter4j.User 对象相关的听起来合适的属性(并且在 API 文档中也找不到任何对它的引用)。有谁知道是否有某种方法可以以编程方式找到这些类型的用户?又或许是 twitter 故意将其排除在外?感谢您的任何想法。

--------编辑-----

Yuri 的文档链接让我看到了一位 Twitter 员工的回复:“无法通过公共 API 确定用户是否接受所有人的 DM。如果您是值得信赖的合作伙伴,请通过您的直接 Twitter 联系人联系细节。” (https://twittercommunity.com/t/how-can-i-tell-which-users-the-current-user-can-send-messages-to/36127/4)

还注意到可以使用“AccountSettings.getAccountSettings().allow_dms_from”获取已通过身份验证的用户的 DM 状态

【问题讨论】:

    标签: java twitter twitter4j


    【解决方案1】:

    这里有讨论

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

    显然有一个您可以申请的访问白名单。

    但是,您似乎拥有所需的一切。关注您帐户的用户通常已经可以收到您的 DM。这不包括用户首先向您发送 DM 或接受来自任何人的 DM 的情况。

    但尝试发送和检查故障可能是最简单的。

    【讨论】:

    • 谢谢尤里,接受这个作为答案,并在我阅读您的链接和一些额外评论后发现的帖子中添加更多信息
    猜你喜欢
    • 2019-02-21
    • 1970-01-01
    • 2012-02-09
    • 1970-01-01
    • 2017-05-22
    • 1970-01-01
    • 2015-09-15
    • 2020-05-01
    • 1970-01-01
    相关资源
    最近更新 更多