Skip to content

Twitter Integration: Build a Simple Plugin to render twitter URLs posted in channels #1

@aaronrothschild

Description

@aaronrothschild

(NOTE: I have broken this ticket down into multiple tickets in this repo)

Create a Twitter Plugin that renders previews of Twitter URL links posted into Mattermost (***)

Problem:

  • Twitter no longer provides Opengraph data on it’s pages, so rendering a preview of a tweet when someone posts a twitter URL into a channel - is no longer possible.
  • Twitter requires vendors to use their APi to get the tweet data, then render it in the Channel.

Create a twitter plugin that will:

  • Authenticate with a Twitter account using Oauth. (Not just a twitter API key, the user should be able to login)
  • Render a URL preview whenever a tweet URL is posted in any channel
  • Provide a tooltip hover that shows a simple rendering of a tweet when the mouse is hovered over any tweet URL in Mattermost
  • Allow a user to monitor the associated twitter account and post any new tweets FROM/TO that account into a channel of the user’s choice.
  • Allow the user to specify which tweets will get posted to the channel from a checkbox of options.
    • Options: (Only post messages sent TO the account, Only Messages sent FROM the account, or Both sent/received messages)
      - Option to Include @mentions of the account (checkbox)
      - Include in the incoming message the name of the twitter account it is posting.
  • Ideally render the post so that it works on both desktop and mobile clients

You can use an older plugin by @bwesterb for inspiration https://github.com/bwesterb/twittermost and we have the starter plugin template located here: https://github.com/mattermost/mattermost-plugin-starter-template. Create a new Repo from this starter template and we'll work on the project there.

Jira Ticket: https://mattermost.atlassian.net/browse/MM-25940

cc @hanzei

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions