Как получить доступ к разговору по истории твитов с помощью TweetSharp?

Я пытаюсь получить доступ к истории разговоров в Твиттере, используя TweetSharp.

Требование таково: если я использую идентификатор одного элемента твита, он должен вернуть мне весь поток, который следовал до этого элемента твита.

Но не смог найти такой метод, выставленный через TwittertService, где я могу передать текущий Tweet _id и получить детали беседы.

Я использовал следующий подход, чтобы получить коллекцию (список), т.е.

List<TwitterStatus> list = new List<TwitterStatus>();


private void GetReplied(TwitterStatus twitter, TwitterResponse twitterResponse)
{
    if (twitter.InReplyToStatusId != null)
    {
        long statusID = (long)twitter.InReplyToStatusId;
        this.ts.GetTweet(statusID, (twitterRecursive,
                                    twitterResponseRecursive) =>
                                    {
                                        list.Add(twitterRecursive);
                                        if (twitter.InReplyToStatusId != null)
                                        {
                                            this.GetReplied(twitterRecursive,
                                                            twitterResponseRecursive);
                                        }
                                    });
    }
    else
    {
        Debug.WriteLine(list.Count);
        foreach (TwitterStatus status in list)
        {
            Debug.WriteLine(status.Text);
        }
    }
}

this.ts.GetTweet(<tweet Id>, twitterResponse) =>
{
        list.Add(twitter);
        this.GetReplied(twitter, twitterResponse);
});

Просто хотел получить твой совет по этому поводу. Есть ли у нас такой метод с TweetSharp или альтернативный подход может быть реализован?

Очень ценю вашу помощь.

1 ответ

Да, вот как вы должны это сделать: начать с твита и пройти его in_reply_to_status_id цепь.

Единственное, что я делаю, хотя это может быть неприменимо к вам, - это проверяю локальный кеш твитов перед загрузкой из Твиттера, чтобы узнать, получал ли я уже полученный ответ.

Что касается библиотек, которые делают это проще, я не знаю ни одной. Независимо от того, предоставляют ли они более оптимизированный метод, под прикрытием им все равно придется выполнять процесс, который вы реализовали в своем коде.

Чтобы увидеть, как другая библиотека подошла к этой задаче, взгляните на этот пример Twitterizer.

Другие вопросы по тегам