mod_http_upload_external backend implementation on Cloudflare Workers with S3 support, compatible with Prosody and eJabberd
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Peter Cai 9687f30b6a add examples and README 1 week ago
src handleGET: hide S3 bucket responses 1 week ago
.gitignore add examples and README 1 week ago
README.md add examples and README 1 week ago
config.example.json add examples and README 1 week ago
hmac_sha256.py implement v2 signature verification 1 week ago
package-lock.json package.json: make license AGPL-3.0 1 week ago
package.json use BUILD_ENV instead of NODE_ENV 1 week ago
webpack.config.js use BUILD_ENV instead of NODE_ENV 1 week ago
wrangler.example.toml add examples and README 1 week ago

README.md

This is a mod_http_upload_external-compatible XEP-0363 file server for Prosody and eJabberd implemented on Cloudflare Workers with S3-compatible backend support.

To use it, you need to fill in config.prod.json using config.example.json as a template, and then create wrangler.prod.toml based on wrangler.example.toml. Most of the fields should be pretty self-explanatory. To publish it to your Cloudflare account, run npm run publish-prod.

To configure eJabberd to use the endpoint exposed by this service, add

  mod_http_upload:
    put_url: https://<worker_url>/
    get_url: https://<worker_url>/
    external_secret: <secret_in_config_json>

to ejabberd.yaml.