Mojo-Webqq is an unofficial Perl client and bot framework for the QQ messaging platform’s web endpoints, built on the Mojolicious real-time web stack. It manages login flows, session refresh, and long-polling or websocket-style message reception to deliver events into an asynchronous event loop. Plugins and hooks let developers implement auto-replies, keyword filters, logging, forwarding, and integrations with external services or databases. The library abstracts contacts, groups, and messages into Perl objects, making it straightforward to write handlers that react to rich context. Its non-blocking architecture supports multiple conversations concurrently without complex threading, which is ideal for chat bots. Although the upstream web APIs have evolved over time, Mojo-Webqq illustrates a clean, extensible approach to building chat automation on top of Mojolicious.
Features
- Supported QQ login via username/password or QR code (though may now be invalid)
- Group management: kicking, muting, setting admin, modifying member cards, inviting users, group check-ins
- Friend/group list retrieval and real-time event notifications (joins, leaves, etc.)
- HTTP-based API endpoints to interface with other languages/systems
- Multi-platform support: Windows, Linux, macOS, and Docker deployment
- Plugin ecosystem with features like SmartReply, QR code sharing, Perl code execution, translation, knowledge base, etc.