bwb
Project description
bwb
bot with bot.
Usage
Install with pip install --upgrade bwb
.
# Import one of:
from bwb.tanner import bwb
from bwb.jason import bwb
from bwb.tdev import bwb
from bwb.molly import bwb
Handshaking
Boot up:
client.send_message(BOT_WITH_BOT, '000000init ' + bwb.init())
On 000000init [data]
:
client.send_message(BOT_WITH_BOT, '000000handshake ' + bwb.handshake(data))
On 000000handshake [data]
:
client.send_message(BOT_WITH_BOT, bwb.wrap('secret ' + bwb.secret(data)))
bwb.set_otp(bwb.init_secret)
On OTP authed 123456secret [data]
:
bwb.set_secret(data)
client.send_message(BOT_WITH_BOT, bwb.wrap('🤝'))
On OTP authed 123456🤝
:
client.send_message(BOT_WITH_BOT, '🤝')
Interaction
Run every incoming message through bwb.parse()
since it's inexpensive. This will decrypt and remove base58 encoding.
Once decoded, send it through bwb.check_auth()
which will return True
or False
if the code is valid.
Example:
text = bwb.parse(text)
if text.startswith('!'):
...
elif text.startswith('000000'):
text = text[6:]
elif bwb.check_auth(text):
authed = True
text = text[6:]
else:
return
Use bwb.wrap()
to auth and encode outgoing commands.
Params:
wrap(text, target=None, b58=False, enc=False)
Examples:
out = bwb.wrap('ping') # broadcast all bots
out = bwb.wrap('ping', target=TANNER) # auth for Tannerbot
out = bwb.wrap('ping', target=JASON, enc=True) # base58 encrypt
out = bwb.wrap('ping', target=MOLLY, b58=True) # base58
Development
Setup
Clone the repo.
To test your changes:
pip install --upgrade ~/path/to/bwb
Deployment
Install setuptools:
python3 -m pip install --user --upgrade setuptools wheel
- Increment version number in
setup.py
Build and upload:
bash build-upload.sh
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
bwb-2.0.0.tar.gz
(3.7 kB
view details)
Built Distribution
bwb-2.0.0-py3-none-any.whl
(4.6 kB
view details)
File details
Details for the file bwb-2.0.0.tar.gz
.
File metadata
- Download URL: bwb-2.0.0.tar.gz
- Upload date:
- Size: 3.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.5.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce20c32ae7ec66d497e85a5381fe13a28e7384de52a5e66690930680802c64b6 |
|
MD5 | 08e8f24e84fbab49b79d4980ea4f43ba |
|
BLAKE2b-256 | 7a9183c62c4c067957de0d5eb2245672c4bc33034cc70b5d6f47c573dd68e280 |
Provenance
File details
Details for the file bwb-2.0.0-py3-none-any.whl
.
File metadata
- Download URL: bwb-2.0.0-py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.5.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | be361446ed7042384255563f7fb4eccc23e05fe213663c3c85e889b95e2456d1 |
|
MD5 | f06eb7fc9c42e4af1d6aa852eb5e01b0 |
|
BLAKE2b-256 | 0dcbb7ef60ae7683569e12f0a749f5e53a45a66445ee206e25d70696706e73ef |