Metadata-Version: 2.1
Name: parrot-feeder
Version: 0.7.0
Summary: Advanced multi-channel file-sharing tool
Home-page: https://github.com/le-p0pug-labs/parrot-feeder
Author: LE POPUG
Author-email: fixions@protonmail.com
Project-URL: Bug Reports, https://github.com/le-p0pug-labs/parrot-feeder/issues
Project-URL: Source, https://github.com/le-p0pug-labs/parrot-feeder
Keywords: file-sharing,ngrok,flask
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: Other Audience
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: >=3.6, <4
Description-Content-Type: text/markdown
License-File: LICENSE

## General Information

See also:
- https://hub.docker.com/r/lep0puglabs/parrot-feeder
- https://pypi.org/project/parrot-feeder/

Parrot-feeder is an all-in-one combination of the following tools:

- https://github.com/cyberhexe/ngflask
- https://github.com/mtalimanchuk/flask-filebox
- https://github.com/mtalimanchuk/file-squire-bot

When you use parrot-feeder, it starts sharing files from the current directory if no `-d` flas has been specified.
It also exposes an HTML page for uploading files to the remote machine under the `/api/upload` path.

Finally, if you supply a telegram bot token via the `--telegram-bot-token` argument or 
via the `TELEGRAM_BOT_TOKEN` arguments, 
you will also activate a telegram bot that will `/fetch` or `/tail` files for you.
*Note: you also need to supply the `--telegram-bot-whitelist` or `TELEGRAM_BOT_WHITELIST` 
to specify the users allowed to interact with the bot.*
*Note: you may need to sign up for Ngrok for tunneling HTML pages.*

## Installation

Build the Docker image:

```bash
docker build -t parrot-feeder -f ./Dockerfile .
```

Run the Docker image:

```bash
docker run --rm -it -p 4200:4200 parrot-feeder
```

Or install the package using PyPI:

```bash
pip3 install parrot-feeder
```

After starting the server, you can navigate to the following URLs:

- / - for seeing the listing
- /api/upload - for access the API for uploading files

## Usage

Serve files and folder from the current working directory 

`parrot-feeder`

Serve files and folders from the /tmp directory 

`parrot-feeder --directory /tmp`

Print served files to the console on startup 

`parrot-feeder --directory /tmp -pf`

Bind the server to a specific address 

`parrot-feeder --ip 10.10.10.10 --port 5050`

Print help

`parrot-feeder -h`

On startup print the actual files being shared over Ngrok

`parrot-feeder -pf`

Use a telegram bot to serve you files from the remote server:

`parrot-feeder --telegram-bot-token token --telegram-bot-whitelist username1,username2`
