🚀 DigitalSee ChatBox SDK - 直接引入示例

注意: 直接引入模式需要先加载React、ReactDOM和其他依赖库。

📦 方式一:通过CDN引入(推荐)

<!-- 1. 引入依赖库 --> <script crossorigin src="https://unpkg.com/react@18/umd/react.production.min.js"></script> <script crossorigin src="https://unpkg.com/react-dom@18/umd/react-dom.production.min.js"></script> <script src="https://unpkg.com/antd@5/dist/antd.min.js"></script> <script src="https://unpkg.com/lucide-react@latest/dist/umd/lucide-react.js"></script> <!-- 2. 引入SDK --> <script src="https://unpkg.com/digitalsee-chatbox-sdk@latest/dist/index.umd.js"></script>

💻 方式二:本地文件引入

<!-- 下载文件到本地后引入 --> <script src="./libs/react.production.min.js"></script> <script src="./libs/react-dom.production.min.js"></script> <script src="./libs/antd.min.js"></script> <script src="./libs/lucide-react.js"></script> <script src="./libs/digitalsee-chatbox-sdk.umd.js"></script>

🎯 使用示例

悬浮小部件

点击按钮创建悬浮聊天小部件:

嵌入式聊天

将聊天界面嵌入到指定容器中:

📝 JavaScript代码

// 全局变量 let floatingWidgetInstance = null; let embeddedChatInstance = null; // 模拟AI回复函数 async function simulateAIResponse(message) { // 模拟网络延迟 await new Promise(resolve => setTimeout(resolve, 1000 + Math.random() * 2000)); const responses = [ "我理解您的问题,让我为您详细解答...", "根据您提供的信息,我建议...", "这是一个很好的问题!我的回答是...", "感谢您的咨询,基于我的分析...", "您说得对,关于这个问题...", `您提到的"${message}"确实很重要...` ]; return responses[Math.floor(Math.random() * responses.length)]; } // 创建悬浮小部件 function createFloatingWidget() { if (floatingWidgetInstance) { alert('悬浮小部件已存在!'); return; } try { floatingWidgetInstance = DigitalSeeChatboxSDK.ChatBoxSDK.createWidget({ title: '智能客服助手', placeholder: '请输入您的问题...', welcomeMessage: '您好!我是智能客服助手,有什么可以帮助您的吗?', enableFileUpload: true, enableVoiceInput: true, position: 'bottom-right', offset: { x: 20, y: 20 }, onSend: simulateAIResponse, onMessage: function(message) { console.log('收到消息:', message); }, onError: function(error) { console.error('聊天错误:', error); alert('发生错误: ' + error.message); } }); document.getElementById('destroyBtn').disabled = false; alert('悬浮小部件创建成功!请查看页面右下角。'); } catch (error) { console.error('创建悬浮小部件失败:', error); alert('创建失败: ' + error.message); } } // 销毁悬浮小部件 function destroyFloatingWidget() { if (floatingWidgetInstance) { floatingWidgetInstance.destroy(); floatingWidgetInstance = null; document.getElementById('destroyBtn').disabled = true; alert('悬浮小部件已销毁!'); } } // 创建嵌入式聊天 function createEmbeddedChat() { const container = document.getElementById('embedded-container'); if (embeddedChatInstance) { embeddedChatInstance.destroy(); } try { embeddedChatInstance = DigitalSeeChatboxSDK.ChatBoxSDK.createEmbedded(container, { title: '嵌入式聊天', placeholder: '在这里输入消息...', welcomeMessage: '欢迎使用嵌入式聊天功能!', enableFileUpload: true, enableVoiceInput: true, onSend: simulateAIResponse, onMessage: function(message) { console.log('嵌入式聊天消息:', message); } }); alert('嵌入式聊天创建成功!'); } catch (error) { console.error('创建嵌入式聊天失败:', error); alert('创建失败: ' + error.message); } } // 页面加载完成后的初始化 window.addEventListener('load', function() { if (typeof DigitalSeeChatboxSDK === 'undefined') { alert('SDK 未正确加载!请检查script标签是否正确引入。'); return; } console.log('ChatBox SDK 加载成功!', DigitalSeeChatboxSDK); });