wechaty微信机器人收到好友请求时自动同意,并回复一条默认消息,且发一封邮件给管理员

本文主要是介绍wechaty微信机器人收到好友请求时自动同意,并回复一条默认消息,且发一封邮件给管理员,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

https://wechaty.js.org/zh/docs/howto/event#friendship-event-friend-requests

//微信登录
const chatWx = async (req, res) => {try {// 扫码const onScan = (qrcode, status) => {let qrcodeImageUrlif (status === ScanStatus.Waiting || status === ScanStatus.Timeout) {// 在控制台显示二维码qrTerminal.generate(qrcode, { small: true })qrcodeImageUrl = ['https://api.qrserver.com/v1/create-qr-code/?data=',encodeURIComponent(qrcode),].join('')console.log('onScan:', qrcodeImageUrl, ScanStatus[status], status)} else {log.info('onScan: %s(%s)', ScanStatus[status], status)}console.log(`Scan QR Code to login: ${status}\nhttps://wechaty.js.org/qrcode/${encodeURIComponent(qrcode)}`)console.log(qrcode)res.send({code: 200,data: {qrcode1: `https://wechaty.js.org/qrcode/${encodeURIComponent(qrcode)}`,qrcode,qrcodeImageUrl,},message: '成功',})return}// 登录const onLogin = (user) => {console.log(`${user} has logged in`)const date = new Date()console.log(`Current time:${date}`)console.log(`Automatic robot chat mode has been activated`)}// 登出const onLogout = (user) => {console.log(`${user} has logged out`)customSendEmail({subject: '微信机器人掉线',html: `微信机器人掉线`,})}// 收到好友请求const onFriendShip = async (friendship) => {if (friendship.type() === 2) {await friendship.accept()// if want to send msg , you need to delay sometimesawait new Promise((r) => setTimeout(r, 1000))await friendship.contact().say(
`免费向微信机器人提问的格式:
gpt,xxx
speech,xxx(文本转语音)
付费后向微信机器人提问的格式:
gpt4,xxx
claude3,xxx
mistral,xxx
mj,xxx(AI绘画)
gemini,xxx
文心一言v4,xxx
upload
uploadForMJ
whisper,xxx(xxx为音频或视频链接,语音转文本)
可以加微信机器人私聊
网站:
https://chat.xutongbao.top`)console.log('after accept')let contact = friendship.contact()let alias = (await contact.alias()) || (await contact.name()) // 发消息人昵称customSendEmail({subject: '微信机器人加入新朋友',html: `微信机器人加入新朋友:${alias}`,})}}const onMessage = async (msg) => {await handleMessage({ msg, bot })}let bot// eslint-disable-next-lineif (global.isLocal) {const CHROME_BIN = process.env.CHROME_BIN? { endpoint: process.env.CHROME_BIN }: {}// eslint-disable-next-lineconst puppet = new PuppetPadlocal({token: 'xxx',})bot = WechatyBuilder.build({name: 'WechatEveryDay',puppet: 'wechaty-puppet-wechat4u', // 如果有token,记得更换对应的puppet  免费//puppet,  //需要花钱//puppet: 'wechaty-puppet-wechat', // 如果 wechaty-puppet-wechat 存在问题,也可以尝试使用上面的 wechaty-puppet-wechat4u ,记得安装 wechaty-puppet-wechat4upuppetOptions: {uos: true,...CHROME_BIN,},})} else {bot = WechatyBuilder.build()}// 扫码bot.on('scan', onScan)// 登录bot.on('login', onLogin)// 登出bot.on('logout', onLogout)// 收到消息bot.on('message', onMessage)// 添加好友bot.on('friendship', onFriendShip)// 启动微信机器人bot.start().then(() => console.log('Start to log in wechat...')).catch((e) => console.error(e))} catch (error) {console.log(error)}
}

邮件通知

人工智能学习网站

https://chat.xutongbao.top

这篇关于wechaty微信机器人收到好友请求时自动同意,并回复一条默认消息,且发一封邮件给管理员的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/894092

相关文章

MyBatis Plus实现时间字段自动填充的完整方案

《MyBatisPlus实现时间字段自动填充的完整方案》在日常开发中,我们经常需要记录数据的创建时间和更新时间,传统的做法是在每次插入或更新操作时手动设置这些时间字段,这种方式不仅繁琐,还容易遗漏,... 目录前言解决目标技术栈实现步骤1. 实体类注解配置2. 创建元数据处理器3. 服务层代码优化填充机制详

SpringBoot 获取请求参数的常用注解及用法

《SpringBoot获取请求参数的常用注解及用法》SpringBoot通过@RequestParam、@PathVariable等注解支持从HTTP请求中获取参数,涵盖查询、路径、请求体、头、C... 目录SpringBoot 提供了多种注解来方便地从 HTTP 请求中获取参数以下是主要的注解及其用法:1

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

SpringBoot请求参数传递与接收示例详解

《SpringBoot请求参数传递与接收示例详解》本文给大家介绍SpringBoot请求参数传递与接收示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录I. 基础参数传递i.查询参数(Query Parameters)ii.路径参数(Path Va

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

使用Python的requests库来发送HTTP请求的操作指南

《使用Python的requests库来发送HTTP请求的操作指南》使用Python的requests库发送HTTP请求是非常简单和直观的,requests库提供了丰富的API,可以发送各种类型的HT... 目录前言1. 安装 requests 库2. 发送 GET 请求3. 发送 POST 请求4. 发送

基于Redis自动过期的流处理暂停机制

《基于Redis自动过期的流处理暂停机制》基于Redis自动过期的流处理暂停机制是一种高效、可靠且易于实现的解决方案,防止延时过大的数据影响实时处理自动恢复处理,以避免积压的数据影响实时性,下面就来详... 目录核心思路代码实现1. 初始化Redis连接和键前缀2. 接收数据时检查暂停状态3. 检测到延时过

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

聊聊springboot中如何自定义消息转换器

《聊聊springboot中如何自定义消息转换器》SpringBoot通过HttpMessageConverter处理HTTP数据转换,支持多种媒体类型,接下来通过本文给大家介绍springboot中... 目录核心接口springboot默认提供的转换器如何自定义消息转换器Spring Boot 中的消息

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm