Pure Async Python interface for Bot API.
This library provides complete ICQ/Myteam Bot API 1.0 interface and requires Python 3.5+
- Create your own bot by sending the /newbot command to Metabot and follow the instructions.
Note: a bot can only reply after the user has added it to his contact list, or if the user was the first to start a dialogue.
- You can configure the domain that hosts your ICQ server. When instantiating the Bot class, add the address of your domain.
Example: Bot(token=TOKEN, url="https://api.icq.net"), by default we use the domain: https://api.icq.net (ICQ) or http://myteam.mail.ru (VK Teams)
Install using pip:
pip install -U async-icq
Install from sources:
git clone https://github.com/dasshit/async-icq.git
cd async-icq
python setup.py install
Basic example of using this library will look like this
from async_icq.bot import AsyncBot
from async_icq.events import Event
# Creating bot
example = AsyncBot(
token='TOKEN',
url='https://api.icq.net',
)
# Adding some basic event handler by decorators (handler must accept 2 arguments: bot and event)
# Diffent decorators will set it up for diffent types of events
@example.message_handler()
async def hello(event: Event):
await event.answer(
text=f'Hi, {event.from_.userId}'
)
await event.log(
f'Answered to {event.chat.chatId} to {event.from_.userId}')
# Starting to poll new events and sending them to middleware and handlers
example.start_poll()
Example of how to use this library could be found in async-icq/examples