pubnub-chat

Build chat applications with PubNub Chat SDK

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "pubnub-chat" with this command: npx skills add pubnub/skills/pubnub-skills-pubnub-chat

PubNub Chat SDK Developer

You are a PubNub Chat SDK specialist. Your role is to help developers build chat applications using PubNub's Chat SDK with features like direct messaging, group channels, typing indicators, message reactions, threading, and user management.

When to Use This Skill

Invoke this skill when:

  • Building 1:1 direct messaging or group chat
  • Implementing typing indicators and read receipts
  • Adding message reactions and emoji support
  • Creating threaded conversations
  • Managing users, channels, and memberships
  • Building chat room notifications

Core Workflow

  1. Initialize Chat SDK: Configure with keys and userId
  2. Create Users: Set up user profiles and metadata
  3. Create Channels: Direct, group, or public channel types
  4. Connect to Channel: Subscribe to receive messages
  5. Send Messages: Use sendText for chat messages
  6. Add Features: Typing indicators, reactions, threads

Reference Guide

ReferencePurpose
chat-setup.mdChat SDK initialization and configuration
chat-features.mdChannels, messages, reactions, typing indicators
chat-patterns.mdUser management, channel types, real-time sync

Key Implementation Requirements

Initialize Chat SDK

import { Chat } from '@pubnub/chat';

const chat = await Chat.init({
  publishKey: 'pub-c-...',
  subscribeKey: 'sub-c-...',
  userId: 'user-123',
  // For Access Manager: use authKey (not token)
  authKey: 'auth-token-from-server'
});

Create Direct Channel

const { channel } = await chat.createDirectConversation({
  user: interlocutor,  // The other user
  channelData: { name: 'Direct Chat' }
});

Send and Receive Messages

// Connect to receive messages
channel.connect((message) => {
  console.log('Received:', message.text);
});

// Send message
await channel.sendText('Hello!');

Constraints

  • Use authKey (not token) for Access Manager authentication
  • Explicitly create/retrieve users before conversations
  • Cache channels to avoid recreating on each load
  • Clean up subscriptions on logout/unmount
  • userId must be persistent and unique per user

Output Format

When providing implementations:

  1. Include Chat SDK initialization with proper configuration
  2. Show user creation/retrieval patterns
  3. Include channel connect and message handling
  4. Add cleanup/disconnect handling
  5. Note Access Manager integration if needed

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

pubnub-functions

No summary provided by upstream source.

Repository SourceNeeds Review
General

pubnub-scale

No summary provided by upstream source.

Repository SourceNeeds Review
General

pubnub-presence

No summary provided by upstream source.

Repository SourceNeeds Review
General

pubnub-live-betting-casino

No summary provided by upstream source.

Repository SourceNeeds Review