問題タブ [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.
javascript - モジュールとバニラJSライブラリを角度で読む方法は?
angularのサービス/プロバイダー/ファクトリーモジュールは初めてです。私はannyangというライブラリを 30 分間使用してきましたが、このライブラリをより「角度のある」方法で使用したいと考えていました。
git に依存しない人がここにある moduleProvider を作成しました: ngAnnyang。
適切に使用する方法に関するドキュメントはありません。
しかし、あなたが実行するだけの伝統的なアンニャン:
質問: モジュールを角度アプリケーションに挿入した後:
このモジュールは同じように実装されますか、それともコマンドには
ng
like:という接頭辞が付けられngAnnyang.addCommands(); ngAnnyang.start();
ますか?アプリのスクリプト タグとして annyang の元の lib を使用する必要がありますか?
この角度のあるラッパーで、注入できるようになったことを除いて、それを「角度のある」ものにしているのは何ですか?
JS:ng-アンニャン
javascript - インターネットに接続していないマイクの許可
Google chrome (および私が知る限り他のブラウザー) でブラウザーのマイクへのアクセスを要求できるのは、https
またはhttp
. ノードサーバーがあり、通常どおりwifiに接続しているときに正常に動作するAnnyangを使用しています(マイクへのアクセスを要求し、ユーザーが受け入れた後にそのことを行います)。
私の問題は、アプリケーションがドローン で使用されることを意図していることです。つまり、ドローンの wifi (インターネットには接続されません) に接続されます。annyang.min.js ファイルをダウンロードしたので、これが問題になるとは思いませんでした。アプリの他の部分にインターネット接続は必要ありません。ただし、ドローンに接続してサーバーを起動するたびに、承認を何度押しても、マイクを使用する許可を繰り返し要求します (アプリが明らかに動作を停止する時点で拒否をクリックしない限り)。http
私の知る限り、サーバーはまだ使用されており、ページは継続的にリロードされていません (これにより、再度要求される可能性があります)。マイクを使用しようとしている他のタブは開いていません。
この問題が発生する理由はありますか? また、それを修正する最善の方法は何ですか? 問題はインターネット接続の欠如が原因であるという予感がありますが、それが問題を引き起こす理由に関する情報は見つかりません. この問題 (または以前に同様の問題) を経験した人はいますか? もしそうなら、どのように修正しましたか?
TL;DR:
音声認識コードは、ドローンの Wi-Fi に接続していないときに機能し、接続すると機能しなくなります。
すべてのコードはgithubにあります。何か明確にできることがあれば教えてください。
javascript - this.set は関数ではありません
次のようなコードがあります。
ws2812.speech("");
コンソール内で実行すると、すべてが機能します。ただし、Annyang
ライブラリと組み合わせると、次のようになります。
どうしたの?
[編集]
コマンドは次のように追加されます。
具体的には、annyang 内で、次の行が失敗します。
これを回避する唯一の方法でthis
置き換えることはできますか?ws2812
javascript - 音声をテキストに変換する安養
annyang を使用して音声をテキストに変換しようとしていますが、いくつか問題が発生しました。動作しますが、まだ動作していないことがいくつかあります。まず、ユーザーが言ったことをアラート関数に渡す方法を知りたいです。次に、ユーザーが話し終わったときにアンニャン機能を終了する方法を教えてください。最後に、マイクの許可と禁止のプロンプトが一度表示されると、何度も表示されないようにする方法を知りたいです。
javascript - Annyang 音声認識ライブラリを介して複数のパラメーター (*val) を入力するための最良/推奨される方法は何ですか?
Annyang コマンドは *val を使用してコールバック関数に値を入力します。複数の項目を入力したい場合はどうすればよいですか?
たとえば、ユーザー入力に基づいてフォームを更新したいとします。だから私は次のようなコマンドを持つことができます
val には、フィールドに割り当てることができる Name 値が含まれます。しかし、フォームに多くのフィールドがある場合、すべてのフィールドに対してこのようなコマンドを書くのは面倒です。代わりに、私は
このコマンドは、FieldName と FieldVal の代わりに 2 つのパラメーターを返します。FieldName がページで使用可能なフィールドの有効な名前である場合、値を FieldVal で更新するか、コマンドを無視することができます。
これを実現する 1 つの方法は、もちろん、val を解析して最初に FieldName を取得し、次に次のようなコマンドから FieldVal を取得することです。
しかし、それが常にクリーンなソリューションになるとは思いません。
これを達成するための提案された方法はありますか?
javascript - Annyang: localhost からの使用方法
localhost から html/javascript アプリを実行しようとしました。このアプリは、Win7 PC の Chrome ブラウザで正常に動作する annyang 音声制御ツールを使用しています。
ウェブサイトへのコメント ( https://www.talater.com/annyang/ ) は次のようにアドバイスしています:-
localhost で実行したい場合は、「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を使用すると、「Web ページを利用できません」というエラーが発生します。
これを機能させる方法について誰か提案がありますか? (私はフェイスブックをやっていないので、ウェブサイトで話すことはできません)。
編集1
これが私のHTMLページからの関連コードです(元の縮小された annyang.min.js を美化しました)
と
編集2
URL: localhost/myFile.html または URL: 127.0.0.1/myFile.html を使用すると問題なく動作します。しかし、同時にマイク アクセスを使用している他のブラウザー タブがあってはならないようです。
node.js - nodejs webkit (nw) アプリでの音声認識の使用が失敗する
nodejs Webkit アプリに音声認識を実装するために数日間作業しましたが、うまくいきませんでした。
ローカルの html ファイル デモを作成しようとしましたが、うまくいきませんでした。そのため、Apache を使用してデモをホストに配置しましたが、それでもうまくいきませんでした。次に、https を使用してローカルホストに接続しようとしましたが、デモでは機能しました。問題は、nodejs webkit アプリを https 環境で実行する方法がわからないことです。
デモに annyang ライブラリを使用し、動作するはずのサイトから例をコピーしたことに注意してください。
助けてくれてありがとう:)
更新 1: edwan が正当に要求したように、ここに私の問題を示す基本的な簡単な例を示します。
このコードを nodejs Webkit 環境に配置すると、機能しません。また、ローカルのクロム環境またはhttpを使用するホストでも。httpsでのみ機能しました
javascript - アニャン addCommands
アンニャンをもっと賢くしたい。そこで、ユーザーの助けを借りてコマンドを追加することにしました。
リマインダーの annyang コマンドは次のように初期化されます。
フォームを使用して、ユーザーが言いたいことと関連する機能を取得します。
しかし、この関数を次のように追加したい場合:
Annyang のコメント: コマンドが正常にロードされました: 音声
newCommand をデバッグすると、オブジェクト {speech: "mySuperFunction"} が得られます。
問題を参照してください。JS は、含まれる文字列ではなく、関数名を解釈します。
手伝って頂けますか ?ありがとう !