Skip to main content

API for Volafile.org

Project description

https://img.shields.io/badge/style-BLACKED-black.svg?longCache=true&style=flat-square

Installation

pip3 install volapi

or for version with faster json module, orjson

pip3 install 'volapi[FAST_JSON]'

If you have it installed already but want to update:

pip3 install volapi -U

or

pip3 install 'volapi[FAST_JSON]' -U

Examples

Basic

# Import volapi and a Room interface
from volapi import Room

# beepi will close at the end of this scope
with Room("BEEPi", "SameFag") as beepi:
    # optional login using a password
    beepi.user.login("hunter2")
    # Upload a file under a new filename and save the id
    fid = beepi.upload_file("images/disgusted.jpg", upload_as="mfw.jpg")
    # Show off your file in the chat
    beepi.post_chat("mfw posting from volapi @{}".format(fid))

Listening

Getting urls of all the files in the room:

from volapi import Room

with Room("BEEPi", "ScrappyBoy") as BEEPi:
    BEEPi.listen(once=True)
    for f in BEEPi.files:
        print(f.url)

Some basic trolling can be achieved with just a few lines of code.

from volapi import Room

with Room("BEEPi", "Stallman") as BEEPi:
    def interject(msg):
        if "linux" in msg.lower() and msg.nick != BEEPi.user.nick:
            BEEPi.post_chat("Don't you mean GNU/Linux?")
    BEEPi.add_listener("chat", interject)
    BEEPi.listen()

You can troll more than one room in parallel:

from functools import partial
from volapi import Room, listen_many

with Room("BEEPi", "Stallman") as BEEPi, Room("HvoXwS", "Popman") as HvoXwS:
    def interjectBEEPi(msg, room):
        if "linux" in msg.lower() and msg.nick != room.user.nick:
            room.post_chat("Don't you mean GNU/Linux?")
    def interjectHvoXwS(msg, room):
        if "hollywood" in msg.lower() and msg.nick != room.user.nick:
            room.post_chat("Don't you mean GNU/Hollywood?")
    BEEPi.add_listener("chat", partial(interjectBEEPi, room=BEEPi))
    HvoXwS.add_listener("chat", partial(interjectHvoXwS, room=HvoXwS))
    listen_many(BEEPi, HvoXwS)

Contributing

Just do whatever, and post a pull request. No guarantee of a merge tho!

If you cannot code, then please consider making a donation to our favorite charity “Cucks in Need Croatia” as one of our own, a user named “auxo”, is politically procecuted for being a cuck in his native Croatia.

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

volapi-5.23.0.tar.gz (25.8 kB view details)

Uploaded Source

File details

Details for the file volapi-5.23.0.tar.gz.

File metadata

  • Download URL: volapi-5.23.0.tar.gz
  • Upload date:
  • Size: 25.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.2

File hashes

Hashes for volapi-5.23.0.tar.gz
Algorithm Hash digest
SHA256 7ff63df90549a821bdcda937e5b18e7dc4e238bb3f6cb604462c508fd327f5dd
MD5 5c0ebffb2445cf9912c179b2f04a18af
BLAKE2b-256 73d416d9ad92487a3ef3eacda6327d188c3daa04fc1ae8a9ebf303c2a77aba51

See more details on using hashes here.

Supported by

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