Skip to main content

An asyncio-based IRC bot library.

Project description

pyrcb2 is an asyncio-based library for writing IRC bots. It is designed to be easy to use, customizable, and high-level.

pyrcb2 includes features such as account tracking, user prefix tracking (voice, op, etc.), messaging delaying to prevent throttling, and long message splitting.

pyrcb2 also makes use of asyncio and coroutines in Python. This allows you to write asynchronous code in a linear fashion—you can handle responses to commands right after you send them.

# Wait until the bot has joined #channel.
await bot.join("#channel")
print("There are", len(bot.users["#channel"]), "users in #channel.")

# Get user1's account.
result = await bot.get_account("user1")
if result.success:
    account = result.value or "(no account)"
    print("user1 is logged in as", account)

Installation

Install with pip:

$ pip3 install pyrcb2

Or download the source code and install with setup.py:

$ ./setup.py install

Alternatively, you can download the source code and install with pip:

$ pip3 install .

You will need to run the commands above as root if you’re installing globally. You can use the --user option to install to your home directory instead.

Documentation

Documentation for pyrcb2 is available at https://taylor.fish/pyrcb2/. If you’re new to pyrcb2, start with this guide and take a look at the examples.

Tests

To run pyrcb2’s tests, run python3 -m tests. If you have coverage installed, you can run coverage run -m tests.__main__ to get information on test coverage.

License

pyrcb2 is licensed under the GNU Lesser General Public License, version 3 or later. Some parts are released under other licenses; see the full license notice and individual files for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyrcb2-0.6.2.tar.gz (174.8 kB view details)

Uploaded Source

Built Distribution

pyrcb2-0.6.2-py3-none-any.whl (98.7 kB view details)

Uploaded Python 3

File details

Details for the file pyrcb2-0.6.2.tar.gz.

File metadata

  • Download URL: pyrcb2-0.6.2.tar.gz
  • Upload date:
  • Size: 174.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1+

File hashes

Hashes for pyrcb2-0.6.2.tar.gz
Algorithm Hash digest
SHA256 4c19320e2250c35e54e4c7e848ba474dff21ba87a6be9f61a255e6668fb3ca45
MD5 bc84c90bd4462d222aea31a7eaeec99a
BLAKE2b-256 1a29496b5a87463cf926fe2491e4efd8fbe2165b220b9ccd587d2353c26442e9

See more details on using hashes here.

File details

Details for the file pyrcb2-0.6.2-py3-none-any.whl.

File metadata

  • Download URL: pyrcb2-0.6.2-py3-none-any.whl
  • Upload date:
  • Size: 98.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1+

File hashes

Hashes for pyrcb2-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4fc1af459261d4c7da1522b4792442303b05f895710c265cad7b94a5de294edf
MD5 5bd761355cf6d8752919016ef54d7e81
BLAKE2b-256 f592a0e00aa08aa76356d63de0a4eccfe7df1f63ecbccb8a531713c587328a91

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page