Ably Chat Java 脚本、 TypeScript 和 React SDK
Ably Chat是一组专为一系列聊天功能而设置的 API , 您可以创建 1: 1, 1: : Many, Many: 1 and Many: 许多聊天室 任何尺度。 它旨在满足一系列广泛的聊天使用案例,如活流,游戏中的交流,客户支持,或SaaS产品中的社会互动. 建造在 亚伯利的 core service, 它集成复杂的细节, 以便高效的聊天架构.
开始
所有你需要开始与艾比:
- 关于Ably Chat.
- 在 JavaScript 中开始 Ably Chat.
- 开始Ably Chat in React.
- 开始使用 Ably Chat React UI 套件.
- SDK和JavaScript中的使用道克.
- SDK和React中的用法文档.
- SDK和用于反应UI工具包的文档.
- API文档 (JavaScript).
- API文档 (React Hooks).
- API文档(React UI kidg).
- 聊天示例应用.
- 使用 Ably Chat React UI 工具包的 Chat 示例应用 .
- 与游戏 活流聊天演示.
支持的平台
Ably旨在支持广泛的平台. 如果您遇到相容性问题, 请在寄存器或联系人中打开一个问题 辅助支助。 。 。 .
此 SDK 支持以下平台:
| 平台 | 支助 |
|---|---|
| 浏览器 | 所有主要的桌面和移动浏览器,包括Chrome,Firefox,Edge,Safari(iOS/macOS),Opera,和Android. 不支持 Internet Explorer . |
| 节点.js | 版本22或更新. |
| 类型脚本 | 完全支持,库用TypeScript来写. |
| 反应 | 包括与反应生态系统深度融合的提供者和钩子. |
| 原生反应 | 所有回放原生平台. 可以报告问题或请求支持. |
| 机器人 | 通过 阿布·查特·克特林·SDK. |
| iOS系统 | 通过 Ably Chat Swift SDK (英语). |
安装
Chat SDK是建于Ably Pub/Sub SDK上方并以此来与Ably建立连接.
Java 脚本/ 反应
安装 Pub/Sub SDK 和 Chat SDK :
npm install @ably/pubsub-device @ably/chat
使用量
JavaScript / 类型脚本
以下代码连接了Ably的聊天服务,订阅了聊天室,并向该室发送了信息:
import { createClient } from '@ably/pubsub-device';
import { createChatClient, RoomStatus, RoomStatusChange } from '@ably/chat';
// Initialize Ably Pub/Sub Realtime client
// Note: For client-side applications, token authentication is recommended.
// See: https://ably.com/docs/auth
const pubsubClient = createClient({
key: '<your-ably-api-key>',
clientId: 'your-client-id',
});
// Create a chat client
const chatClient = createChatClient(pubsubClient);
// Get a chat room
const room = await chatClient.rooms.get('my-room');
// Monitor room status
room.onStatusChange((statusChange: RoomStatusChange) => {
switch (statusChange.current) {
case RoomStatus.Attached:
console.log('Room is attached');
break;
case RoomStatus.Detached:
console.log('Room is detached');
break;
case RoomStatus.Failed:
console.log('Room failed:', statusChange.error);
break;
default:
console.log('Room status:', statusChange.current);
}
});
// Subscribe to messages
const subscription = room.messages.subscribe((event) => {
console.log('Received message:', event.message.text);
});
// Attach to the room
await room.attach();
// Send a message
await room.messages.send({ text: 'Hello, World!' });
反应
对于反应应用,SDK提供接钩和提供商进行无缝整合:
import { createClient } from '@ably/pubsub-device';
import { createChatClient } from '@ably/chat';
import { ChatClientProvider, ChatRoomProvider, useMessages } from '@ably/chat/react';
// Initialize clients
// Note: For client-side applications, token authentication is recommended.
// See: https://ably.com/docs/auth
const pubsubClient = createClient({
key: '<your-ably-api-key>',
clientId: 'your-client-id',
});
const chatClient = createChatClient(pubsubClient);
// Wrap your app with providers
function App() {
return (
<ChatClientProvider client={chatClient}>
<ChatRoomProvider name="my-room">
<ChatComponent />
</ChatRoomProvider>
</ChatClientProvider>
);
}
// Use hooks to interact with chat
function ChatComponent() {
const { sendMessage } = useMessages({
listener: (event) => {
console.log('Received message:', event.message.text);
},
});
const handleSend = async () => {
await sendMessage({ text: 'Hello, World!' });
};
return <button onClick={handleSend}>Send Message</button>;
}
释放
这个 变动情况 包含此 SDK 最新发布的细节 。 您还可以查看所有 Ably 的发布 changelog.cably.com (英语)。 。 。 .
贡献
读取 捐款额 准则,协助Ably或 共享反馈或请求 一个新的功能.