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 启动消息同步服务