有道智云翻译插件

2023-10-12 14:10
文章标签 翻译 插件 有道 智云

本文主要是介绍有道智云翻译插件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

badge
badge

有道智云翻译插件

wechaty 插件的形式集成有道智云翻译的能力,让更多的开发者可以很便捷的对机器人添加具备翻译的功能。有道智云是有道官方的云平台,提供翻译的能力。相关 API 文档

功能

提供翻译能力,通过微信发送待翻译文本,例如 hello 给机器人,机器人回复翻译的结果和发音音频。 发音音频需要应用绑定 语音合成服务 由于不支持 Voice 的消息类型,所以只能以 UrlLink 的形式回复发音音频。 效果图

具体实现

插件能力为 Wechaty 本身就提供的能力,主要用 got 对有道智云的翻译 API 进行调用。

单元测试

主要使用 wechaty-puppet-mock 进行单元测试,好处就是不需要频繁的登录扫码等动作,可以直接 mock 一些机器人的行为还有用户行为。 这里介绍一下如何使用单元测试对机器人进行测试,笔者用的是 jest 测试框架。 这里跳过 jest 的配置说明。官方文档 在写测试用例的过程中,觉得还是 jest 使用起来比较顺手一些,建议可以跳出官方的 example 使用 jest 体验一番。

测试准备

wechaty 的行为都通过 puppet 进行代理,这里需要准备几个对象 mocker puppet wechaty

async function wechatyFixtures() {const mocker = new Mocker()const puppet = new PuppetMock({ mocker })const wechaty = new Wechaty({ puppet })await wechaty.start()const [user, contact] = mocker.createContacts(2)await mocker.login(user)return {wechaty,user,contact,mocker,}
}

mocker.login(user)wechatyuser 的身份进行登录,当其他用户向 user 发送消息时, wechaty 所监听的事件 message 就会触发。

测试用例

test case: wechaty 回复翻译结果 为例:

const { contact, user, wechaty } = await wechatyFixtures()
const CONFIG = {appId,privateKey,
} as YouDaoTranslatorPluginOption
wechaty.use(wechatyYouDaoPlugin(CONFIG))
// 插件收到消息回复翻译结果
contact.on('message', (message) => {const res = message.text()!expect(res).toBe('你好')done()
})
// contact 向 wechaty 发送消息
contact.say('Hello').to(user)

本插件的行为比较简单,所以对单元测试用例的编写也比较容易,可以参考issues#37

结语

wechaty-puppet-mock 目前的 API 并没有与 wechaty 完全一致,例如没办法发送除了 Text 以外的消息类型,如 UrlLink 等。 关于这个问题提了一个 Issue 大家可以一起讨论。 感谢wechaty团队提供微信机器人SDK
感谢句子互动提供的iPad协议版token

作者: Chs97 Code: Github


http://www.taodudu.cc/news/show-7934883.html

相关文章:

  • win7,M​i​n​d​m​a​n​a​g​e​r​2​0​1​2使用模板时弹出Runtime error R6025解决方法...
  • 解决系统Runtime Error! R6025-pure virtual function call出错问题
  • Excel打开后关闭就马上跳出 Visual c++ Runtime Error R6025
  • python基础训练day27
  • 关于Unix与Linux的一段暗黑史(下篇)
  • 硬创先锋艾琪:宜准怎样从运动市场切入智能手表?
  • 砖头汽车完成3500万元A轮融资,以展销会切入新车市场
  • tornado 入门之(http请求行为方法-路由匹配-切入点函数)【3】
  • IT企业专利工程师之一——工作切入点
  • 城地股份拟23.33亿跨界并购香江科技 切入IDC领域
  • 贵阳从科技和互联网切入抢抓大数据产业
  • 互联网生态建设的六个切入方向——保险科技生态建设...
  • 2022年3月记录
  • 10个O2O创业的可切入点,你想到了没?
  • 互联网生态建设的六个切入方向——保险科技生态建设
  • idea__Spring5框架13——基于XML的AOP———五种常用通知类型,配切入点表达式(新标签)
  • [Spring]Spring AOP学习笔记(2)---5种切入方式、AOP优先级及切面表达式的重用
  • 浅谈5G信令体系与以前的移动通信技术的不同之处
  • 5G边缘服务器网络位置,5G应用是如何走向边缘服务的
  • 工业互联网,5G,云网融合
  • 写给那些准备当爸爸妈妈的人(一定会用到的哦)
  • 沉睡者IT:你理解的元宇宙是怎样呢?
  • 音乐提高方法
  • 思维模型 奶嘴乐理论
  • 共享服务器密码修改win10,win10共享ftp服务器设置密码
  • win10修改时间服务器,win10 修改时间同步服务器地址
  • 2022年全球市场F-theta物镜总体规模、主要生产商、主要地区、产品和应用细分研究报告
  • Kata曝光!OpenStack联合中美20余家企业发布最新容器项目
  • 2022年全球市场对苯二甲酸二辛酯(DOTP)总体规模、主要生产商、主要地区、产品和应用细分研究报告
  • 【中美技术专家分享实录】性能优化的艺术
  • 这篇关于有道智云翻译插件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



    http://www.chinasem.cn/article/196351

    相关文章

    IDEA常用插件之代码扫描SonarLint详解

    《IDEA常用插件之代码扫描SonarLint详解》SonarLint是一款用于代码扫描的插件,可以帮助查找隐藏的bug,下载并安装插件后,右键点击项目并选择“Analyze”、“Analyzewit... 目录SonajavascriptrLint 查找隐藏的bug下载安装插件扫描代码查看结果总结Sona

    论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

    Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

    Maven(插件配置和生命周期的绑定)

    1.这篇文章很好,介绍的maven插件的。 2.maven的source插件为例,可以把源代码打成包。 Goals Overview就可以查看该插件下面所有的目标。 这里我们要使用的是source:jar-no-fork。 3.查看source插件的example,然后配置到riil-collect.xml中。  <build>   <plugins>    <pl

    jenkins 插件执行shell命令时,提示“Command not found”处理方法

    首先提示找不到“Command not found,可能我们第一反应是查看目标机器是否已支持该命令,不过如果相信能找到这里来的朋友估计遇到的跟我一样,其实目标机器是没有问题的通过一些远程工具执行shell命令是可以执行。奇怪的就是通过jenkinsSSH插件无法执行,经一番折腾各种搜索发现是jenkins没有加载/etc/profile导致。 【解决办法】: 需要在jenkins调用shell脚

    Jenkins 插件 地址证书报错问题解决思路

    问题提示摘要: SunCertPathBuilderException: unable to find valid certification path to requested target...... 网上很多的解决方式是更新站点的地址,我这里修改了一个日本的地址(清华镜像也好),其实发现是解决不了上述的报错问题的,其实,最终拉去插件的时候,会提示证书的问题,几经周折找到了其中一遍博文

    论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

    PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

    excel翻译软件有哪些?如何高效提翻译?

    你是否曾在面对满屏的英文Excel表格时感到头疼?项目报告、数据分析、财务报表... 当这些重要的信息被语言壁垒阻挡时,效率和理解度都会大打折扣。别担心,只需3分钟,我将带你轻松解锁excel翻译成中文的秘籍。 无论是职场新人还是老手,这一技巧都将是你的得力助手,让你在信息的海洋中畅游无阻。 方法一:使用同声传译王软件 同声传译王是一款专业的翻译软件,它支持多种语言翻译,可以excel

    eclipse安装subversion(SVN)版本控制插件

    陈科肇 查看插件更新站点 网址:http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA 网站截图: 根据自己的eclipse版本,选择需要的更新站点. 使用eclipse集成subservion插件 Help > Install New Software…> 等待下载安装插件…

    Weex入门教程之2,Android Studio安装Weex插件

    插件位置及描述 https://plugins.jetbrains.com/idea/plugin/8460-weex 貌似对windows还不是很支持,先放着吧。 安装 插件功能 先预览下都有什么功能 安装完成Weex插件后,如果在main toolbar找不到这些功能图标,那么就需要手动添加到main toolbar 添加到main toolbar 红框内就是

    mybatis框架基础以及自定义插件开发

    文章目录 框架概览框架预览MyBatis框架的核心组件MyBatis框架的工作原理MyBatis框架的配置MyBatis框架的最佳实践 自定义插件开发1. 添加依赖2. 创建插件类3. 配置插件4. 启动类中注册插件5. 测试插件 参考文献 框架概览 MyBatis是一个优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射,为开发者提供了极大的灵活性和便利性。以下是关于M