import SockJS from 'sockjs-client';import Stomp from 'stompjs';var stompClient = null;// var customerId = '';  //客户Idvar info = {}; //所需参数信息function connect(payload) {  //建立连接var socket = new SockJS('https://xxxxxx');info = payloadstompClient = Stomp.over(socket);   //获取STOMP子协议的客户端对象if (stompClient) {stompClient.connect({}, onConnected, onError);  //向服务器发起websocket连接}}function onConnected() {  //ugid:用户组idvar quote = `{ugid: \"${info.fromUgid}\", type: \"${info.type}\", robotId: \"${info.robotId}\"}`;stompClient.subscribe('/user/' + info.fromAccount + '/customerMessage', onMessageReceived);   // 订阅服务端提供的某个topicstompClient.send('/app/userChat.addUser', {},JSON.stringify({ sender: info.fromAccount, content: quote, type: 'JOIN' }))}function onError(error) {console.log(error, '错误信息')}function sendMessage(event) {  //发送消息if (stompClient) {//转换时间let time = new Date().toLocaleDateString();time = time.split('/');time = time.join('-');let b = new Date().toTimeString();b = b.split(' ');b = b[0];time = `${time} ${b}`;stompClient.send('/app/userChat.sendMessage', {},// 需要的参数JSON.stringify(// `{'IsSeat':false,'msgType':901,'msgContent':{\"content\":\"${event}\",\"sendTime\":\"${time}\",\"receiverUserId\":\"2000\"},'msgId':'9ba19d69-4ea7-46b7-a0e1-a01811146e04','source':${info.fromDeviceId},'userId':${info.fromAccount}}`,{msgId: 'bb9ee191-e702-4952-b0f0-146df2151489',source: info.fromDeviceId,   //200代表H5msgContent: `{\"content\":\"${event}\",\"sendTime\":\"${time}\",\"receiverUserId\":\"2000\"}`,msgType: '901',IsSeat: false,userId: info.fromAccount,}));}}function onMessageReceived(payload) {console.log(payload, '存放的是服务端发送给我们的信息')}// // 断开连接// function disconnect() {//   if (stompClient != null) {//     stompClient.disconnect();//     console.log("断开连接");//   }// }export default {connect,onConnected,onError,sendMessage,// disconnect,stompClient,}

前端使用sockJs进行聊天通讯的功能相关推荐

  1. 蓝牙聊天App设计3:Android Studio制作蓝牙聊天通讯软件(完结,蓝牙连接聊天,结合生活情景进行蓝牙通信的通俗讲解,以及代码功能实现,内容详细,讲解通俗易懂)

    前言:蓝牙聊天App设计全部有三篇文章(一.UI界面设计,二.蓝牙搜索配对连接实现,三.蓝牙连接聊天),这篇文章是:三.蓝牙连接聊天. 课程1:Android Studio小白安装教程,以及第一个An ...

  2. 从 0 到 1 开发一个聊天通讯 服务 复盘总结

    前言 在上个月初,接到一个需求,要开发一个 聊天通讯 模块 并且 集成到 项目中的多个 入口,实现业务数据的记录追踪. 接到需求后,还挺开心,这是我第一次 搞 通讯 类的需求,之前一直是 B 端 的业 ...

  3. 在线登记系统代码 php_PHP框架实现WebSocket在线聊天通讯系统

    ThinkPHP使用Swoole需要安装think-swooleComposer包,前提系统已经安装好了SwoolePECL拓展 tp5的项目根目录下执行composer命令安装think-swool ...

  4. 蓝牙聊天App设计1:Android Studio制作蓝牙聊天通讯软件(UI界面设计)

    前言:蓝牙聊天App设计全部有三篇文章(一.UI界面设计,二.蓝牙搜索配对连接实现,三.蓝牙连接聊天),这篇文章是一.UI界面设计 课程1:Android Studio小白安装教程,以及第一个Andr ...

  5. php实现网站客服聊天/在线沟通功能

    php实现网站客服聊天/在线沟通功能 这是后台页面 这是访客页面 前后端数据交互格式 JSON 前端框架 VUE Element UI JavaScript 后端技术 mysql 5.6 php 5. ...

  6. 【客服系统】在线客服系统源码外贸聊天通讯带翻译多语言支持网页安卓苹果打包封装APP

    随着全球化的加速推进,外贸行业对于在线客服系统的需求日益增长.一款功能强大.支持多语言交流.适用于网页和移动端的在线客服系统源码成为了众多企业的首选.本文将介绍一款名为"外贸聊天通讯带翻译多 ...

  7. 网站/页面即时聊天客服功能

    网站/页面即时聊天客服功能实现效果截图 这是后台页面 这是访客页面 前后端数据交互格式 JSON 前端框架 VUE Element UI JavaScript 后端技术 mysql 5.6 php 5 ...

  8. python后端开发框架加密_Flask框架实现的前端RSA加密与后端Python解密功能详解

    本文实例讲述了Flask框架实现的前端RSA加密与后端Python解密功能.分享给大家供大家参考,具体如下: 前言 在使用 Flask 开发用户登录API的时候,我之前都是明文传输 username ...

  9. 客户端程序初步加入网络通讯的功能

    文章目录 1 客户端初步加入网络通讯的功能 1.1 设计方案 1.2 代码实现 1 客户端初步加入网络通讯的功能 1.1 设计方案 在主窗口类中使用客户端类: 初步设计方案: 主窗口通过ClientD ...

最新文章

  1. 博客园的“随笔、文章、新闻、日记有啥区别”
  2. UC伯克利最新深度强化学习课程上线,视频已上传到B站
  3. 关于photoswiper展示时图片自适应的问题
  4. 在Linux上编写并运行Java文件
  5. 计算机组装与维护配置清单作业,计算机组装与维护 作业汇.doc
  6. python3中maketrans()方法的使用
  7. 排除包_冷水机压缩机压缩机常见故障和排除方法
  8. MySQL主从介绍及配置
  9. 全球地名中英文对照表(U-Z)
  10. Word使用样式技巧:解决创建目录后出现的打印错误---超链接错误
  11. 计算机四级少选给分吗,计算机四级:考高分的有效途径(转载)
  12. js逆向巨潮mcode
  13. Flowable工作流引擎
  14. 程序员用c语言写的新年祝福,程序员的新年祝福:Happy New Year
  15. R语言)不依赖求导的寻根方法:Nelder-Mead方法
  16. ANSI 9.8 , ANSI 9.9和ANSI X9.19
  17. SCI论文全攻略:选刊/投稿/修回与退稿(ZZ)
  18. 肺实质分割matlab实现
  19. 通用输入/输出多路复用器GPIO(General-purpose Input / Output)-TMS320F2812
  20. qt调用matlab生成的dll库

热门文章

  1. PreScan交通流车流插件(ITM)- Intelligent Traffic Module Plugin与matlab(simlink)联合仿真使用实例
  2. element Carousel 走马灯 一次轮播3张图片(整理)
  3. html图片显示变形,CSS完美解决前端图片变形问题的方法
  4. PAT 1006 换个格式输出整数 (15 分)(Java)
  5. 分享基于JavaEE移动平台的企业级房地产ERP采购系统全程开发实录
  6. [转] Real-World Concurrency
  7. (全解析)屏幕尺寸,分辨率,像素,PPI之间到底什么关系?
  8. The World's 100 Greatest Classical Composers
  9. 少壮不努力,ChatGPT来代替!
  10. Ai带你玩股票项目(正式版)推出说明