Options
All
  • Public
  • Public/Protected
  • All
Menu

Group

Create a Group

Use createGroup to create a new group, first parameter is the group name, the second parameter is the contact ids to add as participants. There needs to be at least one participant.

...
  client.createGroup('Cool new group','xxxxxxxxx@c.us') //you can also send an array of ids.
...

Managing Participants

addParticipant - add a participant removeParticipant - remove a particpant promoteParticipant - Make a participant admin demoteParticipant - remove participant as admin

...
  client.addParticipant('XXXXXXX-YYYYYY@c.us','ZZZZZZZZZ@c.us')
  client.removeParticipant('XXXXXXX-YYYYYY@c.us','ZZZZZZZZZ@c.us')
  client.promoteParticipant('XXXXXXX-YYYYYY@c.us','ZZZZZZZZZ@c.us')
  client.demoteParticipant('XXXXXXX-YYYYYY@c.us','ZZZZZZZZZ@c.us')
...

Listening to participant changes of a specific group

You can react to when participants are added and removed. onParticipantsChanged emits a ParticipantChangedEventModel.

client.onParticipantsChanged("XXXXXXXX-YYYYYYYY@g.us", (participantChangedEvent) => console.log("participant changed for group", participantChangedEvent));

//participantChangedEvent returns
{
  by: 'XXXXXXXXXXX@c.us', //who performed the action
  action: 'remove',
  who: [ 'XXXXXXXXX@c.us' ] //all the numbers the action effects.
}

This solution can result in some false positives and misfires however a lot of effort has been made to mitigate this to a reasonable level. Best practice is to maintian a seperate registry of participants and go from that.

Listen to participant changes globally

[[onGlobalParticipantsChanged]] is a simple and memory efficient way to listen to all participant changes from all groups. This is an Insider's Feature.

client.onGlobalParticipantsChanged((participantChangedEvent) => console.log("participant changed for group", participantChangedEvent));

//participantChangedEvent returns
{
  by: 'XXXXXXXXXXX@c.us', //who performed the action
  action: 'remove',
  who: [ 'XXXXXXXXX@c.us' ] //all the numbers the action effects.
}