***
id: 1165f3c5-40df-4827-9628-75857c751d3b
title: ChatMember
keywords: 'SignalWire, Realtime SDK, Node.js, chat member, chat user'
slug: /node/reference/chat/chat-member
sidebar-title: ChatMember
description: >-
ChatMember object representing a participant in a chat channel. Access member
ID, channel, and state through join/update/leave events.
max-toc-depth: 3
----------------
This class represents a member in a chat. A `ChatMember` object is received in the `onMemberJoined`, `onMemberUpdated`, and `onMemberLeft` event handlers when listening to chat events.
## **Properties**
The id of this member.
The channel of this member.
The state of this member.
## **Example**
Listening for member events and accessing `ChatMember` properties:
```js
import { SignalWire } from "@signalwire/realtime-api";
const client = await SignalWire({ project: "your-project-id", token: "your-api-token" });
await client.chat.listen({
channels: ["my-channel"],
onMemberJoined: (member) => {
console.log("Member joined:", member.id);
console.log("Channel:", member.channel);
console.log("State:", member.state);
},
onMemberUpdated: (member) => {
console.log("Member updated:", member.id);
console.log("New state:", member.state);
},
onMemberLeft: (member) => {
console.log("Member left:", member.id);
}
});
```