Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
雪狼之夜
微信群聊机器人(javascript开发的)
提交
a43591e0
微
微信群聊机器人(javascript开发的)
项目概览
雪狼之夜
/
微信群聊机器人(javascript开发的)
与 Fork 源项目一致
Fork自
inscode / NodeJS
通知
1
Star
31
Fork
82
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
微
微信群聊机器人(javascript开发的)
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a43591e0
编写于
11月 15, 2023
作者:
X
xuelang532777032
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Auto Commit
上级
caa5568d
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
23 addition
and
24 deletion
+23
-24
index.js
index.js
+23
-24
未找到文件。
index.js
浏览文件 @
a43591e0
// npm install wechaty-puppet-wechat
// set WECHATY_PUPPET=wechaty-puppet-wechat
//这是一个微信群聊机器人项目,也就是说你在群里发1,机器人会回复2,
//完整教程合集地址 https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzI1NjAxODkzMg==&action=getalbum&album_id=3102070220246171651&scene=173&from_msgid=2572037584&from_itemidx=1&count=3&nolastread=1&uin=&key=&devicetype=Windows+10+x64&version=6309071d&lang=zh_CN&ascene=0
//其实完整教程合集你学前10章就已经够用了!博主陆续更新,本开源项目因为只保留适合演示部分。
//1、微信扫码(17年注册的微信可以直接扫,17年后注册的微信自己要绑定手机号和个人认证下,我记得还要开通收付款。)
//2、本机器人只适用于微信群聊时触发,私聊无法触发
//3、扫码之后,在群里@小白+关键字(比如@小白抽签,或者小白厦门天气,所有关键字在)
process
.
on
(
'
uncaughtException
'
,
function
(
err
)
{
console
.
log
(
'
Caught exception:
'
+
err
);
});
import
{
FileBox
}
from
'
file-box
'
import
QrcodeTerminal
from
'
qrcode-terminal
'
import
QRcode
from
"
qrcode
"
;
//二维码
import
axios
from
"
axios
"
import
{
WechatyBuilder
,}
from
'
wechaty
'
import
{
PuppetMock
,
mock
}
from
'
wechaty-puppet-mock
'
;
import
{
WechatyBuilder
}
from
'
wechaty
'
const
ajax
=
async
(
url
,
param
,
type
)
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
var
axiosOption
=
{
...
...
@@ -60,7 +61,12 @@ const page = {
page
.
data
.
wechaty
=
WechatyBuilder
.
build
()
page
.
data
.
wechaty
.
on
(
'
scan
'
,
(
qrcode
,
status
)
=>
{
console
.
log
(
"
开发教程地址:https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzI1NjAxODkzMg==&action=getalbum&album_id=3102070220246171651&scene=173&from_msgid=2572037584&from_itemidx=1&count=3&nolastread=1&uin=&key=&devicetype=Windows+10+x64&version=6309071d&lang=zh_CN&ascene=0
"
)
console
.
log
(
"
1、微信扫码(17年注册的微信可以直接扫,17年后注册的微信自己要绑定手机号和个人认证下,我记得还要开通收付款。)
\n
2、把自己的的机器人拉个群聊
\n
3、你发一个1,机器人会回复2
"
)
console
.
log
(
`目前关键字有["抽签", "天气", "讲笑话", "讲情话", "梦到", "解第", "动漫图", "去水印-", "历史今天", "星座-", "答案", "转语音-", "黄历"]`
)
console
.
log
(
"
1、微信扫码(17年注册的微信可以直接扫,17年后注册的微信自己要绑定手机号和个人认证下,我记得还要开通收付款。)
\n
2、把自己的的机器人拉个群聊
\n
3、你发送@小白抽签、@小白厦门天气、@小白动漫图
"
);
QrcodeTerminal
.
generate
(
qrcode
,
{
small
:
true
})
})
.
on
(
'
login
'
,
user
=>
{
console
.
log
(
'
登录成功:
'
+
user
)
...
...
@@ -113,7 +119,7 @@ const userEvent = {
async
init
(
room
,
msg
)
{
let
m
=
this
;
//更多api 可以在公众号教程里找到https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI1NjAxODkzMg==
let
arr
=
[
"
抽签
"
,
"
天气
"
,
"
讲笑话
"
,
"
讲情话
"
,
"
梦到
"
,
"
解第
"
,
"
动漫图
"
,
"
去水印-
"
,
"
历史今天
"
,
"
星座-
"
,
"
答案
"
,
"
转语音-
"
,
"
黄历
"
,
"
夸克-
"
]
//
let
arr
=
[
"
抽签
"
,
"
天气
"
,
"
讲笑话
"
,
"
讲情话
"
,
"
梦到
"
,
"
解第
"
,
"
动漫图
"
,
"
去水印-
"
,
"
历史今天
"
,
"
星座-
"
,
"
答案
"
,
"
转语音-
"
,
"
黄历
"
]
//
let
arrIndex
=
-
1
let
text
=
""
arr
.
some
((
v
,
i
)
=>
{
...
...
@@ -165,7 +171,6 @@ const userEvent = {
let
m
=
this
;
let
msg
=
await
m
.
ajax
(
`https://api.lolimi.cn/API/huang/api.php`
,
{},
"
get
"
)
await
room
.
say
(
msg
.
data
.
text
)
userEvent
.
endCallback
(
room
);
},
//微信机器人人
async
weixinChatbot
(
room
,
text
)
{
...
...
@@ -189,7 +194,6 @@ const userEvent = {
answer
=
JSON
.
parse
(
answer
).
multimsg
[
0
]
}
await
room
.
say
(
answer
)
userEvent
.
endCallback
(
room
);
},
//取名
async
naming
(
room
,
text
)
{
...
...
@@ -212,7 +216,7 @@ const userEvent = {
})
str
=
str
.
substr
(
0
,
str
.
length
-
1
)
await
room
.
say
(
str
)
userEvent
.
endCallback
(
room
);
},
//转语言
...
...
@@ -221,7 +225,7 @@ const userEvent = {
var
text
=
text
.
split
(
"
-
"
);
m
.
sayMP3
(
text
[
0
],
room
,
text
[
1
])
userEvent
.
endCallback
(
room
);
},
//答案
async
answer
(
room
,
text
)
{
...
...
@@ -229,7 +233,7 @@ const userEvent = {
let
res
=
await
m
.
ajax
(
"
https://api.wer.plus/api/bay
"
,
null
,
"
get
"
)
debugger
m
.
sayMP3
(
res
.
data
.
data
.
comment
.
split
(
"
|
"
)[
0
],
room
)
userEvent
.
endCallback
(
room
);
},
//星座
async
constellation
(
room
,
text
)
{
...
...
@@ -238,7 +242,7 @@ const userEvent = {
await
room
.
say
(
'
星座:
'
+
res
.
data
.
xz
+
"
\n
贵人方位:
"
+
res
.
data
.
grfw
+
"
\n
贵人星座:
"
+
res
.
data
.
grxz
+
"
\n
幸运数字:
"
+
res
.
data
.
xyys
+
"
\n
爱情运势:
"
+
res
.
data
.
aqys
+
"
\n
财富运势:
"
+
res
.
data
.
cfys
+
"
\n
事业运势:
"
+
res
.
data
.
syys
+
"
\n
整体运势:
"
+
res
.
data
.
ztys
+
"
提示:
"
+
res
.
data
.
ts
)
userEvent
.
endCallback
(
room
);
},
//历史今天
async
history
(
room
)
{
...
...
@@ -247,7 +251,7 @@ const userEvent = {
var
randomIndex
=
Math
.
floor
(
Math
.
random
()
*
radomArr
.
length
)
var
obj
=
radomArr
[
randomIndex
];
await
room
.
say
(
obj
.
date
+
"
:
"
+
obj
.
title
)
userEvent
.
endCallback
(
room
);
},
//去水印 1
async
qsy
(
room
,
text
)
{
...
...
@@ -258,14 +262,14 @@ const userEvent = {
console
.
log
(
res
.
data
.
url
)
await
room
.
say
(
text
+
"
解析后下载地址:
"
+
res
.
data
.
url
)
userEvent
.
endCallback
(
room
);
}
},
//动漫图 0
async
animationPic
(
room
,
text
)
{
let
res
=
await
this
.
ajax
(
"
https://api.oick.cn/random/api.php?type=pc
"
,
{},
"
get
"
)
this
.
sayImg
(
room
,
res
.
request
.
protocol
+
"
//
"
+
res
.
request
.
host
+
res
.
request
.
path
)
userEvent
.
endCallback
(
room
);
},
ajax
:
ajax
,
...
...
@@ -273,7 +277,6 @@ const userEvent = {
let
m
=
this
;
let
fileBox
=
FileBox
.
fromUrl
(
url
);
await
room
.
say
(
fileBox
)
userEvent
.
endCallback
(
room
);
},
//文字转语音
async
sayMP3
(
text
,
room
,
roleName
)
{
...
...
@@ -284,10 +287,6 @@ const userEvent = {
null
,
"
get
"
)
fileBox
=
FileBox
.
fromUrl
(
res
.
data
.
music
);
await
room
.
say
(
fileBox
)
userEvent
.
endCallback
(
room
);
},
async
endCallback
(
room
){
let
m
=
this
;
await
room
.
say
(
"
由公众号:'程序员野区'的作者
"
);
},
sayEnd
:
"
/n来至公众号:'程序员野区'的作者开源项目/n--------/nhttps://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI1NjAxODkzMg==
"
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录