Metadata-Version: 2.1
Name: bcts-telliotfeeds
Version: 1.0.2
Summary: Tools for interacting with Tellor Protocol smart contracts.
Author: Blockchain Trust Solutions AG
License: MIT
Keywords: oracle,ethereum,blockchain
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Mathematics
Classifier: Topic :: System :: Networking
Classifier: Topic :: Office/Business :: Financial
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.9
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: aiohttp ==3.8.3
Requires-Dist: aiosignal ==1.2.0
Requires-Dist: async-timeout ==4.0.2
Requires-Dist: attrs ==22.1.0
Requires-Dist: base58 ==2.1.1
Requires-Dist: bitarray ==2.6.0
Requires-Dist: certifi ==2022.9.24
Requires-Dist: chained-accounts ==0.0.1
Requires-Dist: charset-normalizer ==2.1.1
Requires-Dist: clamfig ==0.1.3
Requires-Dist: click ==8.1.3
Requires-Dist: cytoolz ==0.12.0
Requires-Dist: eth-abi ==2.2.0
Requires-Dist: eth-account ==0.5.9
Requires-Dist: eth-hash ==0.5.0
Requires-Dist: eth-keyfile ==0.5.1
Requires-Dist: eth-keys ==0.3.4
Requires-Dist: eth-retry ==0.1.13
Requires-Dist: eth-rlp ==0.2.1
Requires-Dist: eth-typing ==2.3.0
Requires-Dist: eth-utils ==1.9.5
Requires-Dist: frozenlist ==1.3.1
Requires-Dist: hexbytes ==0.3.0
Requires-Dist: idna ==3.4
Requires-Dist: ipfshttpclient ==0.8.0a2
Requires-Dist: jsonschema ==3.2.0
Requires-Dist: lru-dict ==1.1.8
Requires-Dist: multiaddr ==0.0.9
Requires-Dist: multicall ==0.7.0
Requires-Dist: multidict ==6.0.2
Requires-Dist: netaddr ==0.8.0
Requires-Dist: parsimonious ==0.8.1
Requires-Dist: protobuf ==3.20.3
Requires-Dist: pycryptodome ==3.15.0
Requires-Dist: pyrsistent ==0.19.2
Requires-Dist: python-dateutil ==2.8.1
Requires-Dist: python-dotenv ==0.21.0
Requires-Dist: PyYAML ==6.0
Requires-Dist: requests ==2.28.1
Requires-Dist: rlp ==2.0.1
Requires-Dist: simple-term-menu ==1.5.2
Requires-Dist: six ==1.16.0
Requires-Dist: bcts-telliotcore ==1.0.2
Requires-Dist: toolz ==0.12.0
Requires-Dist: typing-extensions ==4.4.0
Requires-Dist: urllib3 ==1.26.12
Requires-Dist: varint ==1.0.2
Requires-Dist: web3 ==5.28.0
Requires-Dist: websockets ==9.1
Requires-Dist: yarl ==1.8.1

## Background

Reporting tools and datafeeds for Tellor oracles.

The package `telliot-feeds` version `0.1.14` forked from:<br />
https://github.com/tellor-io/telliot-feeds

## Initial Setup

### Prerequisites
The following tools are expected to be installed on your system to run this project:

- Python 3.9.x
- Pip 23.3.x
- Git

### Setup

```bash
python3.9 -m venv tenv
source tenv/bin/activate
pip3.9 install .
```

### Test

Install development requirements:
```bash
pip3.9 install -r requirements-dev.txt
```

Run automated testing in all environments:
```bash
tox
```

Run `py39` testing:
```bash
tox -e py39
```

Run `style` testing:
```bash
tox -e style
```

Run `typing` typing:
```bash
tox -e typing
```

### Publish

1. Create the `$HOME/.pypirc` file:
```
[pypi]
  username = __token__
  password = pypi-AgEIcHlw... (your PyPI token)
```

2. Build distribution:
```bash
python3.9 -m build
```

3. Deploy distribution to PyPI repository:
```bash
twine upload dist/*
```

## Usage

### Using Docker

1. Create & start container in the background:
```bash
docker compose up -d
```

2. Execute commands in a running Docker container:
```bash
docker exec -it telliot sh
```

### Configuration

1. Create the default configuration files:
```bash
telliot config init
```

The default configuration files are created in a folder called `telliot` in the user's home folder.

2. View your current configuration:
```bash
telliot config show
```
### Using Telliot

1. Add Reporting account:
```bash
telliot account add fantomacct1 5d18c4aabe8f0ee841e2e0ee504c7d9ec98d2aa9edb2e44d5e8825ec0670f896 4002
```

2. Check Reporting account:
```bash
telliot account find
```

3. Using StakingToken smart contract address provided below, mint 1000 TTRB tokens to the `fantomacct1` account:<br />
`0x8e4E5eDab27Df5a93B25AC3a62b80beec1CfEBd0`


4. Report data with the `fantomacct1` account to the Tellor Oracle:
```bash
telliot report -a fantomacct1 -ncr -qt trb-usd-spot
```

## Contributing

Bug reports and pull requests are welcome on GitHub at:<br />
https://github.com/SELISEdigitalplatforms/l3-solidity-bcts-tellor
