Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement "Reply" button for Gmail Integration #4217

Open
Bonapara opened this issue Feb 27, 2024 · 12 comments
Open

Implement "Reply" button for Gmail Integration #4217

Bonapara opened this issue Feb 27, 2024 · 12 comments
Labels
good first issue Good for newcomers scope: front Issues that are affecting the frontend side only size: hours

Comments

@Bonapara
Copy link
Member

Bonapara commented Feb 27, 2024

Desired Behavior

Implement a Reply (View in Gmail) button that redirects the user from an email thread to the corresponding Gmail thread. The feature should only be available when the user is viewing a conversation in their own account.

CleanShot 2024-02-27 at 18 53 23@2x

Specs

  1. On clicking the Reply (View in Gmail) button, the user should be redirected to the corresponding email thread in their Gmail account.
  2. Use the messageThreadExternalId field from the messageChannelMessageAssociation table to retrieve the relevant email thread ID.
  3. Since there can be multiple IDs for a single thread, we must ensure to fetch the messageChannelMessageAssociation item that corresponds to the currently connected user account
  4. The URL should look like this https://mail.google.com/mail/?authuser=[connected account.handle]@gmail.com#all/[messageChannelMessageAssociation.messageThreadExternalId]
  5. Update the timeline messaging resolver accordingly. This should use the messageThreadExternalId from the messageChannelMessageAssociation table and fetch the row associated with the connected user (User->WorkspaceMember->ConnectedAccounts->Channels->MessageChannelMessageAssociations). If none is found, that means the message is visible to the connected user but has not been imported by them which means displaying a link to the box is not relevant and should be skipped.
@FelixMalfait FelixMalfait added good first issue Good for newcomers scope: front Issues that are affecting the frontend side only and removed scope: back+front Issues requiring full-stack knowledge good for experienced contributor labels Feb 28, 2024
@3llla
Copy link

3llla commented Mar 3, 2024

Hi, @Bonapara can I work on this issue?

@Bonapara
Copy link
Member Author

Bonapara commented Mar 4, 2024

Yes, thanks @3llla!

@chenterry85
Copy link

Hi, @Bonapara, can I work on this issue? I am confident I can complete this feature.

@Bonapara
Copy link
Member Author

Sure, thanks for contributing @chenterry85! 🙏

@chenterry85
Copy link

chenterry85 commented May 25, 2024

hey @Bonapara, am I suppose to setup a demo account using my email in order to test out the reply feature? since the demo account (tim@apple.dev) has no outgoing email threads from this account. I am a bit unsure of the environment setup for testing this feature.

@Bonapara
Copy link
Member Author

Hi @chenterry85 I think so! @bosiraphael to confirm :)

@bosiraphael
Copy link
Contributor

Hey @chenterry85! You have to create a project on the google cloud console, activate the gmail and calendar apis, and update the credentials in the .env file. After that, you will be able to connect your account on twenty locally and import your emails. Tell me if you have any other questions :)

@chenterry85
Copy link

Hi @bosiraphael, thanks for all the instructions! I followed and updated all my credentials on .env, however, I couldn't create a new twenty account with my personal email without paying the $9 monthly fee. Is there anyway to bypass that?

@bosiraphael
Copy link
Contributor

You should only have the subscription popup in production. Are you sure that you opened the app on localhost?

@chenterry85
Copy link

chenterry85 commented May 28, 2024

@bosiraphael, oh yes I was in production because there was no way to "sign up" a new gmail account on localhost. Is there any other way to sign up?

@bosiraphael
Copy link
Contributor

Hey @chenterry85, you don't need to sign up with a google account to test the feature, just create an account normally, or use the Tim Apple one, and go to connected accounts tab in the settings. There you can connect your google account :)

@Bonapara
Copy link
Member Author

Bonapara commented Jul 2, 2024

Hi @chenterry85, I'm unassigning you since it's been a month. Ping me if you still want it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers scope: front Issues that are affecting the frontend side only size: hours
Projects
Status: 🆕 New
Development

No branches or pull requests

5 participants