Room

All wechat rooms(groups) will be encapsulated as a Room.

Classes

Room

All wechat rooms(groups) will be encapsulated as a Room.

Examples/Room-Bot

Typedefs

RoomQueryFilter

The filter to find the room: {topic: string | RegExp} RoomEventName

Room Class Event Type RoomEventFunction

Room Class Event Function RoomMemberQueryFilter

The way to search member by Room.member()

Room

All wechat rooms(groups) will be encapsulated as a Room.

Examples/Room-Bot

Kind: global class Properties

Name

Type

Description

id

string

Get Room id. This function is depending on the Puppet Implementation, see puppet-compatible-table

room.sync() ⇒ Promise <void>

Force reload data for Room, Sync data from lowlevel API again.

Kind: instance method of Room Example

room.say(textOrContactOrFileOrUrlLinkOrMiniProgram, ...mentionList) ⇒ Promise <void>

Send message inside Room, if set mentionList, wechaty will mention the contact list as well.

Tips: This function is depending on the Puppet Implementation, see puppet-compatible-table

Kind: instance method of Room

Param

Type

Description

textOrContactOrFileOrUrlLinkOrMiniProgram

string | Contact | FileBox | UrlLink | MiniProgram

Send text, media file or link inside Room. You can use FileBox to send file

...mentionList

Contact []

Send content inside Room, and mention @contact list.

Example

room.on(event, listener) ⇒ this

Kind: instance method of Room Returns: this - - Room for chain

Param

Type

Description

event

Emit WechatyEvent

listener

Depends on the WechatyEvent

Example (Event:join )

Example (Event:leave )

Example (Event:topic )

Example (Event:invite )

room.add(contact) ⇒ Promise <void>

Add contact in a room

Tips: This function is depending on the Puppet Implementation, see puppet-compatible-table

see Web version of WeChat closed group interface

Kind: instance method of Room

Param

Type

contact

Contact

Example

room.del(contact) ⇒ Promise <void>

Delete a contact from the room It works only when the bot is the owner of the room

Tips: This function is depending on the Puppet Implementation, see puppet-compatible-table

see Web version of WeChat closed group interface

Kind: instance method of Room

Param

Type

contact

Contact

Example

room.quit() ⇒ Promise <void>

Bot quit the room itself

Tips: This function is depending on the Puppet Implementation, see puppet-compatible-table

Kind: instance method of Room Example

room.topic([newTopic]) ⇒ Promise <void | string>

SET/GET topic from the room

Kind: instance method of Room

Param

Type

Description

[newTopic]

string

If set this para, it will change room topic.

Example (When you say anything in a room, it will get room topic. )

Example (When you say anything in a room, it will change room topic. )

room.announce([text]) ⇒ Promise <void | string>

SET/GET announce from the room

Tips: It only works when bot is the owner of the room.

This function is depending on the Puppet Implementation, see puppet-compatible-table

Kind: instance method of Room

Param

Type

Description

[text]

string

If set this para, it will change room announce.

Example (When you say anything in a room, it will get room announce. )

Example (When you say anything in a room, it will change room announce. )

room.qrcode() ⇒ Promise <string>

Get QR Code of the Room from the room, which can be used as scan and join the room.

Tips: This function is depending on the Puppet Implementation, see puppet-compatible-table

Kind: instance method of Room

room.alias(contact) ⇒ Promise <string | null>

Return contact's roomAlias in the room

Kind: instance method of Room Returns: Promise <string | null> - - If a contact has an alias in room, return string, otherwise return null

Param

Type

contact

Contact

Example

room.has(contact) ⇒ Promise <boolean>

Check if the room has member contact, the return is a Promise and must be await-ed

Kind: instance method of Room Returns: Promise. - Return true if has contact, else return false.

Param

Type

contact

Contact

Example (Check whether 'lijiarui' is in the room 'wechaty')

room.memberAll([query]) ⇒ Promise <Contact []>

Find all contacts in a room

definition

  • name the name-string set by user-self, should be called name, equal to Contact.name()

  • roomAlias the name-string set by user-self in the room, should be called roomAlias

  • contactAlias the name-string set by bot for others, should be called alias, equal to Contact.alias()

Kind: instance method of Room

Param

Type

Description

[query]

Optional parameter, When use memberAll(name:string), return all matched members, including name, roomAlias, contactAlias

Example

room.member(queryArg) ⇒ Promise <Contact | null>

Find all contacts in a room, if get many, return the first one.

Kind: instance method of Room

Param

Type

Description

queryArg

When use member(name:string), return all matched members, including name, roomAlias, contactAlias

Example (Find member by name)

Example (Find member by MemberQueryFilter)

room.owner() ⇒ Contact | null

Get room's owner from the room.

Tips: This function is depending on the Puppet Implementation, see puppet-compatible-table

Kind: instance method of Room Example

room.avatar() ⇒ Promise <FileBox>

Get room's avatar

Tips: This function is depending on the Puppet Implementation, see puppet-compatible-table

Kind: instance method of Room Example

Room.create(contactList, [topic]) ⇒ Promise <Room>

Create a new room.

Kind: static method of Room

Param

Type

contactList

Array

[topic]

string

Example (Creat a room with 'lijiarui' and 'juxiaomi', the room topic is 'ding - created')

Room.findAll([query]) ⇒ Promise <Room []>

Find room by by filter: {topic: string | RegExp}, return all the matched room

Kind: static method of Room

Param

Type

Example

Room.find(query) ⇒ Promise <Room>

Try to find a room by filter: {topic: string | RegExp}. If get many, return the first one.

Kind: static method of Room Returns: Promise <Room> - If can find the room, return Room, or return null

Param

Type

Example

RoomQueryFilter

The filter to find the room: {topic: string | RegExp}

Kind: global typedef Properties

Name

Type

topic

string

RoomEventName

Room Class Event Type

Kind: global typedef Properties

Name

Type

Description

join

string

Emit when anyone join any room.

topic

string

Get topic event, emitted when someone change room topic.

leave

string

Emit when anyone leave the room. If someone leaves the room by themselves, wechat will not notice other people in the room, so the bot will never get the "leave" event.

RoomEventFunction

Room Class Event Function

Kind: global typedef Properties

Name

Type

Description

room-join

function

(this: Room, inviteeList: Contact[] , inviter: Contact) => void

room-topic

function

(this: Room, topic: string, oldTopic: string, changer: Contact) => void

room-leave

function

(this: Room, leaver: Contact) => void

RoomMemberQueryFilter

The way to search member by Room.member()

Kind: global typedef Properties

Name

Type

Description

name

string

Find the contact by wechat name in a room, equal to Contact.name().

roomAlias

string

Find the contact by alias set by the bot for others in a room.

contactAlias

string

Find the contact by alias set by the contact out of a room, equal to Contact.alias(). More Detail

Last updated

Was this helpful?