Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ravgeetdhillon/dropilio
A REST API service for sending local attachments with Twilio Whatsapp API.
https://github.com/ravgeetdhillon/dropilio
dropbox-api heroku php rest-api twilio-api twilio-whatsapp twiliohackathon whatsapp-api
Last synced: about 2 months ago
JSON representation
A REST API service for sending local attachments with Twilio Whatsapp API.
- Host: GitHub
- URL: https://github.com/ravgeetdhillon/dropilio
- Owner: ravgeetdhillon
- License: mit
- Created: 2020-04-26T09:53:15.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-04-19T21:17:14.000Z (over 1 year ago)
- Last Synced: 2024-05-02T03:15:44.808Z (8 months ago)
- Topics: dropbox-api, heroku, php, rest-api, twilio-api, twilio-whatsapp, twiliohackathon, whatsapp-api
- Language: PHP
- Size: 1.14 MB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Dropilio
[![Actions Status](https://github.com/ravgeetdhillon/dropilio/workflows/Keep%20Alive/badge.svg)](https://github.com/ravgeetdhillon/dropilio/actions)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/ravgeetdhillon/dropilio/blob/master/LICENSE)## About
Dropilio is a REST API service for sending local files as attachments with Twilio Whatsapp API. This leverages the use of Twilio Whatsapp API for Desktop applications such as those built in Electron, GTK, etc.
### How it works
If you are working on a Desktop application, and you want to send a Whatsapp message along with attachments using Twilio Whatsapp API, you must include a link to that attachment as a media resource. For this, your attachment must be somewhere on the Internet. Dropilio solves this problem by uploading your attachment to your Dropbox account and then gets a temporary link that can be used by the Twilio Whatsapp API.
## Features
- Host on your own **Cloud** platform
- **Lightweight** with little bundle size
- Plugin-and-Play as it comes with **REST API**
- **Authentication** using Hash keys
- **Manage dependencies** using Composer
- **One-click deploy** button for Heroku## How to use it
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)
You can deploy Dropilio directly on [Heroku](https://www.heroku.com/) and start using the service within a minute.
## Set up
### Requirements
- [PHP](https://www.php.net/)
- [Composer](https://getcomposer.org/)
- [A Twilio account](https://www.twilio.com)
- [A Dropbox account](https://www.dropbox.com)### App Settings
To set up the app properly, you need Twilio and Dropbox credentials. Collect all the config values we need to run the application:
| Config Value | Description |
| - | - |
| Twilio Account Sid | Your primary Twilio account identifier - find this [in the console](https://www.twilio.com/console). |
| Twilio Auth Token | Used to authenticate - find this [in the console](https://www.twilio.com/console). |
| Twilio Phone Number | Your registered Twilio phone number. You can get it at https://twilio.com/console" |
| Dropbox App Key | Your primary Dropbox app identifier - find this [in the console](https://www.dropbox.com/developers/apps). |
| Dropbox App Secret | Your primary Dropbox app secret - find this [in the console](https://www.dropbox.com/developers/apps). |
| Dropbox App Token | Your primary Dropbox app authentication - find this [in the console](https://www.dropbox.com/developers/apps). |
| Dropilio App Key | Used to authenticate the requests (Self-generated) Use your own or browse to https://www.ravgeet.dev/projects/dropilio for more information |### Local development
After the above requirements have been met:
1. Clone this repository and `cd` into it
```bash
git clone https://github.com/ravgeetdhillon/dropilio.git
cd dropilio
```2. Install dependencies
```bash
composer install
```3. Set your environment variables
4. Run the web app on your localhost
**That's it!**
## Contributing
Dropilio is open source and welcomes contributions. Read our [contribution guidelines](https://github.com/ravgeetdhillon/dropilio/blob/master/CONTRIBUTING.md) before filing any issur or submitting a pull request. All contributions are subject to our [Code of Conduct](https://github.com/ravgeetdhillon/dropilio/blob/master/CODE_OF_CONDUCT.md).
## License
[MIT](https://github.com/ravgeetdhillon/dropilio/blob/master/LICENSE)
## Disclaimer
No warranty expressed or implied. Software is as-is. This project was originally developed by [Ravgeet Dhillon](https://ravgeet.dev). For more information regarding the project, visit the [official project page](https://www.ravgeet.dev/projects/dropilio).