Skip to content
This repository was archived by the owner on Aug 7, 2024. It is now read-only.
This repository was archived by the owner on Aug 7, 2024. It is now read-only.

New Direct Message endpoint needs to be implemented #587

Description

@melyux

Twitter deprecated the old direct message endpoints on September 17, 2018 (3 days ago) after warning about it in July. (see this link: https://twittercommunity.com/t/details-and-what-to-expect-from-the-api-deprecations-this-week-on-august-16-2018/110746)

Does Python Twitter yet support the new endpoints for it? (https://developer.twitter.com/en/docs/direct-messages/sending-and-receiving/guides/direct-message-migration)

Using the PostDirectMessage function right now results in "Sorry, that page does not exist." error 34 from Twitter.

Activity

  1. webtweakers commented on Sep 20, 2018

    @webtweakers
    Contributor

    I'm having the same issue, found the same cause, was looking for the same reason...

  2. at0m1sk commented on Sep 21, 2018

    @at0m1sk

    #579

    There is a pull request that seems to integrate new endpoint. Request is from Aug 2018.

  3. spacecab07 commented on Sep 26, 2018

    @spacecab07

    Any idea on when this might get resolved?

  4. jmingtan commented on Sep 28, 2018

    @jmingtan
    Contributor

    Yes the version in the pull request is working for us. There are breaking changes to the function though, which is forced by Twitter's changes in the new direct message endpoint. Probably the biggest change is that screen name is no longer supported as a parameter, so we need to call api.GetUser first to get the user id.

  5. ganmedia commented on Sep 29, 2018

    @ganmedia

    Any news about this? When will the pull request be integrated?

  6. bear commented on Sep 29, 2018

    @bear
    Owner

    i'll look at this now

  7. jeremylow commented on Sep 29, 2018

    @jeremylow
    Collaborator
  8. bear commented on Sep 29, 2018

    @bear
    Owner

    @jeremylow do you want me to merge this to the master and bump the version to 3.6 since it's fixing a broken twitter?

  9. jeremylow commented on Sep 29, 2018

    @jeremylow
    Collaborator
  10. bear commented on Sep 29, 2018

    @bear
    Owner

    @jeremylow I think I can make the method signature stay the same to reduce the impact - if screen_name is nil then make the call, if not use it

    ok, i'll merge the PR and see if that fixes things

  11. bear commented on Sep 29, 2018

    @bear
    Owner

    I think I have it working and i've tagged a pre-release for v3.5

    Can you all give this a go and see if it works - i'll hold off pushing this to PyPI until someone sanity checks it

  12. webtweakers commented on Sep 30, 2018

    @webtweakers
    Contributor

    Thanks for picking this up. I've checked the v3.5 release and now things work again, as expected! Looking good from my side.

  13. ganmedia commented on Sep 30, 2018

    @ganmedia

    Version 3.5 checked and everything working with no problems.
    Great job.

  14. jeremylow commented on Sep 30, 2018

    @jeremylow
    Collaborator

    Good to go from me!

  15. kennethdamica commented on Oct 2, 2018

    @kennethdamica

    PostDirectMessage works for me now, but I'm still getting error 34 for GetDirectMessages and GetSentDirectMessages. Looks like these endpoints have been collapsed into "GET direct_messages/events/list". Is this supposed to work in 3.5?

  16. spacecab07 commented on Oct 4, 2018

    @spacecab07

    Sorry if this is a noob question. So, i need the user_id of the recipient of the DM?

  17. jeremylow commented on Oct 4, 2018

    @jeremylow
    Collaborator

    @spacecab07 if you don’t supply it, the api will attempt to look up the user id from the screen name.

  18. spacecab07 commented on Oct 4, 2018

    @spacecab07

    @jeremylow so should be ok to leave as 'user_id=None, screen_name=twitter_handle' ?

  19. webtweakers commented on Oct 4, 2018

    @webtweakers
    Contributor

    @spacecab07 Yes, I have already confirmed that this works well - also check the code change. The API needs to make an extra call to Twitter now, so it is probably wise to retrieve and store the user_id in your own application once and use that at every DM post.

  20. spacecab07 commented on Oct 4, 2018

    @spacecab07

    @webtweakers ok, thanks .

  21. at0m1sk commented on Oct 14, 2018

    @at0m1sk

    PostDirectMessage works for me now, but I'm still getting error 34 for GetDirectMessages and GetSentDirectMessages. Looks like these endpoints have been collapsed into "GET direct_messages/events/list". Is this supposed to work in 3.5?

    Same here, I am at 3.5 can't GET , error 34 for GetDM and GetSentDM

  22. MHlinux commented on Oct 27, 2018

    @MHlinux

    Have the same PostDirectMessage issue and still do not get it done
    api.PostDirectMessage(directmsg, user_id="xxx")
    api.PostDirectMessage(directmsg, screen_name="xxx")

    But all other works fine like
    api.GetFriends(screen_name="xxx")
    api.GetFriends(user_id="xxx")

    So what else do I have to do in addition for direct mesages ???

    Update:
    Fix is not official released thus pip install does not work !
    Download and install from local file system - now it's working again :-)
    Many Thanks !!!

  23. LuccoJ commented on Nov 2, 2018

    @LuccoJ

    Could this please be made a priority for pushing a release to Pypi? Currently, according to what I've been able to figure out, there is no Twitter wrapper in Pypi that actually supports direct messages. I assume there's a number of applications that are badly broken by this and not just mine.

  24. Artfulme commented on Nov 2, 2018

    @Artfulme

    Hi, backing up @LuccoJ on this one, you're just one signature way from releasing the working code to pypi. Don't want to be pushy either, I have much respect for all the work you guys put in to maintain the code, but I have been following this thread since its inception and working direct messages can't come soon enough.

  25. jeremylow commented on Nov 2, 2018

    @jeremylow
    Collaborator

    My apologies y'all; been a draining couple weeks. I thought the release had been uploaded to PyPI. I'll take care of it this weekend.

  26. jeremylow commented on Nov 3, 2018

    @jeremylow
    Collaborator

    3.5 is now on pypi.

  27. Artfulme commented on Nov 3, 2018

    @Artfulme

    Thanks!

  28. pacu commented on Aug 5, 2019

    @pacu

    I'm using 3.5 and I'm still getting the error 34. I also tried to install from github with same results. Am I'm missing something? How can I help?

  29. JunksFiPenny commented on Aug 23, 2019

    @JunksFiPenny

    Started getting this error message last week, and as a relative noob to how the Twitter module work, am having issues figuring out if the problem is same as above. No changes were made to code, no updates to module etc; simply stopped working...

    Seems like line 3044 is else line in following statement:

    `if return_json:
    return data
    else:
    return [DirectMessage.NewFromJsonDict(x) for x in data]

    `

    Capture

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions