@talkjs/core
v0.0.6
Published
Lets you connect to your TalkJS chat as a user and read, subscribe to, and update your chat data.
Downloads
592
Readme
TalkJS Core
The @talkjs/core
package lets you connect to your TalkJS chat as a user and read, subscribe to, and update your chat data.
See our docs for more information.
Prerequisites
To use this package, you will need a TalkJS account. TalkJS provides a ready-to-use chat client for your application. Your account gives you access to TalkJS's free development environment.
Example
This example demonstrates how to create a TalkJS session and then create two users and conversation between them.
Install the @talkjs/core
package:
npm install @talkjs/core
# or
yarn add @talkjs/core
Import it into the component where you want to use it:
import { getTalkSession } from "@talkjs/core";
Then add the following code to create the session, users and conversation:
// Replace with your own app ID
const appId = "<APP_ID>";
const userId = "alice";
const session = getTalkSession({ appId, userId });
session.currentUser.createIfNotExists({ name: "Alice" });
const conversation = session.conversation("my_conversation");
conversation.createIfNotExists();
conversation.subscribeMessages((messages) => {
console.log(messages);
});
For example, if you are using React, add this code inside a useEffect
hook.
Node.js compatibility
This package is primarily intended to be used in the browser because it only connects as a single user. However, it also works in Node.js.
The @talkjs/core
package uses WebSocket
s to create a connection to the TalkJS servers. If you use @talkjs/core
in the browser or in Node.js version 22, it will use the built-in WebSocket
implementation automatically. Node.js version 21 will also use the built-in implementation if the --experimental-websocket
flag is enabled.
If you are using an older version of Node.js without built-in support for WebSocket
s, you will need to add support with a library. We recommend installing the ws package. Then tell @talkjs/core
to use WebSocket
from the library:
import { getTalkSession, registerPolyfills } from "@talkjs/core";
import { WebSocket } from "ws";
registerPolyfills({ WebSocket: WebSocket });
const session = getTalkSession(...);
Support
If you encounter any problems with @talkjs/core
, please open a chat with support. TalkJS support is staffed by engineers.