Skip to content

⚡ Write a textToSpeech() Function using Swift #4157

@PineappleIOnic

Description

@PineappleIOnic

💭 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 textToSpeech() function using Swift. 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

Generate spoken audio from a written text. Introduce support for google, aws, as well as azure APIs. If necessary, introduce their secret keys as function variables. Provider to use, language, and a text to convert into audio should be received as payload, and an audio version should be returned in base64 format. If no language is provided, the language should be automatically figured out (if possible). Please use iso639-2 format for language codes.

Example function payload:

{"provider":"aws","language":"en","text":"Hello world."}

Successful function response:

{"success":true,"audio":"iVBORw0KGgoAAAANSUhEUgAAAaQAAALiCAY...QoH9hbkTPQAAAABJRU5ErkJggg=="}

Error function response:

{"success":false,"message":"Target language does not exist in iso639-2 format."}

🎯 Requirements

  • Experience with Appwrite.
  • Experience with Swift.
  • Knowledge to implement textToSpeech function.
  • Experience with Docker.

✅ Task Summary

  • Ask to be assigned to the issue.
  • Implement function textToSpeech() in Swift/ 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!

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions