wechatapi

package module
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 1, 2024 License: MIT Imports: 13 Imported by: 0

README

项目介绍

本项目是基于Web微信开发的个人微信API接口,支持扫码登录,过期重新登录,获取微信联系人信息,获取微信群及成员信息,接收消息,发送消息,邀请加群,移除群聊和退出登录等功能。可基于此API接口实现AI、WebHook、自动回复、智能客服等和个人微信的对接。

登录

  • 直接通过控制台输出的二维码扫码登录
  • 访问输出的链接扫码登录

获取联系人

  • 可获取所有联系人信息和数量
  • 也可以根据省份、城市、性别等条件获取符合条件的联系人信息和数量。
  • 可根据备注获取联系人信息和数量
  • 可根据昵称获取联系人信息和数量

获取群聊

  • 可获取所有群聊数量和名称,以及群成员信息

获取公众号

  • 可获取所有公众号数量和名称

接收消息

  • 接收所有消息,返回消息来源、消息类型、发送者、消息内容等
  • 根据来源筛选消息:群聊、公众号、联系人
  • 根据类型筛选消息:文本、图片、表情包等
消息类型 识别 提取
文本
图片
语音 ×
视频 ×
表情包
公众号推文
文件 ×
视频号消息 ×
拍一拍

发送消息

  • 发送文本消息

邀请入群

  • 发送邀请入群的消息

移出群聊

  • 将指定用户移出指定群聊

安装与使用

安装

go get github.com/NHPT/wechatapi

使用示例

示例代码见test.go

详细文档

请查阅文档

License

LICENSE

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetChatrooms

func GetChatrooms() (int64, []byte)

* 获取所有群聊信息

  • @return int64 群聊数量
  • @return []string 返回所有群聊

func GetContactByNickName

func GetContactByNickName(nickname string) []byte

* 通过联系人昵称获取联系人信息

  • @param nickname string 联系人昵称
  • @return []byte 返回联系人信息

func GetContactByRemarkName

func GetContactByRemarkName(remarkname string) []byte

* 通过联系人备注名获取联系人信息

  • @param remarkname string 联系人备注名
  • @return []byte 返回联系人信息

func GetContactlist

func GetContactlist() (int64, []byte)

* 获取所有联系人信息

  • @return int64 联系人数量
  • @return []byte 返回所有联系人

func GetContacts

func GetContacts(args ...string) (int64, []byte)

* 获取指定省份、城市、性别的联系人

  • @param args ...string 省份、城市、性别
  • @return int64 符合条件的联系人数量
  • @return []byte 符合条件的联系人信息

func GetOfficiallist

func GetOfficiallist() (int64, []byte)

* 获取所有公众号信息

  • @return int64 公众号数量
  • @return []byte 返回所有公众号

func JoinChatroom

func JoinChatroom(inviteuser string, chatroom string) error

*

  • 邀请联系人加入群聊
  • @param inviteuser 被邀请联系人UserName
  • @param chatroom 群聊名称
  • @return error

func Login

func Login() error

*

  • 输出登录二维码,并检查登录结果,登录成功后初始化数据
  • @return error 错误信息

func Logout

func Logout()

*

  • 退出微信

func PrintQRCode

func PrintQRCode(info string) error

*

  • 直接在终端输出二维码
  • 使用github.com/skip2/go-qrcode库
  • @param info 要显示的字符串
  • @return error 错误信息

func RmChatroom

func RmChatroom(user string, chatroom string) error

*

  • 移除群聊中的某用户
  • @param user 待移除用户UserName
  • @param chatroom 群聊
  • @return error 错误信息

func SendMsg

func SendMsg(msg string, toUserName string) error

*

  • 发送消息
  • @param msg 消息内容
  • @param toUserName 接收者
  • @return error 错误信息

Types

type MsgData

type MsgData struct {
	Srctype    int64  `json:"Srctype"`
	Srcname    string `json:"Srcname"`
	Msgtype    int64  `json:"Msgtype"`
	Msg        string `json:"Msg"`
	Fromuser   string `json:"Fromuser"`
	Usernick   string `json:"Usernick"`
	Createtime int64  `json:"Createtime"`
}

func GetMsg

func GetMsg() MsgData

*

  • 获取消息

type MySelf

type MySelf struct {
	UserName   string `json:"UserName"`
	NickName   string `json:"NickName"`
	HeadImgUrl string `json:"HeadImgUrl"`
	Sex        int64  `json:"Sex"`
	Signature  string `json:"Signature"`
}

func GetMySelf

func GetMySelf() MySelf

* 获取自己的信息

  • @return MySelf 返回自己的信息

type WechatData

type WechatData struct {
	Skey              string `xml:"skey"`
	Sid               string `xml:"wxsid"`
	Uin               string `xml:"wxuin"`
	PassTicket        string `xml:"pass_ticket"`
	Synckey           []byte
	DeviceID          string
	MsgID             string
	Webwx_data_ticket string
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL