@kaguyajs/trss-yunzai-types
    Preparing search index...

    Class Client

    单个 bot 实例

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    Accessors

    Methods

    _calcMsgCntPerMin _msgExists acquireGfs addClass addFriend addMatcher bail bailSync buildReserveFields calcPoW cleanCache deleteClass deleteFriend deleteMsg deleteStamp em emit fetchQrcode generateSignPacket generateT544Packet getApiQQVer getApkInfo getApkInfoList getChatHistory getCmdWhiteList getCookies getCsrfToken getForwardMsg getFriendList getGroupInfo getGroupList getGroupMemberInfo getGroupMemberList getMsg getRoamingStamp getSign getSignature getStrangerInfo getStrangerList getSystemMsg getT544 getVideoUrl group imageOcr inviteFriend isOnline listeners login logout makeForwardMsg off offTrap on once passwordLogin qrcodeLogin queryQrcodeResult refreshToken register reloadBlackList reloadFriendList reloadGroupList reloadStrangerList removeEssenceMessage renameClass reportReaded requestSignToken requestToken sendGroupMsg sendGroupNotice sendGroupPoke sendGroupSign sendHeartbeat sendLike sendOidb sendOidbSvcTrpcTcp sendPacket sendPrivateMsg sendSmsCode sendSMSCode sendTempMsg sendUni setAvatar setBirthday setDescription setEssenceMessage setFriendAddRequest setGender setGroupAddRequest setGroupAdmin setGroupAnonymous setGroupAnonymousBan setGroupBan setGroupCard setGroupKick setGroupLeave setGroupMemberScreenMsg setGroupName setGroupPortrait setGroupSpecialTitle setGroupWholeBan setNickname setOnlineStatus setPortrait setRemoteServer setSignature setSignServer sliderLogin ssoPacketListHandler submitSlider submitSmsCode submitSMSCode submitSsoPacket switchQQVer syncTimeDiff terminate token_expire tokenLogin trap trapOnce trip tripAsync updateCmdWhiteList user writeUni

    Constructors

    Properties

    _cache: Map<number, Set<string>>
    _sync_cookie?: Uint8Array
    age: number

    年龄

    apk: icqq.Apk
    bid: string

    未知属性

    blacklist: Set<string | number>

    黑名单列表

    classes: Map<string | number, string>

    好友分组

    config: Required<Config>

    配置

    cookies: {
        "": string;
        "aq.qq.com": string;
        "buluo.qq.com": string;
        "connect.qq.com": string;
        "docs.qq.com": string;
        "game.qq.com": string;
        "gamecenter.qq.com": string;
        "haoma.qq.com": string;
        "id.qq.com": string;
        "kg.qq.com": string;
        "mail.qq.com": string;
        "mma.qq.com": string;
        "office.qq.com": string;
        "openmobile.qq.com": string;
        "qqweb.qq.com": string;
        "qun.qq.com": string;
        "qzone.qq.com": string;
        "ti.qq.com": string;
        "v.qq.com": string;
        "vip.qq.com": string;
        "y.qq.com": string;
    }

    未知属性

    device: icqq.Device
    dir: string

    账号本地数据存储目录

    emp_interval: number

    token刷新间隔(秒)

    fl: Map<string | number, FriendInfo>

    好友列表

    gl: Map<string | number, GroupInfo>

    群列表

    gml: Map<string | number, Map<string | number, MemberInfo>>

    群员列表缓存

    heartbeat: () => void

    随心跳一起触发的函数,可以随意设定

    interval: number

    心跳间隔(秒)

    logger: Logger | Logger

    日志记录器,初始情况下是log4js.Logger

    login_timer: Timeout
    nickname: string

    昵称

    password_md5?: Buffer

    密码的md5值,调用 login 后会保存在这里,用于token过期时恢复登录

    pickFriend: (uid: string | number, strict?: boolean) => Friend

    得到一个好友对象, 通常不会重复创建、调用

    Type Declaration

      • (uid: string | number, strict?: boolean): Friend
      • Parameters

        • uid: string | number

          好友账号

        • Optionalstrict: boolean

          严格模式,若好友不存在会抛出异常

        Returns Friend

        一个Friend对象

    pickGroup: (gid: string | number, strict?: boolean) => Group

    得到一个群对象, 通常不会重复创建、调用

    Type Declaration

      • (gid: string | number, strict?: boolean): Group
      • Parameters

        • gid: string | number

          群号

        • Optionalstrict: boolean

          严格模式,若群不存在会抛出异常

        Returns Group

        一个Group对象

    pickMember: (
        gid: string | number,
        uid: string | number,
        strict?: boolean,
    ) => Member

    得到一个群员对象, 通常不会重复创建、调用

    Type Declaration

      • (gid: string | number, uid: string | number, strict?: boolean): Member
      • Parameters

        • gid: string | number

          群员所在的群号

        • uid: string | number

          群员的账号

        • Optionalstrict: boolean

          严格模式,若群员不存在会抛出异常

        Returns Member

        一个Member对象

    pickUser: (uid: string | number) => User

    创建一个用户对象

    Type Declaration

      • (uid: string | number): User
      • Parameters

        • uid: string | number

          用户的账号

        Returns User

        一个User对象

    pkg: any
    pskey: { [domain: string]: Buffer<ArrayBufferLike> }
    pt4token: { [domain: string]: Buffer<ArrayBufferLike> }
    register_retry_num: number

    上线失败重试次数

    sex: Gender

    性别

    sig: Record<string, any>
    signCmd: string[]
    sl: Map<string | number, StrangerInfo>

    陌生人列表

    stamp: Set<string>

    漫游表情缓存

    statistics: {
        lost_pkt_cnt: number;
        lost_times: number;
        msg_cnt_per_min: number;
        recv_msg_cnt: number;
        recv_pkt_cnt: number;
        remote_ip: string;
        remote_port: number;
        sent_msg_cnt: number;
        sent_pkt_cnt: number;
        start_time: number;
        ver: string;
    }

    数据统计

    status: OnlineStatus

    在线状态

    token_retry_num: number

    token登录重试次数

    uid: string
    uin: string | number

    bot账号

    version: { id: string; name: string; version?: string; [k: string]: string }

    版本

    Type Declaration

    • [k: string]: string
    • id: string

      版本号

    • name: string

      版本名

    • Optionalversion?: string

      版本全称

    Accessors

    • get "[toStringTag]"(): string

      Returns string

    • get bkn(): number

      csrf token

      Returns number

    • set log_level(level: LogLevel): void

      修改日志级别

      Parameters

      Returns void

    • get stat(): {
          lost_pkt_cnt: number;
          lost_times: number;
          msg_cnt_per_min: number;
          recv_msg_cnt: number;
          recv_pkt_cnt: number;
          remote_ip: string;
          remote_port: number;
          sent_msg_cnt: number;
          sent_pkt_cnt: number;
          start_time: number;
          ver: string;
      }

      数据统计

      Returns {
          lost_pkt_cnt: number;
          lost_times: number;
          msg_cnt_per_min: number;
          recv_msg_cnt: number;
          recv_pkt_cnt: number;
          remote_ip: string;
          remote_port: number;
          sent_msg_cnt: number;
          sent_pkt_cnt: number;
          start_time: number;
          ver: string;
      }

    Methods

    • Parameters

      • from: number
      • type: number
      • seq: number
      • time: number

      Returns boolean

    • 添加好友分组

      Parameters

      • name: string

      Returns Promise<void>

    • Parameters

      • group_id: string | number
      • user_id: string | number
      • Optionalcomment: string

      Returns Promise<boolean>

      use Member.addFriend

    • Type Parameters

      • T extends Trapper = this

      Parameters

      • this: T
      • matcher: Matcher
      • listener: Listener

      Returns ToDispose<T>

    • Parameters

      • matcher: Matcher
      • ...args: any[]

      Returns any

    • Parameters

      • matcher: Matcher
      • ...args: any[]

      Returns Promise<any>

    • 删除好友分组

      Parameters

      • id: number

      Returns Promise<void>

    • Parameters

      • user_id: string | number
      • Optionalblock: boolean

      Returns Promise<boolean>

      use Friend.delete

    • 删除表情(支持批量)

      Parameters

      • id: string | string[]

      Returns Promise<void>

    • emit an event

      Parameters

      • Optionalname: string
      • Optionaldata: any

      Returns void

    • Parameters

      • matcher: Matcher
      • ...args: any[]

      Returns void

    • Parameters

      • sign: String
      • token: String
      • extra: String

      Returns Buffer

    • 获取漫游表情

      Parameters

      • Optionalno_cache: boolean

      Returns Promise<string[]>

    • Parameters

      • cmd: string
      • seq: number
      • body: Buffer

      Returns Promise<Buffer<ArrayBufferLike>>

    • Parameters

      • user_id: number

      Returns Promise<
          {
              age: number;
              area: string;
              nickname: string;
              sex: Gender;
              user_id: number;
          },
      >

    • Parameters

      • cmd: string

      Returns Promise<Buffer<ArrayBufferLike>>

    • 获取视频下载地址 use Friend.getVideoUrl

      Parameters

      • fid: string
      • md5: string | Buffer<ArrayBufferLike>

      Returns Promise<string>

    • Ocr图片转文字

      Parameters

      • file: string | Buffer<ArrayBufferLike> | Readable

      Returns Promise<OcrResult>

    • Parameters

      • group_id: string | number
      • user_id: string | number

      Returns Promise<boolean>

      use Group.invite

    • 是否为在线状态 (可以收发业务包的状态)

      Returns boolean

    • Parameters

      • Optionalmatcher: Matcher

      Returns Listener[]

    • 只能在初始化Client时传了uin或扫码登录,才能调用

      • 传了password则尝试密码登录
      • 不传password则尝试扫码登录 未传任何参数 则尝试扫码登录 掉线重连时也是自动调用此函数,走相同逻辑 你也可以在配置中修改reconn_interval,关闭掉线重连并自行处理

      Parameters

      • Optionalpassword: string | Buffer<ArrayBufferLike>

        可以为密码原文,或密码的md5值

      Returns Promise<void>

    • 传了uin,未传password 会优先尝试使用token登录 (token在上次登录成功后存放在this.dir${uin}_token中) 传了uin无token或token失效时:

      • 传了password则尝试密码登录
      • 不传password则尝试扫码登录 未传任何参数 则尝试扫码登录 掉线重连时也是自动调用此函数,走相同逻辑 你也可以在配置中修改reconn_interval,关闭掉线重连并自行处理

      Parameters

      • Optionaluin: number

        登录账号

      • Optionalpassword: string | Buffer<ArrayBufferLike>

        可以为密码原文,或密码的md5值

      Returns Promise<void>

    • 下线 (keepalive: 是否保持tcp连接)

      Parameters

      • Optionalkeepalive: boolean

      Returns Promise<void>

    • Parameters

      • matcher: Matcher
      • Optionallistener: Listener

      Returns void

    • 收到二维码

      Type Parameters

      Parameters

      Returns ToDispose<Client>

    • 收到二维码

      Type Parameters

      • S extends Matcher

      Parameters

      • event: S & Exclude<S, keyof EventMap>
      • listener: Listener

      Returns ToDispose<Client>

    • 使用密码登录

      Parameters

      • uin: number

        登录账号

      • md5pass: Buffer

        密码的md5值

      Returns Promise<void>

    • 获取扫码结果(可定时查询,retcode为0则调用qrcodeLogin登录)

      Returns Promise<
          {
              retcode: number;
              t106: Buffer<ArrayBufferLike>;
              t16a: Buffer<ArrayBufferLike>;
              t318: Buffer<ArrayBufferLike>;
              tgtgt: Buffer<ArrayBufferLike>;
              uin: string | number;
          },
      >

    • Parameters

      • Optionalforce: boolean

      Returns Promise<boolean>

    • Parameters

      • Optionallogout: boolean
      • Optionalreflush: boolean

      Returns Promise<unknown>

    • 重命名好友分组

      Parameters

      • id: number
      • name: string

      Returns Promise<void>

    • Parameters

      • group_id: string | number

      Returns Promise<{ result: number }>

      use Group.sign

    • Parameters

      • user_id: string | number
      • Optionaltimes: number

      Returns Promise<boolean>

      use Friend.thumbUp

    • dont use it if not clear the usage

      Parameters

      • cmd: string
      • body: Uint8Array
      • Optionaltimeout: number

      Returns Promise<Buffer<ArrayBufferLike>>

    • Parameters

      • type: string
      • cmd: string
      • body: any

      Returns Promise<Buffer<ArrayBufferLike>>

    • 收到设备锁验证请求后,用于发短信

      Returns Promise<void>

    • 发送一个业务包并等待返回

      Parameters

      • cmd: string
      • body: Uint8Array
      • Optionaltimeout: number

      Returns Promise<Buffer<ArrayBufferLike>>

    • 设置头像

      Parameters

      • file: string | Buffer<ArrayBufferLike> | Readable

      Returns Promise<void>

    • 设置生日

      Parameters

      • birthday: string | number

        YYYYMMDD格式的string(会过滤非数字字符)或number

      Returns Promise<boolean>

    • 设置个人说明

      Parameters

      • Optionaldescription: string

      Returns Promise<boolean>

    • 设置性别

      Parameters

      • gender: 0 | 1 | 2

        0:未知,1:男,2:女

      Returns Promise<boolean>

    • Parameters

      • group_id: string | number
      • user_id: string | number
      • Optionalenable: boolean

      Returns Promise<boolean>

    • Parameters

      • group_id: string | number
      • flag: string
      • Optionalduration: number

      Returns Promise<void>

      use Group.muteAnony

    • Parameters

      • group_id: string | number
      • user_id: string | number
      • Optionalduration: number

      Returns Promise<void>

    • Parameters

      • group_id: string | number
      • user_id: string | number
      • card: string

      Returns Promise<boolean>

    • Parameters

      • group_id: string | number
      • user_id: string | number
      • Optionalreject_add_request: boolean
      • Optionalmessage: string

      Returns Promise<boolean>

    • 设置当前群成员消息屏蔽状态

      Parameters

      • group_id: string | number

        {number} 群号

      • member_id: string | number

        {number} 成员QQ号

      • OptionalisScreen: boolean

        {boolean} 是否屏蔽 默认true

      Returns Promise<boolean>

    • Parameters

      • group_id: string | number
      • name: string

      Returns Promise<boolean>

      use Group.setName

    • Parameters

      • group_id: string | number
      • file: string | Buffer<ArrayBufferLike> | Readable

      Returns Promise<void>

      use Group.setAvatar

    • Parameters

      • group_id: string | number
      • user_id: string | number
      • special_title: string
      • Optionalduration: number

      Returns Promise<boolean>

    • Parameters

      • group_id: string | number
      • Optionalenable: boolean

      Returns Promise<boolean>

      use Group.muteAll

    • 设置昵称

      Parameters

      • nickname: string

      Returns Promise<boolean>

    • Parameters

      • file: string | Buffer<ArrayBufferLike> | Readable

      Returns Promise<void>

      use setAvatar

    • 设置连接服务器,不设置则自动搜索

      Parameters

      • Optionalhost: string
      • Optionalport: number

      Returns void

    • 设置个性签名

      Parameters

      • Optionalsignature: string

      Returns Promise<boolean>

    • 收到滑动验证码后,用于提交滑动验证码

      Parameters

      • ticket: string

      Returns Promise<void>

    • 提交短信验证码

      Parameters

      • code: string

      Returns Promise<void>

    • Parameters

      • cmd: string
      • callbackId: number
      • body: Buffer

      Returns Promise<Packet[]>

    • Parameters

      • Optionalver: string

      Returns Promise<boolean>

    • 使用接收到的token登录

      Parameters

      • Optionaltoken: Buffer
      • Optionalcmd: number

      Returns Promise<Buffer<ArrayBufferLike>>

    • Type Parameters

      Parameters

      Returns boolean

    • Type Parameters

      • S extends string | symbol

      Parameters

      • event: S & Exclude<S, keyof EventMap>
      • ...args: any[]

      Returns boolean

    • Parameters

      • matcher: Matcher
      • ...args: any[]

      Returns Promise<void>

    • 发送一个业务包不等待返回

      Parameters

      • cmd: string
      • body: Uint8Array
      • Optionalseq: number

      Returns Promise<void>