Documentation
¶
Index ¶
- type Context
- type LoginChannelItem
- type LoginStatus
- type MediaFile
- type MediaStorer
- type SyncChannelItem
- type SyncStatus
- type WechatRunInfo
- type WechatWeb
- func (wxwb *WechatWeb) GetContact(username string) (contact datastruct.Contact, err error)
- func (wxwb *WechatWeb) GetContactByAlias(alias string) (contact datastruct.Contact, err error)
- func (wxwb *WechatWeb) GetContactByNickname(nickname string) (contact datastruct.Contact, err error)
- func (wxwb *WechatWeb) GetContactByRemarkName(remarkName string) (contact datastruct.Contact, err error)
- func (wxwb *WechatWeb) GetContactList() (contacts []datastruct.Contact)
- func (wxwb *WechatWeb) GetRunInfo() (runinfo WechatRunInfo)
- func (wxwb *WechatWeb) Login(loginChannel chan<- LoginChannelItem)
- func (wxwb *WechatWeb) Logout() (err error)
- func (wxwb *WechatWeb) ModifyChatRoomTopic(userName, newTopic string) (revokeMessageRespond *datastruct.ModifyChatRoomTopicRespond, err error)
- func (wxwb *WechatWeb) ModifyUserRemakName(userName, remarkName string) (revokeMessageRespond *datastruct.ModifyRemarkRespond, err error)
- func (wxwb *WechatWeb) SaveContactImg(contact datastruct.Contact) (filename string, err error)
- func (wxwb *WechatWeb) SaveMessageImage(msg datastruct.Message) (filename string, err error)
- func (wxwb *WechatWeb) SaveMessageVideo(msg datastruct.Message) (filename string, err error)
- func (wxwb *WechatWeb) SaveMessageVoice(msg datastruct.Message) (filename string, err error)
- func (wxwb *WechatWeb) SendRevokeMessage(svrMsgID, clientMsgID, toUserName string) (revokeMessageRespond *datastruct.RevokeMessageRespond, err error)
- func (wxwb *WechatWeb) SendTextMessage(toUserName, content string) (sendMessageRespond *datastruct.SendMessageRespond, err error)
- func (wxwb *WechatWeb) StartServe(syncChannel chan<- SyncChannelItem)
- func (wxwb *WechatWeb) StatusNotify(fromUserName, toUserName string, code int64) (err error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Context ¶
type Context struct {
App *WechatWeb
// contains filtered or unexported fields
}
Context 一次处理流程的上下文
type LoginChannelItem ¶
type LoginChannelItem struct {
Err error
Code LoginStatus
Msg string
}
LoginChannelItem 登录时channel内返回的东西
type LoginStatus ¶
type LoginStatus int32
LoginStatus 登录状态枚举
const ( // LoginStatusErrorOccurred 发生异常 LoginStatusErrorOccurred LoginStatus = -1 // LoginStatusWaitForScan 等待扫码 // 返回Msg: 待扫码url LoginStatusWaitForScan LoginStatus = 1 // LoginStatusScanedWaitForLogin 用户已经扫码 // 返回Msg: 用户头像的base64 LoginStatusScanedWaitForLogin LoginStatus = 2 // LoginStatusScanedFinish 用户已同意登陆 LoginStatusScanedFinish LoginStatus = 3 // LoginStatusGotCookie 已获取到Cookie LoginStatusGotCookie LoginStatus = 4 // LoginStatusInitFinish 登陆初始化完成 LoginStatusInitFinish LoginStatus = 5 // LoginStatusGotContact 已获取到联系人 LoginStatusGotContact LoginStatus = 6 // LoginStatusGotBatchContact 已获取到群聊成员 LoginStatusGotBatchContact LoginStatus = 7 )
type MediaFile ¶
type MediaFile struct {
// FileName 文件名
FileName string
// BinaryContent 文件的二进制内容
BinaryContent []byte
}
MediaFile 媒体文件
type MediaStorer ¶
type MediaStorer interface {
// Storer 储存媒体文件,传入媒体文件,返回媒体文件URL与err异常
Storer(file MediaFile) (url string, err error)
}
MediaStorer 媒体文件储存器
func NewLocalMediaStorer ¶
func NewLocalMediaStorer(saveDir string) MediaStorer
NewLocalMediaStorer 新建本地媒体存储器
type SyncChannelItem ¶
type SyncChannelItem struct {
Code SyncStatus // 同步状态
Contact *datastruct.Contact // 联系人(如果同步状态是有联系人变更则有
Message *datastruct.Message // 新信息(如果同步状态是有新信息则有
Err error // 错误(如有发生
}
SyncChannelItem 同步管道通信要素
type SyncStatus ¶
type SyncStatus int32
SyncStatus 同步状态
const ( // SyncStatusModifyContact 同步状态:有联系人变更 SyncStatusModifyContact SyncStatus = 1 // SyncStatusNewMessage 同步状态:有新信息 SyncStatusNewMessage SyncStatus = 2 // SyncStatusPanic 致命错误,sync进程退出 SyncStatusPanic SyncStatus = -1 // SyncStatusErrorOccurred 非致命性错误发生,具体错误请参考Msg SyncStatusErrorOccurred SyncStatus = -2 )
type WechatRunInfo ¶
type WechatRunInfo struct {
// StartAt 程序启动的时间
StartAt time.Time
// LoginAt 程序登陆的时间
LoginAt time.Time
// SyncCount 同步次数
SyncCount uint64
// ContactModifyCount 联系人修改计数器
ContactModifyCount uint64
// MessageCount 消息计数器
MessageCount uint64
// MessageRecivedCount 收到消息计数器
MessageRecivedCount uint64
// MessageSentCount 发送消息计数器
MessageSentCount uint64
// MessageRevokeCount 撤回消息计数器
MessageRevokeCount uint64
// MessageRevokeRecivedCount 收到撤回消息计数器
MessageRevokeRecivedCount uint64
// MessageRevokeSentCount 发送撤回消息计数器
MessageRevokeSentCount uint64
// PanicCount panic计数器
PanicCount uint64
}
WechatRunInfo 微信运行信息
type WechatWeb ¶
type WechatWeb struct {
// contains filtered or unexported fields
}
WechatWeb 微信网页版客户端实例
func NewWechatWeb ¶
NewWechatWeb 生成微信网页版客户端实例
func (*WechatWeb) GetContact ¶
func (wxwb *WechatWeb) GetContact(username string) (contact datastruct.Contact, err error)
GetContact 根据username获取联系人
func (*WechatWeb) GetContactByAlias ¶
func (wxwb *WechatWeb) GetContactByAlias(alias string) (contact datastruct.Contact, err error)
GetContactByAlias 根据Alias获取联系人
func (*WechatWeb) GetContactByNickname ¶
func (wxwb *WechatWeb) GetContactByNickname(nickname string) (contact datastruct.Contact, err error)
GetContactByNickname 根据昵称获取用户名
func (*WechatWeb) GetContactByRemarkName ¶
func (wxwb *WechatWeb) GetContactByRemarkName(remarkName string) (contact datastruct.Contact, err error)
GetContactByRemarkName 根据备注获取用户名
func (*WechatWeb) GetContactList ¶
func (wxwb *WechatWeb) GetContactList() (contacts []datastruct.Contact)
GetContactList 获取联系人列表
func (*WechatWeb) GetRunInfo ¶
func (wxwb *WechatWeb) GetRunInfo() (runinfo WechatRunInfo)
GetRunInfo 获取运行计数器信息
func (*WechatWeb) Login ¶
func (wxwb *WechatWeb) Login(loginChannel chan<- LoginChannelItem)
Login 登陆方法总成 param loginChannel 登陆状态channel,从中可以读取到登录情况
func (*WechatWeb) ModifyChatRoomTopic ¶
func (wxwb *WechatWeb) ModifyChatRoomTopic(userName, newTopic string) (revokeMessageRespond *datastruct.ModifyChatRoomTopicRespond, err error)
ModifyChatRoomTopic 修改群名
func (*WechatWeb) ModifyUserRemakName ¶
func (wxwb *WechatWeb) ModifyUserRemakName(userName, remarkName string) (revokeMessageRespond *datastruct.ModifyRemarkRespond, err error)
ModifyUserRemakName 修改用户备注
func (*WechatWeb) SaveContactImg ¶
func (wxwb *WechatWeb) SaveContactImg(contact datastruct.Contact) (filename string, err error)
SaveContactImg 保存联系人头像
func (*WechatWeb) SaveMessageImage ¶
func (wxwb *WechatWeb) SaveMessageImage(msg datastruct.Message) (filename string, err error)
SaveMessageImage 保存消息图片到指定位置
func (*WechatWeb) SaveMessageVideo ¶
func (wxwb *WechatWeb) SaveMessageVideo(msg datastruct.Message) (filename string, err error)
SaveMessageVideo 保存消息视频到指定位置
func (*WechatWeb) SaveMessageVoice ¶
func (wxwb *WechatWeb) SaveMessageVoice(msg datastruct.Message) (filename string, err error)
SaveMessageVoice 保存消息声音到指定位置
func (*WechatWeb) SendRevokeMessage ¶
func (wxwb *WechatWeb) SendRevokeMessage(svrMsgID, clientMsgID, toUserName string) (revokeMessageRespond *datastruct.RevokeMessageRespond, err error)
SendRevokeMessage 撤回消息
func (*WechatWeb) SendTextMessage ¶
func (wxwb *WechatWeb) SendTextMessage(toUserName, content string) (sendMessageRespond *datastruct.SendMessageRespond, err error)
SendTextMessage 发送消息
func (*WechatWeb) StartServe ¶
func (wxwb *WechatWeb) StartServe(syncChannel chan<- SyncChannelItem)
StartServe 启动消息同步服务