如何通过日志快速定位TTS的缓存放音文件(mod_cti基于FreeSWITCH)

news2024/9/30 19:20:32

文章目录

  • 前言
  • 联系我们
  • 分析过程
    • 1. 测试话术,记录日志
    • 2. 关键词搜索


前言

顶顶通呼叫中心中间件在运行话术时,如果有通过TTS合成的语音,会被freeswitch缓存在目录中:/ddt/fs/storage/http_file_cache
我们可以分析freeswitch日志,快速定位缓存的合成文件。


提示:以下是本篇文章正文内容,下面案例可供参考

联系我们

有意向了解呼叫中心中间件的用户,可以点击该链接添加工作人员的微信:顶顶通小何的联系方式

分析过程

以图中的话术为例,定位ID等于F2的节点TTS的缓存放音文件。
在这里插入图片描述

1. 测试话术,记录日志

  • 打开日志。
  • 开始测试当前话术。
  • 测试完毕后导出日志
  • 开始分析日志文件。

2. 关键词搜索

  • 先以节点ID为搜索词定位到F2节点的放音日志。放音日志中有需要TTS的接口,图中接口中 text=后面的内容就是需要语音合成的文字。
2024-09-30 15:12:26.872460 98.27% [NOTICE] cti_nlp.c:430 cti_nlp_process_record callid:[df0c9c9f-60bb-4057-887c-2acb190fce50] current_appid[33e67af0-0684-4a54-8c6e-38c4ed5e5d25] sequence:[5] current_flowid:[F1] input_type:[text] input_args:[F没有。] input_nlp_args:[] input_start_time:[2024-09-30 15:12:25] input_duration:[1541] matching_method:[full] matching_condition:[] condition_id:[] matching_keyword:[] response_type:[subflow] response_description:[无意向] response_id:[F2] response_action:[cti_play_and_detect_speech] 
response_args:['file_string://http://(nohead=true,abs_cache_control=2147483647,ext=wav)down.ddrj.com:9989/tts?config=&voice=&volume=0&speechrate=0&pitchrate=0&engine=&text=%E5%A5%BD%E7%9A%84%EF%BC%8C%E6%89%93%E6%89%B0%E4%BD%A0%E7%9A%84%EF%BC%8C%E5%86%8D%E8%A7%81%E3%80%82%E7%A5%9D%E4%BD%A0%E7%94%9F%E6%B4%BB%E6%84%89%E5%BF%AB' '0' '' '' '' '' '' '' '' '' '' '' 'bf8d7475-7cdc-4ea7-bee0-1eb863d18971' '' '' ''] repetition:[1] potential:[] record:[/ddt/fs/recordings/2024-09-30/df0c9c9f-60bb-4057-887c-2acb190fce50_1.wav]

在这里插入图片描述

  • 接口中 text=后面的内容是做了URL编码处理(字符编码:UTF-8),可以利用URL解码进一步确认内容是否正确。
    在这里插入图片描述

  • 最后以接口中text=后面的内容为搜索词,搜索出以下固定格式的日志,进而找出内容的语音合成(TTS)后的缓存文件。
    图中/ddt/fs/storage/http_file_cache/d439a2d532194954da2a6f2b9a39b80a.wav就是语音合成(TTS)的缓存文件。

2024-09-30 15:12:27.112144 98.23% [DEBUG] mod_httapi.c:2691 caching: url:http://TTS接口 to 缓存文件的路径 (71872 bytes) elapsed:221215

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2180487.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学习Webpack中图片-JS-Vue-plugin

目录 图片文件资源模块类型 JS文件babel命令行使用babel-loaderbabel-preset Vue文件vue-loadervue/compiler-sfc pluginCleanWebpackPluginHtmlWebpackPluginDefinePlugin 图片文件 需要先在项目中使用图片,比较常见的使用图片的方式是两种: img元素&…

LeetCode 918. 环形子数组的最大和

原题链接:. - 力扣(LeetCode) 给定一个长度为 n 的环形整数数组 nums ,返回 nums 的非空 子数组 的最大可能和 。 环形数组 意味着数组的末端将会与开头相连呈环状。形式上, nums[i] 的下一个元素是 nums[(i 1) % n…

基于STM32的智能室内空气质量监控系统

目录 引言项目背景环境准备 硬件准备软件安装与配置系统设计 系统架构关键技术代码示例 传感器数据采集与处理空气质量分析与报警显示与数据记录功能应用场景结论 1. 引言 智能室内空气质量监控系统用于实时监测环境中的空气质量,通过检测空气中的CO2、PM2.5、温…

软件测试学习笔记丨Pytest 学习指南

本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/32336 基本介绍 pytest框架是一个成熟,全面的测试框架,具有非常丰富的第三方插件,并且可以自定义扩展 比如:pytest-selenium , pytest-html ,…

Git常用方法——详解

一、下载安装git git官网: Git - Downloads (git-scm.com) 下载安装Git(超详细超简单)_git下载-CSDN博客 二、克隆下载至本地 1、复制HTTPS链接 在gitee或者gitLab或者gitHub上复制HTTPS链接 2、打开Open Git Bash here 在本地想要新建文…

小程序原生-列表渲染

1. 列表渲染的基础用法 <!--渲染数组列表--> <view wx:for"{{numList}}" wx:key"*this" > 序号&#xff1a;{{index}} - 元素&#xff1a;{{item}}</view> <!--渲染对象属性--> <view wx:for"{{userInfo}}" wx:key&q…

怎么给视频加片头片尾和字幕

在这个视觉内容爆炸的时代&#xff0c;一段精心制作的视频不仅能吸引眼球&#xff0c;更能传达深刻的情感与信息。而一个引人入胜的片头、一个温馨感人的片尾&#xff0c;以及恰到好处的字幕&#xff0c;无疑是提升视频质感的关键。那么新人要怎么给视频加片头片尾和字幕效果呢…

2024年9月收评

金1是从2005年12月开始&#xff0c;到现在2024年5月&#xff0c;还差7个月整整20年。一共11轮。 这20年里&#xff0c;真正形成单边趋势&#xff0c;能较好获利或者说至少不亏损的一共有以下几次&#xff0c; 第1轮&#xff0c;第2轮&#xff0c;第7轮&#xff0c;第8轮&…

《程序猿之Redis缓存实战 · 集合类型》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; CSDN入驻不久&#xff0c;希望大家多多支持&#xff0c;后续会继续提升文章质量&#xff0c;绝不滥竽充数…

基于微信小程序的商品展示+ssm论文ppt源码调试讲解

2 系统开发环境 2.1微信开发者工具 微信开发者工具现在已经被小程序开发团队开发运行&#xff0c;目前微信开发者工具任然在不断的完善中&#xff0c;在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具&#xff0c;开发者工具将使用这个微信帐号的信息进行小程…

为VRoidStudio制作的vrm格式模型制作blendshape

零、效果展示 bs视频演示 一、准备相关插件 1、VRoidStudio&#xff08;免费&#xff09; 下载网址&#xff1a;https://vroid.com/en/studio 2、UniVRM&#xff08;免费&#xff09; 下载网址&#xff1a;https://github.com/vrm-c/UniVRM/releases 注意&#xff1a;unity…

Qt --- 常用控件的介绍---Widget属性介绍

一、控件概述 编程&#xff0c;讲究的是站在巨人的肩膀上&#xff0c;而不是从头发明轮子。一个图形化界面上的内容&#xff0c;不需要咱们全都从零区实现&#xff0c;Qt中已经提供了很多内置的控件了&#xff08;按钮&#xff0c;文本框&#xff0c;单选按钮&#xff0c;复选…

yolov8实例分割重要图片

训练分割要准备好数据集和分割预训练权重文件 下面这张图是数据集的格式 下面这张图配置数据集&#xff0c;下面names 要和labelme转txt里配置的一样 下面这张图进行训练&#xff0c;配置一些全局参数 &#xff0c;初始的yolov8s-seg.pt文件需要到github上yolov8开源项目里下 l…

linux部署redis,整合ansible和redis

准备服务器192.168.45.133&#xff0c;192.168.45.135 在135上执行命令yum install -y redis安装redis yum install -y redis 源码安装方法 wget http://download.redis.io/releases/redis-2.8.13.tar.gz tar zxf redis-2.8.13.tar.gz cd redis-2.8.13 make PREFIX/usr/loca…

Cannon-es.js之Distance Constrait模拟布料

本文目录 前言1、Particle2、前置代码准备2.1 代码2.2 效果 3、使用距离约束模拟布料3.1 代码3.2 效果 前言 在现代Web开发中&#xff0c;实现逼真的物理效果对于提升用户体验至关重要。Cannon-es.js&#xff0c;作为Cannon.js的ES6模块版本&#xff0c;凭借其轻量级、高性能和…

selenium测试框架快速搭建详解

一、介绍 Selenium目前主流的web自动化测试框架&#xff1b;支持多种编程语言Java、pythan、go、js等&#xff1b;selenium 提供一系列的api 供我们使用&#xff0c;因此在web测试时我们要点页面中的某一个按钮&#xff0c;那么我们只需要获取页面&#xff0c;然后根据id或者n…

拯救华为秘盒M310

这个盒子当年宣传得比较厉害&#xff0c; 当时确实也没有什么可选的&#xff0c;当年是高价入的,这个盒子有二切一的hdmi切换功能&#xff0c; 这点从今天来看&#xff0c; 都是一个亮点 华为秘盒M310是一款小巧但功能强大的网络机顶盒。它搭载了基于安卓系统的操作平台&#x…

序列化方式四——Hessian

介绍 Hessian是一个轻量级的、基于HTTP的RPC&#xff08;远程过程调用&#xff09;框架&#xff0c;由Resin开源提供。它使用一个简单的、基于二进制的协议来序列化对象&#xff0c;并通过HTTP进行传输。Hessian的设计目标是提供一种高效、可靠且易于使用的远程服务调用机制。…

算法分析——《二分查找》

&#x1f6e9;《二分查找》 &#x1f3a8;题目描述&#xff1a; 给定一个 n 个元素有序的&#xff08;升序&#xff09;整型数组 nums 和一个目标值 target &#xff0c;写一个函数搜索 nums 中的 target&#xff0c;如果目标值存在返回下标&#xff0c;否则返回 -1。 示例 …

厦门大龄自闭症寄宿学校:为孩子们提供全方位关怀和教育

在自闭症儿童的教育与关怀领域&#xff0c;厦门大龄自闭症寄宿学校以其专业性和全面性&#xff0c;为众多家庭提供了宝贵的支持与帮助。而在中国南方的广州&#xff0c;也有一所同样致力于自闭症儿童全方位关怀与教育的机构——星贝育园自闭症儿童寄宿制学校。星贝育园以其独特…