个人微信号接口(Kotlin版本)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src/main
.gitignore
README.md
build.gradle
settings.gradle

README.md

WXBot

wxbot是使用Kotlin基于网页版微信开发的微信SDK。

示例

发送消息

import cn.fuser.tool.net.QRPrinter
import java.io.File

fun main(args: Array<String>) {
    val auth = AuthValidator({ QRPrinter(it).print(System.err) }).validate()
    val bot = WXBot(auth)
    bot.heartbeat()
    val members = bot.contact().list.filter { it.userName.startsWith("@@") }
    members.forEach({
        // 发送文本消息    
        bot.sendText(it.userName, it.userName)
        // 发送图片消息
        bot.sendImg(it.userName, File("****"))
    })
}

转发消息

package cn.fuser.vx.wxbot

import cn.fuser.tool.net.Log
import cn.fuser.tool.net.QRPrinter

fun main(args: Array<String>) {
    val auth = AuthValidator({ QRPrinter(it).print(System.err) }).validate()
    val bot = WXBot(auth)
    bot.heartbeat()
	// 根据昵称查找用户
    val members = bot.contact().list.find { it.nickName.startsWith("***") }
    bot.registerHandler(SimpleMessageHandler {
        Log.info("message[%d] %s: %s", it.msgType, it.fromUserName, it.content)
        if (it.msgType != 1) return@SimpleMessageHandler
		// userName以@@开头则为微信群消息
        val content = if (it.fromUserName.startsWith("@@")) it.content.substringAfter(":<br/>") else it.content
        bot.sendText(members!!.userName, content)
    })
}

关于二维码扫描

wxbot根据Python版本的alishtory/qrcode-terminal实现了输出二维码为字画的工具cn.fuser.tool.QRPrinter,可输出二维码到控制台.

亦可实现(BufferedImage) -> Unit传入AuthValidator进行其它操作. 控制台输出二维码效果如下: 控制台输出二维码效果

author: @Memory_Leak