问题标签 [annyang]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
609 浏览

javascript - 如何以角度阅读模块与香草 JS 库?

我是角度的服务/提供商/工厂模块的新手。我一直在使用一个名为annyang的库30 分钟,我想找到更“有角度”的方式来使用这个库。

一些独立于 git 的模块提供者在这里找到:ngAnnyang

它关于如何正确使用它的文档为零。

但是传统的 annyang 你只需运行:

问题: 将模块注入我的角度应用程序后:

  1. 这个模块是否会以相同的方式实现,或者命令现在会以ng如下前缀:ngAnnyang.addCommands(); ngAnnyang.start();

  2. 我还需要将 annyang 的原始库作为应用程序中的脚本标签吗?

  3. 除了现在可以注入之外,这个角度包装器中的什么使它“有角度”?

JS:ng-annyang

0 投票
1 回答
670 浏览

javascript - Microphone permission without internet connection

I am aware that you can only request access to the browser's microphone in google chrome (and other browser's as far as I know) with either https or http. I have a node server and am using Annyang which works fine when I am connected to wifi as usual (requests access to microphone, does its thing after the user accepts).

My problem is that my application is meant to be used with a drone which means that I will be connected to the drone's wifi (which doesn't connect to the internet). I didn't think this would be a problem because I downloaded the annyang.min.js file and I don't need any internet connection for any other parts of my app. However, whenever I connect to the drone and fire up the server it will repeatedly ask for permission to use the microphone no matter how many times I press accept (unless I click deny at which point the app obviously stops working). The server is still using http and the page isn't continually reloading or anything (which would cause it to ask again) as far as I know. I don't have any other tabs open that are trying to use the microphone.

Is there any reason why this problem might be occurring and what would be the best way to fix it? I have a hunch that the problem is caused by the lack of internet connection but I can't find any information on why that would cause a problem. Has anybody experienced this issue (or a similar one before) and if so how did you fix it?

TL;DR:

my speech recognition code works when I am not connected to the drone's wifi and stops working after I connect to it.

All the code can be found on github. Let me know if I can clarify anything.

0 投票
1 回答
3382 浏览

javascript - 是否可以在科尔多瓦应用程序中使用 annyang 进行语音识别?

我正在尝试在我的科尔多瓦应用程序中使用 annyang 进行语音识别。我正在关注TalaterAlex 的示例,但我无法让它发挥作用。

我注意到它不会要求我使用我的麦克风获得许可。

我正在笔记本电脑的 Chrome 中测试代码,而不是在设备中。

我的代码是:

这是我的 JavaScript 代码:

请告诉我我是否遗漏了一些东西(如果无法使其在 cordova 应用程序中工作,我如何在旨在在 iPhone 中工作的 cordova 应用程序中使用语音识别?)

0 投票
1 回答
12186 浏览

javascript - this.set 不是函数

我有这样的代码:

在控制台内运行时ws2812.speech("");,一切正常。但是,当与库配对时Annyang,我得到了这个:

怎么了?

[编辑]

命令是这样添加的:

具体来说,在 annyang 内部,这条线失败了:

替换thisws2812解决此问题的唯一方法吗?

0 投票
3 回答
5601 浏览

javascript - 安阳语音转文字

我正在尝试使用 annyang 将语音转换为文本,但我遇到了一些问题。它可以工作,但还有一些事情还没有。首先,我想知道如何将用户所说的内容传递给警报功能。接下来,我想知道用户说完后如何结束annyang功能。最后,我想知道如何让允许和禁止麦克风提示一旦出现一次又一次出现。

0 投票
1 回答
292 浏览

javascript - 通过 Annyang 语音识别库输入多个参数 (*val) 的最佳/建议方法是什么?

Annyang 命令使用 *val 将值输入到回调函数。如果我想输入多个项目,我应该怎么做?

例如,我想根据用户输入更新表单。所以我可以有一个命令

然后 val 将包含我可以分配给该字段的 Name 值。但是,如果我的表单有很多字段,为所有字段编写这样的命令可能会很乏味。相反,我可以

此命令将返回两个参数,而不是 FieldName 和 FieldVal。如果 FieldName 是页面上可用字段的有效名称,那么我可以使用 FieldVal 更新该值,或者忽略该命令。

实现这一点的一种方法是,当然解析 val 以首先获取 FieldName ,然后从类似的命令中获取 FieldVal

但我不认为它总是会产生干净的解决方案。

有没有建议的方法来实现这一点?

0 投票
1 回答
1657 浏览

javascript - 安阳:如何从 localhost 使用它

我试图从 localhost 运行一个 html/javascript 应用程序。该应用程序使用 annyang 语音控制工具,该工具在我的 Win7 PC 上的 Chrome 浏览器中运行良好。

网站上的评论 ( https://www.talater.com/annyang/ ) 建议:-

对于那些想在本地主机上运行它的人-不要使用“lokalhost/index.html”之类的链接。使用 http://127.0.0.1:58604/web/index.html之类的 IP ,chrome 会要求你允许你的麦克风。

我试过http://127.0.0.1/myPage.html加载正常,但 Chrome 不要求麦克风权限或响应语音命令。

使用http://127.0.0.1:58604/myPage.html会出现“网页不可用”错误。

有人对如何使它工作有任何建议吗?(我不能在网站上说话,因为我不做 facebook)。

编辑 1

这是我的 HTML 页面中的相关代码(我已经美化了原始缩小的 annyang.min.js )

编辑 2

使用 URL:localhost/myFile.html 或 URL:127.0.0.1/myFile.html 可以正常工作。但似乎不能有任何其他浏览器选项卡同时使用麦克风访问。

0 投票
0 回答
233 浏览

node.js - 在 nodejs webkit (nw) 应用程序上使用语音识别失败

我已经工作了几天在我的 nodejs webkit 应用程序中实现语音识别,但它失败了。

我试图为它编写一个本地 html 文件演示,但它没有工作,所以我使用 apache 并将演示放在主机上,但仍然没有工作。然后我尝试使用 https 连接到我的本地主机,它确实适用于我的演示。问题是我不知道如何让我的 nodejs webkit 应用程序在 https 环境中运行。

请注意,我在演示中使用了 annyang 库,并从他们的站点复制了一个应该可以工作的示例。

在此先感谢您的帮助 :)

更新 1:按照 edwan 的正当要求,这是一个基本的简单示例来演示我的问题:

如果您将此代码放在您的 nodejs webkit 环境中,它将无法工作。同样在本地 chrome 环境中或在带有 http 的主机上。只有在 https 它对我有用

0 投票
1 回答
270 浏览

javascript - 如何在输入文本中使用 annyang 处理特殊字符

我正在使用 annyang 进行语音识别。对于所有事情它都工作正常,但在登录页面我只想通过 annyang 插入用户名和密码。用户名和密码包含特殊符号,所以我该如何使用 annyang。就像用户名包含“_”(下划线)一样。如果我在安阳使用它,那么它会插入文本“下划线”而不是符号“_”。

0 投票
1 回答
386 浏览

javascript - 安阳 addCommands

我想让annyang更聪明。所以我决定在用户​​的帮助下添加命令。

提醒 annyang 命令是这样初始化的:

通过一个表单,我可以检索用户想说的内容以及相关的功能。

但是当我想添加这个功能时:

安阳说:命令成功加载:语音

当我调试 newCommand 我得到: Object {speech: "mySuperFunction"}

看到问题了吗?JS 解释函数名而不是它包含的字符串。

你能帮助我吗 ?谢谢 !