在本节中,我们将简要讨论通过PHP在线客服系统源码传输数据的数据传输方法。我们可以发送普通消息或基于时间表的消息。我们将逐一介绍这两种基本类型的消息传递。
  完整源码:zxkfym.top
  Azure 服务总线: Microsoft Azure 服务总线是一种完全托管的云上企业集成消息传递服务,用于将云中运行的任何应用程序、设备和服务连接到任何其他应用程序或服务。该平台充当云上和任何设备上的应用程序的消息传递骨干。

  它是如何工作的 ?使用消息在不同的应用程序和服务之间传输数据。消息为二进制格式,可以包含 JSON、XML 或仅包含文本。这些消息被放置到应用程序所连接的服务总线上,以便所有或特定用户连接到这个应用程序上,通过套接字服务连接打开可以接收通过服务总线传输的数据。
  消息类型:通过 Azure 服务总线传输的数据消息可以分为两种主要类型,即数据需要按特定计划发送还是需要立即发送。在这里,我们将详细讨论这两个消息传递过程。其中每一个都有自己特定的方法来调用消息传递过程。
  ●立即发送消息: send() 函数调用将消息发送到当前发送方连接到的 Azure 服务总线。此方法进行非异步调用。您还有一个异步版本来提高性能。

  send( IMessage message )

示例代码:

  public static async sendMessage(content: Message): Promise<string> {const serviceConnection = AzureServiceBus.createConnection();const client = serviceConnection.createQueueClient(""+ process.env.AZURE_SERVICEBUS_QUEUE);const sender = client.createSender();let response = "";try {const scheduledEnqueueTimeUtc= moment().utc().add(1, "m").toDate();await sender.send( {body: JSON.stringify(content),label: "MyTopic"});await client.close();} catch (error) {} finally {await serviceConnection.close();}return resp;}

  ●计划消息:此方法将基于计时器的消息发送到调用发件人所连接的 Azure 服务总线。它将消息排入总线以预定时间消息,将消息传递到接收端。这是当前的异步过程,以获得更好的性能。

  原型:

scheduleMessage( IMessage message, Instant scheduledEnqueueTimeUtc )

示例代码:

  public static async sendScheduleMessage(content: Message): Promise<string> {const serviceConnection =AzureServiceBus.createConnection();const client = serviceConnection.createQueueClient("" + process.env.AZURE_SERVICEBUS_QUEUE);const sender = client.createSender();let response = "";try {const scheduledEnqueueTimeUtc= moment().utc().add(1, "m").toDate();const sequenceId = await sender.scheduleMessage(scheduledEnqueueTimeUtc,{body: JSON.stringify(content),label: "MyTopic"});response = sequenceId.toString();await client.close();} catch (error) {} finally {await serviceConnection.close();}return resp;}

  这将引发一个问题,即 sequenceId 值将变为“未定义”。Azure 门户提供了一个修复,即需要对消息进行编码,然后将其放入服务总线中,以便获取正确的 sequenceId。
  错误修复:

  import { DefaultDataTransformer }from "@azure/amqp-common";......const dt = new DefaultDataTransformer();const sequenceId = await sender.scheduleMessage(scheduledEnqueueTimeUtc,{body: dt.encode(JSON.stringify(content)),label: "MyTopic"});response = sequenceId.toString();

  现在您将收到正确的 sequenceId,如果将来需要,您可以使用以下代码段来取消消息。
  CancelMessage:此方法使用 scheduleMessage 调用删除了早期放置在服务总线中的消息。我们需要将调用期间返回的 sequenceNumber 作为此方法调用的唯一参数发送。如果消息已经传递,那么我们会收到一个错误 MessageNotFound ,需要在 catch 中处理。
  原型:

  cancelScheduledMessage( long sequenceNumber )

因此,我们已经介绍了如何使用上述两种方法进行数据通信,并通过调度或非调度方式放置数据请求。

PHP在线客服系统源码+H5+APP+搭建教程实例相关推荐

  1. 全新UI运营级在线客服系统源码+无授权/带教程

    正文: 全新运营级在线客服系统源码分享,无授权,全新UI带视频教程,全新UI界面,和以往分享出来的不太一样,源码是全开源的,带非常完整的文本.视频教程,小白也可以部署属于自己的客服系统. 有需要的自行 ...

  2. 在线客服系统源码(PHP完全开源版)

    在线客服系统软件使开发和运营团队能够高速协作,因此要求源码系统能够快速响应业务变化,并快速提供出色的客户和员工服务体验. 在线客服源码演示及获取:zxkfym.top 客服沟通问题加起来会成为重大的财 ...

  3. 开源在线客服系统源码 支持PC官网+微网站+h5页面+小程序+公众号等多端客服 含搭建教程

    分享一个开源可二开的在线客服系统源码,可将公众号,小程序,H5页面,PC官网,微官网,手机网站的咨询和留言统一到客服微信号进行回复管理的系统,聊天记录可以实时保存. 含完整的程序包和搭建教程.   在 ...

  4. 智能在线客服系统源码 国际版多语言多商户智能机器人源码

    一套智能在线客服系统源码 多商户网页客服系统源码 支持二十种国际语言 带机器人自动回复. 框架:Thinkphp5+workerman, 环境:nginx+php7.3+mysql5.6 支持H5+公 ...

  5. 在线客服系统源码 自适应手机移动端 支持多商家 带搭建教程

     下载链接: 在线客服系统源码自适应手机移动端支持多商家支持微信公众号/微信小程序带搭建教程-PHP文档类资源-CSDN下载 PHP轻量级人工在线客服系统源码 自适应手机移动端 支持多商家 带搭建教程 ...

  6. PHP轻量级人工在线客服系统源码 自适应手机移动端

    介绍: PHP轻量级人工在线客服系统源码 自适应手机移动端 支持多商家 带搭建教程 支持多商家 支持多商家,每个注册用户为一个商家,每个商家可以添加多个客服. 不限坐席 每个商家可以无限添加坐席,不限 ...

  7. PHP多商户AI智能在线客服系统源码 机器人自动回复 即时通讯聊天系统源码

    一套智能在线客服系统源码 多商户网页客服系统源码 支持二十种国际语言 带机器人自动回复. 框架:Thinkphp5+workerman, 环境:nginx+php7.3+mysql5.6 支持H5+公 ...

  8. Thinkphp内核无限坐席在线客服系统源码

    简介: Thinkphp内核无限坐席在线客服系统源码,直接一键安装的,启动两个端口就行了,安装倒是简单 网盘下载地址: http://pan.zijiepan2.xyz/zJsKwfQH7Gb0 图片 ...

  9. ZBLOG即时聊天(客服)插件v1.3.2版本下载,强大的在线客服系统源码

    ZBLOG即时聊天(客服)插件v1.3.2版本下载,强大的在线客服系统源码 测试报告:本插件我已按照测试了,正常按照开启,插件配置可正常顺利保存,后台配置项无问题.不过因为本插件要配置的东西太多了,且 ...

最新文章

  1. Animy.js,自己编写的功能丰富的html动画库
  2. puppet集群之 Nginx and Passenger
  3. 用数据辅助设计-搜索中的实践
  4. 将Spring源码转换为工程 + 导入Eclipse时缺失jar包
  5. php手册+w3c,W3C 教程
  6. html给自动生成的td赋值,JS动态创建Table,Tr,Td并赋值的具体实现
  7. mate2 刷机 android8,华为Mate2官方原版固件rom刷机包_华为Mate2系统强刷升级包
  8. java转integer_Java的Integer与int互转
  9. 计算机的供电方式,电脑主板电源供电方式
  10. 求证:原函数与逆函数具有相同的单调性
  11. R语言基础图形绘制——箱线图
  12. [OpenGL]导入obj文件
  13. Android 接入穿山甲SDK之插屏广告
  14. 回顾 | 女性 AI 专场 - 女性眼中的 ChatGPT
  15. zookeeper介绍及使用
  16. 集原美 萝莉少女 电脑4k壁纸3840x2160
  17. My Publications
  18. PAT 1157:校庆
  19. Java修炼之凡界篇 筑基期 第02卷 语法 番外1 原码 反码 补码
  20. 【虹科传感器小课堂】眨眼之见:通过气体检测进行热流量测量和校正

热门文章

  1. 盘点阿里云服务器活动【最新活动】2核4G 1M带宽 40G高效云盘 云服务器【19/月,269/年,699/3年】
  2. java中数组的下标比较_【Java】 剑指offer(53-3) 数组中数值和下标相等的元素
  3. GSM模块的信号强度
  4. sae-v2ex 一个运行在SAE上的类似v2ex的轻型python论坛 - 技术讨论 - 云计算开发者社区 - Powered by Discuz!...
  5. Firefox扩展初接触
  6. 百度,你大爷回来了!谷歌宣布AI重返中国,首席扛把子竟是个华人小姐姐
  7. 美企暂停俄罗斯业务,凸显国内企业阿里等自研操作系统前瞻性
  8. html文档strong,html的常用元素
  9. js识别android ios9,JS判断客户端是IOS还是ANDROID
  10. “爱情呼叫转移”有感