手把手做一个公众号GPT智能客服(三)客服消息

简介: 手把手做一个公众号GPT智能客服(三)客服消息

第三课:客服消息

客服消息需要认证的公众号才能调用,没有认证的只能通过测试账号进行使用

公众号客服消息请参阅官网:

https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Service_Center_messages.html

access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。

access_token 每日调用上限/次 2000,最佳实践是在本地存储起来,每 2 个小时刷新一次。

客服消息控制器

// /controller/customer.js
const axios = require('axios')
const fs = require('fs')
// 从测试号中获取内容
const APPID = 'wx980547b6de8f7c1e'
const APPSECRET = '73d73fea3b46f8e57617b5a6b28d8b8b'
async function genAccessToken() {
  // 获取access_token
  const result = await axios.get(`https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${APPID}&secret=${APPSECRET}`)
  // 将 token 和 创建时间写入文件
  const { access_token } = result.data
  const data = {
    access_token,
    create_time: new Date().getTime()
  }
  fs.writeFileSync('./data/access_token.json', JSON.stringify(data))
  return access_token
}
async function getAccessToken() {
  // 读取文件中的信息
  const json = fs.readFileSync('./data/access_token.json', 'utf8')
  const { access_token, create_time } = JSON.parse(json || "{}")
  // 判断token是否过期,未过期即返回原token
  const now = new Date().getTime()
  if (access_token && now - create_time <= 7000 * 1000) {
    return access_token
  }
  // 如果token不存在或者超时, 获取最新的token
  const token = await genAccessToken()
  return token
}
async function customerController(touser, content) {
  // 获取 token
  const ACCESS_TOKEN = await getAccessToken()
  // 客服信息 url
  const url = `https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=${ACCESS_TOKEN}`
  // 消息定义
  const message = {
    touser,
    msgtype: "text",
    text: {
      content
    }
  }
  // 客服接口-发消息
  await axios.post(url, message)
}
module.exports = customerController

执行客服消息发送

// /routes/chatrobot.js
// ...
const customer = require('../controller/customer')
// ...
function messageController(req, res, next) {
  // ...
  msg['content'] = '答案正在准备中...'
  // 发送客服消息
  customer(fromusername, '答案内容')
  // ...
}
// ...


目录
相关文章
|
3月前
|
前端开发 JavaScript Java
智能客服系统的技术栈解析-唯一客服系统技术架构优势
“唯一客服系统”采用 Vue.js 2.x + ElementUI 构建前端,实现响应式界面,支持多端适配;后端基于 Golang + Gin + GORM,具备高性能与高并发处理能力。系统支持私有化部署,提供灵活定制、AI 扩展能力,技术栈简洁易维护,兼顾开发者友好与企业级应用需求。
178 1
|
3月前
|
人工智能 自然语言处理 监控
生成式AI客服实战:智能客服机器人5大自动化能力处理80%高频咨询,释放60%客服人力
生成式AI驱动的智能客服机器人通过五大核心能力自动化处理80%高频咨询,释放60%客服人力。以合力亿捷方案为例,融合大模型与业务知识图谱,实现服务精准化、决策智能化,推动企业服务成本下降超40%。
314 0
|
存储 人工智能 自然语言处理
轻松改造公众号:10分钟实现智能客服自动化!
在阿里云平台上,仅需10分钟即可将微信公众号(订阅号)升级为AI智能客服,提供7x24小时客户支持,显著提升用户体验。方案包括四步:创建大模型问答应用、搭建微信公众号连接流、引入AI智能客服以及增加私有知识库,确保客服能精准回答复杂咨询,助力业务竞争力提升。整个过程简单快捷,在免费试用额度内费用为零。
437 7
轻松改造公众号:10分钟实现智能客服自动化!
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
AI技术如何重塑客服系统?解析合力亿捷AI智能客服系统实践案例
本文探讨了人工智能技术在客服系统中的应用,涵盖技术架构、关键技术和优化策略。通过感知层、认知层、决策层和执行层的协同工作,结合自然语言处理、知识库构建和多模态交互技术,合力亿捷客服系统实现了智能化服务。文章还提出了用户体验优化、服务质量提升和系统性能改进的方法,并展望了未来发展方向,强调其在客户服务领域的核心价值与潜力。
331 6
|
9月前
|
人工智能 自然语言处理 API
AppFlow:无代码部署Dify成为公众号客服
本文介绍如何通过计算巢AppFlow无代码部署Dify应用,并将其配置到微信公众号中作为智能客服使用。具体步骤包括:访问计算巢AppFlow模板中心选择Dify实例模版,创建连接流并配置Dify和微信公众号的鉴权凭证,完成部署后发布连接流。最终,您可以通过微信公众号发送消息,接收AI智能客服的回复。
1373 9
AppFlow:无代码部署Dify成为公众号客服
|
11月前
|
人工智能 自然语言处理 搜索推荐
选型攻略 | 智能客服系统该怎么选?(好用的智能客服系统推荐)
智能客服系统的选型需要综合考虑渠道功能、系统性能、客服工作管理、客户管理以及成本效益等因素。目前合力亿捷推出的智能知识库,梳理海量知识,根据不同主题对知识进行分类,使其结构更清晰。
297 0
|
人工智能 自然语言处理 数据管理
Step By Step 体验10 分钟在公众号和企微中构建自己的AI客服
为提升用户体验与竞争力,企业纷纷构建AI助手实现7x24小时客户服务。在阿里云平台上,仅需十分钟即可完成AI助手的搭建并发布至微信公众号或企业微信。流程包括创建大模型应用、引入AI助手至微信平台、导入私有知识以增强功能,以及将助手集成至企业微信中。此方案操作简便,文档详尽,可快速打造专属AI助手。但现有方案在错误提示、知识库构建指导及部署流程简化方面仍有待改进。
|
25天前
|
网络协议 NoSQL API
转转客服IM系统的WebSocket集群架构设计和部署方案
客服IM系统是转转自研的在线客服系统,是用户和转转客服沟通的重要工具,主要包括机器人客服、人工客服、会话分配、技能组管理等功能。在这套系统中,我们使用了很多开源框架和中间件,今天讲一下客服IM系统中WebSocket集群的的实践和应用。
93 0
|
3月前
|
测试技术 Go
客服系统程序入口文件解析-唯一客服系统源码开发
该代码为 Go 语言编写的客服系统命令行程序入口,结构清晰,使用 cmd 包启动业务逻辑,可能基于 cobra 框架实现,具备良好可扩展性与可维护性,适用于服务启动与管理。
169 69

热门文章

最新文章