Skip to content
This repository has been archived by the owner on Nov 2, 2023. It is now read-only.

Commit

Permalink
release
Browse files Browse the repository at this point in the history
  • Loading branch information
takayama-lily committed Apr 21, 2021
1 parent c57bf1a commit 12b360d
Show file tree
Hide file tree
Showing 7 changed files with 142 additions and 121 deletions.
35 changes: 19 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,15 @@

[![npm version](https://img.shields.io/npm/v/oicq.svg?logo=npm)](https://www.npmjs.com/package/oicq)
[![node engine](https://img.shields.io/node/v/oicq.svg)](https://nodejs.org)
[![Gitter](https://badges.gitter.im/takayama-lily/oicq.svg)](https://gitter.im/takayama-lily/oicq?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

* QQ(安卓)协议的nodejs实现。也参考了一些其他开源仓库如[mirai](https://github.com/mamoe/mirai)[miraiGo](https://github.com/Mrs4s/MiraiGo)等。
* 以高效和稳定为第一目的,在此基础上不断完善,将会逐步支持手机协议的大部分功能。
* 使用 酷Q和CQHTTP 风格的API、事件和参数,原生支持经典的CQ码。
* 请使用 `Nodejs 12.16` 以上版本。有bug请告诉我。
* [开发和贡献插件](https://github.com/takayama-lily/oicq-plugins)
* QQ(安卓)协议基于Node.js的实现。也参考了一些其他开源仓库如[mirai](https://github.com/mamoe/mirai)[miraiGo](https://github.com/Mrs4s/MiraiGo)等。
* 小巧:依赖包大小仅1M
* 完善:实现了手机协议大部分常用功能
* 稳定:基于单线程,易维护,无崩溃烦恼,bug率极低
* 简单:使用CQHTTP风格的API,简洁易懂,原生支持经典CQ码
* 高效跨平台,低资源占用
* 请使用 `Node.js 12.16` 以上版本。不会支持金钱/红包相关协议。
* [插件站(建设中)](https://github.com/takayama-lily/oicq-plugins)

----

Expand All @@ -26,30 +28,31 @@ const { createClient } = require("oicq");
const uin = 123456789; // your account
const bot = createClient(uin);

//监听并输入滑动验证码ticket
//监听上线事件
bot.on("system.online", () => console.log("Logged in!"));

//监听消息并回复
bot.on("message", (data) => data.reply("hello world"));

//监听滑动验证码事件并输入ticket
bot.on("system.login.slider", () => {
process.stdin.once("data", (input) => {
bot.sliderLogin(input);
});
});

bot.on("system.online" () => console.log("上线了!"));

//回复消息
bot.on("message", (data) => data.reply("hello world"));

bot.login("password"); // your password or password_md5
```

> [如何获得滑动验证码ticket](https://github.com/takayama-lily/oicq/wiki/01.%E6%BB%91%E5%8A%A8%E9%AA%8C%E8%AF%81%E7%A0%81%E5%92%8C%E8%AE%BE%E5%A4%87%E9%94%81)
> [如何完成滑动验证码并拿到ticket](https://github.com/takayama-lily/oicq/wiki/01.%E6%BB%91%E5%8A%A8%E9%AA%8C%E8%AF%81%E7%A0%81%E5%92%8C%E8%AE%BE%E5%A4%87%E9%94%81)
> 更详细的例子可以参考 [demo.js](docs/demo.js)
> API简洁友好,开箱即用,熟悉Nodejs者建议直接引入依赖进行开发。
> 其他语言的使用者可以用 [http-api](https://github.com/takayama-lily/onebot) 搭建环境。
**相关文档:**

[API列表](https://github.com/takayama-lily/oicq/wiki/91.API%E6%96%87%E6%A1%A3)
[事件列表](https://github.com/takayama-lily/oicq/wiki/92.%E4%BA%8B%E4%BB%B6%E6%96%87%E6%A1%A3)
[API参考文档](https://github.com/takayama-lily/oicq/wiki/91.API%E6%96%87%E6%A1%A3)
[事件参考文档](https://github.com/takayama-lily/oicq/wiki/92.%E4%BA%8B%E4%BB%B6%E6%96%87%E6%A1%A3)
[常见问题](https://github.com/takayama-lily/oicq/wiki/02.%E5%85%B6%E4%BB%96%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98)
[wiki列表](https://github.com/takayama-lily/oicq/wiki)

Expand All @@ -58,4 +61,4 @@ bot.login("password"); // your password or password_md5
[JavaScript语言基础](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript)
[七天学会NodeJS](https://github.com/nqdeng/7-days-nodejs)
[5分钟上手TypeScript](https://www.tslang.cn/docs/handbook/typescript-in-5-minutes.html)
[![交流群反馈群](https://img.shields.io/badge/交流群反馈群-236172566-red)](https://qm.qq.com/cgi-bin/qm/qr?k=NXw3NEA5lzPjkRhyEpjVBqMpdg1WHRKJ&jump_from=webapi)
[![问题交流反馈群](https://img.shields.io/badge/问题交流反馈群-236172566-red)](https://qm.qq.com/cgi-bin/qm/qr?k=NXw3NEA5lzPjkRhyEpjVBqMpdg1WHRKJ&jump_from=webapi)
14 changes: 7 additions & 7 deletions docs/demo.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
"use strict";
try {
var { createClient } = require("../index");
} catch {
var { createClient } = require("oicq");
} catch {
var { createClient } = require("../index");
}

// your account
const uin = 123456789;
const bot = createClient(uin, {
log_level: "debug", //日志级别设置为debug
platform: 1, //登录设备选择为手机
platform: 5, //登录设备选择为iPad
});

//监听并输入滑动验证码ticket(同一地点只需验证一次)
//监听并输入滑动验证码ticket(同一设备只需验证一次)
bot.on("system.login.slider", () => {
process.stdin.once("data", (input) => {
bot.sliderLogin(input);
Expand All @@ -28,8 +28,8 @@ bot.on("system.login.device", () => {
});

//监听上线事件
bot.on("system.online", () => {
console.log(`Logged in as ${bot.nickname}!`);
bot.on("system.online", function () {
console.log(`Logged in as ${this.nickname}!`);
});

//自动同意好友申请
Expand Down Expand Up @@ -63,4 +63,4 @@ bot.on("notice.group.increase", (data) => {
bot.login("password");

//同一事件可以多次监听
//更多api和事件请参考文档或client.d.ts文件
//更多api和事件请参考文档或index.d.ts文件
Loading

0 comments on commit 12b360d

Please sign in to comment.