Skip to main content

A Python wrapper for the Misskey API

Project description

MiPA

Discord server invite Ruff

Overview

日本語版

MiPA is a Misskey Bot Framework created to allow for Discord.py-like coding.

About MiPAC

The API wrapper functionality provided by MiPA is managed by a library called MiPAC. Since the amount of work is significantly higher than that of MiPA, we are looking for people to work with us.

Supported Misskey Versions

Examples

import asyncio

from aiohttp import ClientWebSocketResponse
from mipac import Note
from mipac.models import ChatMessage

from mipa.ext.commands.bot import Bot


class MyBot(Bot):
    def __init__(self):
        super().__init__()

    async def _connect_channel(self):
      await self.router.connect_channel(['main', 'home'])

    async def on_ready(self, ws: ClientWebSocketResponse):
        await self._connect_channel()
        print('Logged in ', self.user.username)

    async def on_reconnect(self, ws: ClientWebSocketResponse):
        await self._connect_channel()

    async def on_note(self, note: Note):
        print(note.author.username, note.content)

    async def on_chat(self, message: ChatMessage):
        print(message.user.username, message.text)
        if message.text == 'hello':
            await self.client.chat.action.send(
                f'hello! {message.user.username}',
                user_id=message.user.id
            )

if __name__ == '__main__':
    bot = MyBot()
    asyncio.run(bot.start('wss://example.com/streaming', 'your token here'))

For more examples, please see the examples folder. If you don't know how to do what you want in the examples, please feel free to create an issue.

LICENSE

This project is provided under the MIT LICENSE.

MiPA has been inspired by Discord.py in many ways. Therefore, in places where we use the source code of Discord.py, we specify the license of Discord.py at the beginning of the file. Please check the code for details.

FOSSA Status

Special Thanks

  • Discord.py
    • We have been inspired by many aspects of Discord.py, such as the mechanism of Cogs and the management of tasks and states.

Documentation * Discord Server

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

mipa-0.3.5.tar.gz (37.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mipa-0.3.5-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file mipa-0.3.5.tar.gz.

File metadata

  • Download URL: mipa-0.3.5.tar.gz
  • Upload date:
  • Size: 37.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for mipa-0.3.5.tar.gz
Algorithm Hash digest
SHA256 098ed999bf303bdb4e18b2fd2a2a2803decf8fc73695ecb84234e6d3591de566
MD5 224fbed10dfa667650878859d7a2e39a
BLAKE2b-256 3bb84d08c815ffca4100a37c66d05ce12e4695654ca1a8ba7a94f71d36c22383

See more details on using hashes here.

File details

Details for the file mipa-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: mipa-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 29.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for mipa-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 578582e71a6a17d3f67bdd7310b47037b1307cf25fa75c4e43f7707f6b4372a0
MD5 a547b7b4ecc329810ce65a79ade658da
BLAKE2b-256 00e7d540f6522298778e1677dfda037144c72470831df93568fd5b55b588afa6

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