tencent cloud

文档反馈

最后更新时间:2024-04-10 12:05:00

    开发环境要求

    React^18.0(不支持 17.x 版本)
    TypeScript
    node(12.13.0 ≤ node 版本 ≤ 17.0.0, 推荐使用 Node.js 官方 LTS 版本 16.17.0)
    npm(版本请与 node 版本匹配)

    chat-uikit-react 集成

    步骤1:创建项目

    创建一个新的 React 项目,您可自行选择是否需要使用 ts 模版。
    npx create-react-app sample-chat --template typescript
    创建项目完成后,切换到项目所在目录。
    cd sample-chat

    步骤2:下载 chat-uikit-react 组件

    通过 npm 方式下载 chat-uikit-react 并在项目中使用,另外在 GitHub 中也提供相关的 开源代码,您也可在此基础上进行开发您自己的组件库。
    npm install @tencentcloud/chat-uikit-react

    步骤3:引入 chat-uikit-react 组件

    替换 App.tsx 中的内容,或者您可以新建一个组件引入。
    注意:
    以下代码中未填入 SDKAppIDuserIDuserSig,需在 步骤四 中获取相关信息后进行替换。
    import React, { useEffect, useState } from 'react';
    import { TUIKit } from '@tencentcloud/chat-uikit-react';
    import { TUILogin } from '@tencentcloud/tui-core';
    import '@tencentcloud/chat-uikit-react/dist/cjs/index.css';
    export default function SampleChat() {
    const [chat, setChat] = useState<any>();
    const init = () => {
    const loginInfo: any = {
    SDKAppID: 0, // Your SDKAppID. Get it from Step 4
    userID: 'xxx', // Your userID. Get it from Step 5
    // UserSig is a cipher for a user to log in to IM. It is the ciphertext generated by encrypting information such as userID. Get it from Step 5
    userSig: 'xxx', // Your userSig. Get it from Step 5
    useUploadPlugin: true,
    };
    TUILogin.login(loginInfo).then(() => {
    const { chat } = TUILogin.getContext();
    setChat(chat);
    }).catch(() => {});
    }
    useEffect(() => {
    (async ()=>{
    const chat = await init()
    setChat(chat)
    })()
    }, [])
    
    
    return (
    <TUIKit chat={chat} language={'en'}></TUIKit> // language support en or zh
    )
    }

    步骤4:创建一个应用

    2. 单击“创建应用程序”,输入您的应用程序名称,然后单击“确认”。
    
    
    
    3. 创建完成后,您可以在控制台概览页面看到新应用的状态、服务版本、SDKAppID、创建时间、标签、过期时间。
    
    
    

    步骤5:获取 userID 和 userSig

    单击目标应用卡片,进入账户管理页面,创建账户并获取userID。
    
    
    
    进入 即时通信 IM 控制台,选择辅助工具下的 UserSig生成&校验,指定 userID 生成 userSig 并获取 userSig 。userSig 相关介绍参见 生成 UserSig
    
    
    

    步骤6:启动项目

    替换 App.tsx 中的 SDKAppID、userID、userSig,然后运行命令如下:
    npm run start
    注意:
    1. 请确保 步骤三 代码中 SDKAppIDuserIDuserSig 均已成功替换,如未替换将会导致项目表现异常。
    2. userIDuserSig 为一一对应关系,具体参见 生成 UserSig
    3. 如遇到项目启动失败,请检查 开发环境要求 是否满足。

    步骤7:发送您的第一条消息

    1. 项目启动之后单击左侧列表“+”发起单聊
    2. 在搜索栏输入 步骤5 中创建的 userID,进行回车确认。
    3. 在输入框中输入消息并回车发送。
    
    
    

    常见问题

    什么是 UserSig?

    UserSig 是用户登录即时通信 IM 的密码,其本质是对 UserID 等信息加密后得到的密文。

    如何生成 UserSig?

    UserSig 签发方式是将 UserSig 的计算代码集成到您的服务端,并提供面向项目的接口,在需要 UserSig 时由您的项目向业务服务器发起请求获取动态 UserSig。更多详情请参见 服务端生成 UserSig
    注意:
    本文示例代码采用的获取 UserSig 的方案是在客户端代码中配置 SECRETKEY,该方法中 SECRETKEY 很容易被反编译逆向破解,一旦您的密钥泄露,攻击者就可以盗用您的腾讯云流量,因此该方法仅适合本地跑通功能调试。 正确的 UserSig 签发方式请参见上文。

    交流与反馈

    加入 Telegram 技术交流群组WhatsApp 交流群,享有专业工程师的支持,解决您的难题。

    相关文档

    UIKit 相关:

    实现更多功能,请参考 ChatEngine API 文档:

    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持