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

⚡ Write a sendMessage() Function using Java #3959

Closed
4 tasks
christyjacob4 opened this issue Sep 29, 2022 · 14 comments
Closed
4 tasks

⚡ Write a sendMessage() Function using Java #3959

christyjacob4 opened this issue Sep 29, 2022 · 14 comments
Assignees
Labels
good first issue Good for newcomers product / functions Fixes and upgrades for the Appwrite Functions.

Comments

@christyjacob4
Copy link
Member

💭 Introduction

Appwrite Functions allow you to extend and customize your Appwrite server functionality by executing your custom code 🤩 You can learn more in our official Appwrite Functions docs.

The backbone of Appwrite Functions is Open Runtimes, an environment for serverless cloud computing. Since all Open Runtime functions are valid Appwrite functions, we are looking for contributors to extend the Open Runtimes Examples repository.

Your task is to implement sendMessage() function using Java. Please make sure to look at existing function examples and use them as a template for your function. This will help you keep the proper structure as well as provide information on how to test the function.

⚡ Function Details

The function must send a message using a specific channel to a receiver. Make sure to introduce function variables as necessary regarding connection to 3rd party services. Supported channels must be Email, SMS, Discord, and Twitter.

Example function payload:

{"type":"SMS","receiver":"+123456789","message":"Programming is fun!"}

Successful function response:

{"success":true}

Error function response:

{"success":false,"message":"Receiver not in correct format."}

🎯 Requirements

  • Experience with Appwrite.
  • Experience with Java.
  • Knowledge to implement sendMessage function.
  • Experience with Docker.

✅ Task Summary

  • Ask to be assigned to the issue.
  • Implement function sendMessage() in Java/ folder.
  • Manually execute the newly implemented function to ensure it works.
  • Submit a pull request in open-runtimes/examples and include screenshots of successful execution.

If you have questions, need any help, or just want to hang out, make sure to join us on our Discord server.

Happy Appwriting!

@christyjacob4 christyjacob4 added feature product / functions Fixes and upgrades for the Appwrite Functions. good first issue Good for newcomers hacktoberfest Issues that can win you some cool swags! labels Sep 29, 2022
@SaurabhNandy
Copy link

Hey @christyjacob4, I would like to work on this!

@ShubhamSinghgit
Copy link

I would like to work on this issue

@BabbarRaghav
Copy link

Hey, @christyjacob4, I would like to work on this!

@stnguyen90
Copy link
Contributor

@SaurabhNandy, thanks for your interest! 🙏 Happy hacking!

@ShubhamSinghgit, @BabbarRaghav, we're assigning people on a first come first serve basis. If @SaurabhNandy isn't able to complete this, we'll reassign accordingly. Feel free to find another hacktoberfest issue!

@BabbarRaghav
Copy link

@SaurabhNandy all the best buddy I hope you will be able to complete this issue.

@MiyuruAmarasiri
Copy link

Dear @ShubhamSinghgit , I would like to contribute to this issue, can you please assign it to me?

@Meldiron
Copy link
Contributor

Meldiron commented Oct 4, 2022

@Miyuru-Bhashitha-amarasiri , we're assigning people on a first come first serve basis. If @ShubhamSinghgit isn't able to complete this issue, we'll reassign accordingly. In the meantime, you can find another hacktoberfest issue via our website.

@anushagupta1312
Copy link

Hey I would like to work on this issue. Can you please assign me this?

@stnguyen90
Copy link
Contributor

@anushagupta1312, we're assigning people on a first come first serve basis. If @ShubhamSinghgit isn't able to complete this issue, we'll reassign accordingly. In the meantime, you can find another hacktoberfest issue via our website.

@stnguyen90 stnguyen90 removed the hacktoberfest Issues that can win you some cool swags! label Nov 7, 2022
@zvikfir
Copy link

zvikfir commented Mar 12, 2023

@stnguyen90 Can I work on this issue?

@stnguyen90
Copy link
Contributor

@zvikfir, assigned! Thanks for your interest! 🙏🏼

zvikfir added a commit to zvikfir/examples that referenced this issue Mar 15, 2023
+ tweeter implementation is missing.

relates to issue appwrite/appwrite#3959
@zvikfir
Copy link

zvikfir commented Mar 16, 2023

I have implemented 3 of the 4 requests.

I have checked that the Discord request works using a private discord server.

However, checking the requests to Mailgun and Twilio is more difficult since I need an account with a token, and it requires credit card details as well.

What should I do about it?

Moreover, the Twitter request requires to generate an Oauth token, which is easiest with the Twitter SDK.

Does it matter which library I choose? Do you have a policy about it?

Here's the list I found:

https://developer.twitter.com/en/docs/twitter-api/tools-and-libraries/v2

@stnguyen90
Copy link
Contributor

stnguyen90 commented Mar 17, 2023

@zvikfir,

However, checking the requests to Mailgun and Twilio is more difficult since I need an account with a token, and it requires credit card details as well.

What should I do about it?

You can assume it will work if the keys are correct. Just make sure you add error handling, so there is a helpful error message.

Moreover, the Twitter request requires to generate an Oauth token, which is easiest with the Twitter SDK.

Does it matter which library I choose? Do you have a policy about it?

Official Twitter SDK would be best.

@eldadfux
Copy link
Member

Thank you everyone for celebrating Hacktoberfest 22 with us! This issue will now be closed as we're getting ready to celebrate Hacktoberfest 23.

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 product / functions Fixes and upgrades for the Appwrite Functions.
Projects
None yet
Development

No branches or pull requests

10 participants