色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

怎樣通過樹莓派上的Asterisk PBX運行Google語音助手

454398 ? 來源:網絡整理 ? 作者:網絡整理 ? 2019-11-20 16:52 ? 次閱讀

第1步:要求

Raspberry Pi零,B +,2或3(請參見以下說明)

Raspian已安裝Jessie并已通過Internet訪問

Pi以太網或Wifi(最好是直接以太網)(最好是直接以太網)

SSH訪問GitHub上的

軟件:

https://github.com/rgrokett/RaspiAsteriskGoogle

一個SIP/VOIP電話(例如Grandstream GXP1620)或SoftPhone,例如:http://www.asteriskguru.com/tutorials/xlite_softp 。..點擊HTTP://www.zoiper.com/en/voip-softphone/download/z 。..

注意 :盡管此方法可在Raspi Zero W上使用,但在Raspberry Pi 3上可運行得更好。

該項目假定您具有Raspian命令行,SSH的一些知識以及Asterisk PBX的一些初步知識。 。它還假定您具有配置了Raspian Jessie(精簡版的Raspberry Pi)的Raspberry Pi,并已連接到網絡。這不需要在Pi上使用GUI,因此假定無頭操作和登錄提示,終端或SSH訪問。

步驟2:Pi上的Asterisk PBX配置

怎樣通過樹莓派上的Asterisk PBX運行Google語音助手

Pi需要出站Internet訪問,但Asterisk PBX不需要任何外部SIP語音提供程序。該項目不使用呼入或呼出語音呼叫。

如果您從未使用過Asterisk,則可能應該查閱一些Asterisk教程。不過,這里不需要大多數信息。 http://www.asterisk.org/

請注意,它不使用“ FreePBX for Raspberry Pi”軟件包,而只使用Raspian命令行安裝版本。

該項目應在CLEAN RASPIAN JESSIE安裝上完成。使用現有安裝可能已經進行了一些修改,從而影響了Asterisk或Google SDK。

1)在Raspberry Pi上安裝Asterisk PBX:

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install asterisk git

依賴項很少,所以可能要花點時間!

2)從Github檢索項目文件:(https://github.com/rgrokett/RaspiAsteriskGoogle)

$ cd /home/pi

$ git clone https://github.com/rgrokett/RaspiAsteriskGoogle.g.。.

3)更新Asterisk PBX,以添加此項目使用的SIP和分機條目。

$ cd /home/pi/RaspiAsteriskGoogle

$ bash 。/install.sh

注意 :

您將看到“ No client_secret.json…”和“ No Google API OAUTH…”錯誤消息,因為這些消息將在以后進行設置。暫時暫時忽略它們。

可以多次執行install.sh腳本。它將驗證安裝。

步驟3:將VOIP(SIP)電話添加到Asterisk PBX

4 )將SIP電話添加到您的星號。由于有很多方法可以做到這一點,所以我展示了一個通用配置。每個電話都有不同的選項,但這應該是所有需要的。

有關SIP(VOIP)軟電話,請參閱前面的“要求”部分。 (基于PC的軟件。需要帶麥克風的耳機)或使用物理VOIP電話,例如Amazon的Grandstreams。低于50美元的廉價手機就可以了。

這將向Asterisk添加一個分機號為5310的SIP電話。請記住,這不包括呼入或呼出電話。僅內部通話。

使用以下選項配置您的SIP電話。大多數其他電話選項均未使用,因此通常可以忽略。

SIP Phone options:

SIP Proxy Server: 192.168.1.XX 《- The IP Address of your Raspi Pi $ hostname –I

Domain/Realm/Registration:

Username: 5310

Password: {blank}

請注意,您需要在電話的“擴展”部分中輸入SIP代理IP(即Pi的IP地址)。 (某些電話具有多個分機,但該項目僅需要1。)

5)將SIP/VOIP電話摘機,看看是否可以獲得撥號音。

如果是這樣,請嘗試在VOIP電話上撥打 1000#。您應該獲得一個內置演示。

Debugging:

If you don’t get dial tone, your SIP Phone isn’t registering to your Asterisk server. Try the following:

a. Reboot the Raspberry and then the SIP phone to see if they reconnect.

b. Verify the files above are edited correctly.

c. Access Asterisk from command line:

$ sudo asterisk –r

CLI》 sip show peers

This should show your sip phone’s IP and status

Watch out for firewalls, particularly if using a softphone!

d. Verify IP addresses of the Sip Phone and Raspi and be sure you can ping the phone from the Raspi.

e. If still an issue, turn on SIP Debugging:

CLI》 sip set debug on

This will display SIP connection attempt messages. If you see nothing after a few minutes, then your SIP Phone isn’t even trying to talk to Asterisk. You need to dig into the SIP Phone’s setup instructions.

f. Asterisk log messages go to /var/log/asterisk/messages. But note there can be lots of nasty looking messages, most are for unused/unneeded features. So it can be difficult to decipher.

g. Google is your friend. Cut/paste any error messages you see into it to learn more!

步驟4:Google Assistant SDK安裝

如果您已成功獲得撥號音并“恭喜”演示,那么您現在可以使用Asterisk PBX!

現在,您需要在Google Developers網站上創建一個(免費)帳戶,并安裝其適用于Raspberry Pi的Python Google Assistant SDK。

摘錄自Google Assistant SDK入門Raspberry Pi和Python:

https://developers.google.com/assistant/sdk/protot 。..

配置Google Developer Project

1)轉到Google Projects頁面:https://console.cloud.google.com/project

您可能需要創建Google Developers帳戶或使用現有的Google( gmail)登錄帳戶憑據。

2)創建一個名為“ AsteriskSpeechAPI”的新項目(或您想要的任何所需名稱)

3)為該項目啟用Google Assistant API您選擇了:

https://console.developers.google.com/apis/api/emb 。..

點擊啟用

4)創建一個Oauth客戶端ID,其步驟如下:

a)創建客戶端ID:https://console.developers.google.com/apis/creden 。..

b)如果詢問,在上方輸入與上面相同的項目名稱OAuth同意屏幕選項卡上的產品名稱,然后單擊保存。

c)單擊其他并為客戶ID提供一個名稱(再次與上面相同)沒關系)。

d)單擊創建。將會出現一個對話框,顯示您的客戶端ID和密碼。

無需記住或保存該ID,只需關閉對話框即可。

e)單擊最右側的向下箭頭。屏幕的頂部,以名為( client_secret_XXXX.json )

的JSON文件的形式下載客戶端ID和密碼(要再次重新獲取憑據,請轉到Google Assistant API管理器,上面的第3步,然后選擇憑據,然后單擊您項目的下載圖標。)

f)將 client_secret_XXXX.json 文件復制到/home/pi/client_secret .json 在您的Raspi上。

(將其重命名為 client_secret.json )

您可以使用剪切/粘貼來執行此操作,如果您愿意:

$ cd /home/pi

$ nano /home/pi/client_secret.json

粘貼到編輯器中并保存

5)Google要求您與Google共享某些活動數據以使用其SDK。助手需要此信息才能正常運行。 (一旦不再希望使用Assistant SDK,可以再次關閉。)

a)轉到“活動控件”頁面:https://myaccount.google.com/activitycontrols

b)設置以下 ON (藍色):

? Web & App Activity

? Location History

? Device Information

? Voice & Audio Activity

第5步:安裝并編譯Google Assistant Pi for Pi

1)獲取Google Assistant Python SDK軟件并安裝:

在您的Raspi上,執行以下操作:

sudo apt-get update

sudo apt-get install python-dev

sudo apt-get install portaudio19-dev libffi-dev libssl-dev

sudo apt-get install python-pip

sudo python -m pip install --upgrade PySocks

sudo python -m pip install --upgrade google-auth-oauthlib[tool]

sudo python -m pip install --upgrade google-assistant-sdk

注意:在Pi Zero上,該代碼可用于大約一個小時或更長時間,其中包含很多消息!

完成后,重新啟動Pi:

$ sudo reboot

步驟6:設置Google OAUTH授權

1 )在您的Pi上,執行以下操作:

$ python -m google-oauthlib-tool --client-secrets /home/pi/client_secret.json --scope https://www.googleapis.com/auth/assistant-sdk-prototype --save --headless

您應該看到以下內容:

請轉到以下URL:https://。.. Enter授權代碼:

復制返回的長網址并將其粘貼到您的瀏覽器(任何PC上的任何瀏覽器)中。

選擇用于設置項目的帳戶。

批準后,瀏覽器中將顯示一個代碼,例如“ 4/XXXX ”。復制此代碼并將此代碼粘貼到Raspi終端中。它應顯示如下:

已保存的憑證(和路徑)

如果相反,它將顯示: InvalidGrantError 輸入了無效的代碼。請重試,請小心復制并粘貼整個代碼。

這會將您的oauth令牌保存到/home/pi/.config/googlesamples-assistant/assistant_credentials.json

第7步:測試Google Assistant SDK

1)執行測試程序:

$ cd /home/pi/RaspiAsteriskGoogle

$ bash 。/test.sh

您應該會看到類似以下的內容。

如果成功,這將發送一個將音頻文件in.wav記錄到Google助手,并收到音頻文件out.wav響應。您可以將它們復制到PC上以在裝有揚聲器的Raspi上播放或播放。

Found client_secret.json OK

Found OAUTH assistant_credentials.json OK

Sending sample to Google Assistant API.。.

DEBUG:google.auth.transport.requests:Making request: POST https://accounts.google.com/o/oauth2/token

DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): accounts.google.com

DEBUG:urllib3.connectionpool:https://accounts.google.com:443 “POST /o/oauth2/token HTTP/1.1” 200 None

INFO:root:Connecting to embeddedassistant.googleapis.com

INFO:root:Recording audio request.

DEBUG:root:ConverseRequest: config {

audio_in_config {

encoding: LINEAR16

sample_rate_hertz: 16000

}

audio_out_config {

encoding: LINEAR16

sample_rate_hertz: 16000

volume_percentage: 50

}

}

DEBUG:root:ConverseRequest: audio_in (6400 bytes)

DEBUG:root:ConverseRequest: audio_in (6400 bytes)

DEBUG:root:ConverseRequest: audio_in (6400 bytes)

DEBUG:root:ConverseRequest: audio_in (6400 bytes)

DEBUG:root:ConverseRequest: audio_in (6400 bytes)

DEBUG:root:ConverseRequest: audio_in (6400 bytes)

DEBUG:root:ConverseRequest: audio_in (6400 bytes)

DEBUG:root:ConverseRequest: audio_in (6400 bytes)

DEBUG:root:ConverseRequest: audio_in (4096 bytes)

DEBUG:root:ConverseRequest: audio_in (3200 bytes)

…(more)

DEBUG:root:ConverseResponse: event_type: END_OF_UTTERANCE

INFO:root:End of audio request detected

DEBUG:root:ConverseResponse: result {

spoken_request_text: “what is the current weather”

}

DEBUG:root:ConverseRequest: audio_in (3200 bytes)

INFO:root:Transcript of user request: “what is the current weather”。

INFO:root:Playing assistant response.

DEBUG:root:ConverseResponse: result {

conversation_state: “ &C#590…6f7-0000-2231-932c-94e…3c9ba?:Kj93Nlg1eVpmWWMGlLSURpYUpWdkpXb2hRUW43YnNIcmdBQUFDQ1RjV0… ”

microphone_mode: CLOSE_MICROPHONE

}

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

DEBUG:root:ConverseResponse: audio_data (1600 bytes)

…(more)

DEBUG:root:ConverseResponse: audio_data (1044 bytes)

INFO:root:Finished playing assistant response.

AUDIO FILES:

-rw-r--r-- 1 pi pi 55340 Apr 30 17:02 in.wav

-rw-r--r-- 1 root root 252288 May 1 14:51 out.wav

If you have AUDIO on this Pi:

Verify Audio with:

$ speaker-test -t wav

Playback audio from Google:

$ aplay --format=S16_LE --rate=16k --file-type=wav out.wav

步驟8:現在,您可以嘗試使用Asterisk PBX Google助手!

1。再次重新運行install.sh腳本,以確保OAUTH和客戶端JSON正常:

$ cd /home/pi/RaspiAsteriskGoogle

$ bash 。/install.sh

2。重新啟動Raspberry Pi。

3。使用您的SIP電話,撥號6666#

您應該先撥打音頻,振鈴,然后再輸入語音提示。

如果要這樣做,那就太好了!嘗試向Google提問:

·現在幾點了?

·喬治亞州亞特蘭大的天氣如何?

·地球有多大?

·在英國倫敦幾點幾點了?

·告訴我一個笑話

·等等……

注意:在Pi零,響應時間有5到7秒的延遲,部分原因是python SDK API開銷。更快的Pi可以減少這種情況。

完成后就掛斷電話。

第9步:故障排除指南

1)您確實獲得了撥號音,并能夠撥打Asterisk演示程序(1000#)了是嗎?

2)在AGI程序中打開調試模式:

$ cd /home/pi/RaspiAsteriskGoogle

$ nano google.agi

Change my $debug = 0;

To my $debug = 1;

Save

$ bash 。/install.sh

3)訪問Asterisk CLI進行調試:

$ sudo asterisk -r

CLI》 agi set debug on

CLI》 core set debug 4

4)再次撥打 6666#并查看消息。

5)您可以查看/home/pi/RaspiAsteriskGoogle/google.agi 用于將調試消息與代碼匹配。請注意,除了消息

以外,Asterisk還顯示許多其他調試信息。如果對Asterisk extensions.conf或sip.conf進行更改,則應重新啟動Asterisk

CLI》 core restart now

如果您對google.agi進行了更改,請再次執行安裝腳本以進行安裝

$ bash 。/install.sh

6)如果電話響了無人接聽,則extensions.conf在6666部分有問題。

如果您手動編輯了extensions.conf,則必須使用

CLI》 dialplan reload

重新加載。7)如果電話應答但沒有音頻,請確認星號目錄中的文件由星號userid擁有:

sudo chown asterisk:asterisk /usr/share/asterisk/agi-bin/google.agi

sudo chown asterisk:asterisk /usr/share/asterisk/sounds/custom/google*.sln

8)查找在“ /tmp ”目錄中創建的音頻文件:

$ ls -l /tmp

-rw-rw---- 1 asterisk asterisk 32266 May 3 02:01 google_audio3424_8k.sln

-rw-rw---- 1 asterisk asterisk 73004 May 3 02:01 google_audio3424_in.wav

-rw-rw---- 1 asterisk asterisk 64576 May 3 02:01 google_audio3424_out.wav

-rw-rw---- 1 asterisk asterisk 6124 May 3 02:01 google_audio3441.wav

google_audio3441.wav -- Audio of your question

google_audio3424_in.wav -- Audio formatted for Google

google_audio3424_out.wav -- Audio response from Google

google_audio3424_8k.sln -- Audio formatted for Asterisk

9)如果您的問題沒有得到Google的答復,請再次運行test.sh腳本以驗證OAUTH令牌和SDK是否正確。

$ bash 。/test.sh

如果其他所有方法都失敗,請執行步驟通過上面的命令返回,以確保您沒有錯過任何一個步驟!

步驟10:結果

我發現Google Assistant的語音識別功能

當與SIP電話和Asterisk PBX一起使用時,p》

非常好。無論是在聽筒還是免提電話上,識別度都非常好。 Raspberry Pi Zero可以處理Asterisk音頻處理,但運行SDK的速度較慢。當然,沒有使用Home控件或Wake Word功能,Google Assistant可以處理的各種問題/答案等同于Google Home?。

責任編輯:wv

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 樹莓派
    +關注

    關注

    116

    文章

    1706

    瀏覽量

    105610
  • 語音助手
    +關注

    關注

    7

    文章

    235

    瀏覽量

    26799
收藏 人收藏

    評論

    相關推薦

    干貨來嘍!實用樹莓派Linux編譯指南

    不友好,有沒有好的解決辦法? 今天來分享一下我的私藏干貨——樹莓派Linux編譯。編譯好之后,開發板只需插到樹莓派上連接電腦就可以直接用了,極其方便。 本文以樹莓派為例,其他板子只要帶
    的頭像 發表于 12-18 16:31 ?52次閱讀
    干貨來嘍!實用<b class='flag-5'>樹莓</b>派Linux編譯指南

    實用樹莓派Linux編譯指南,打工人必備!

    不友好,有沒有好的解決辦法? 今天來分享一下我的私藏干貨——樹莓派Linux編譯。編譯好之后,開發板只需插到樹莓派上連接電腦就可以直接用了,極其方便。 本文以樹莓派為例,其他板子只要帶
    的頭像 發表于 12-17 16:19 ?557次閱讀
    實用<b class='flag-5'>樹莓</b>派Linux編譯指南,打工人必備!

    如何在樹莓派上安裝Docker容器

    1. 準備工作 在開始之前,請確保你的樹莓派已經安裝了最新版本的Raspberry Pi OS。如果沒有,請按照以下步驟操作: 下載最新的Raspberry Pi OS鏡像:訪問 Raspberry
    的頭像 發表于 11-11 11:38 ?506次閱讀

    樹莓派gui開發用什么ide

    樹莓派(Raspberry Pi)是一款功能強大的微型計算機,可以運行多種操作系統,如Raspbian、Ubuntu等。在樹莓派上進行GUI(圖形用戶界面)開發,可以使用多種集成開發環
    的頭像 發表于 08-30 16:49 ?850次閱讀

    三星Bixby語音助手即將進軍家電產品,實現自然語言交互

     三星宣布,Bixby語音助手即將全面進駐BESPOKE AI系列家電,用戶可通過自然語言對家電進行語音控制。Bixby作為三星智能手機、手表、平板及電視的核心功能,如今將拓展至更多家
    的頭像 發表于 08-26 17:20 ?754次閱讀

    OpenAI向部分用戶推出ChatGPT語音助手

    據智通財經APP報道,OpenAI正在為其部分尊貴的用戶們精心呈現備受矚目的ChatGPT語音助手,盡管此款助手原定于今年6月底的發布因為可能存在的安全隱患問題而被暫時擱置。
    的頭像 發表于 07-31 15:41 ?467次閱讀

    亞馬遜在語音助手的競賽中上遠遠落后

    在AI浪潮席卷全球之際,科技巨頭們無不爭先恐后,力圖搶占先機。然而,在語音助手的競賽中,曾經的領先者亞馬遜可能即將獲得最后一名。 繼蘋果在其WWDC 2024大會上發布了一款新的“Apple
    的頭像 發表于 06-18 16:54 ?1320次閱讀

    PBX的相關介紹

    PBX是什么東西? 云PBX是一種商務電話系統,通過互聯網托管和供電,而不是本地局域網搭建。云PBX是一種云通訊解決方案,與傳統PBX不同
    的頭像 發表于 04-24 15:47 ?328次閱讀

    PBX的介紹

    PBX是什么? 云PBX,也被稱為基于云的專用交換機,是一個植根于互聯網的虛擬PBX系統。它的主要特點是通過互聯網進行托管和供電,而不是在本地局域網上搭建。云
    的頭像 發表于 03-26 16:20 ?467次閱讀
    云<b class='flag-5'>PBX</b>的介紹

    Google Gemma優化后可在NVIDIA GPU上運行

    2024 年 2 月 21 日,NVIDIA 攜手 Google 在所有 NVIDIA AI 平臺上發布面向 Gemma 的優化功能,Gemma 是 Google 最先進的新型輕量級 2B 和 7B 開放語言模型,可在任何地方運行
    的頭像 發表于 02-25 11:01 ?461次閱讀

    智能語音助手在醫療行業的應用與挑戰

    介紹語音數據集在醫療智能語音助手中的應用、面臨的挑戰以及未來的發展趨勢。 二、語音數據集在醫療智能語音
    的頭像 發表于 01-19 17:37 ?666次閱讀

    智能語音助手在旅游行業的應用與挑戰

    詳細介紹語音數據集在旅游智能語音助手中的應用、面臨的挑戰以及未來的發展趨勢。 二、語音數據集在旅游智能語音
    的頭像 發表于 01-19 17:30 ?791次閱讀

    智能語音助手在教育行業的應用與挑戰

    介紹語音數據集在教育智能語音助手中的應用、面臨的挑戰以及未來的發展趨勢。 二、語音數據集在教育智能語音
    的頭像 發表于 01-19 17:21 ?848次閱讀

    智能語音助手在醫療行業的應用與挑戰

    介紹語音數據集在醫療智能語音助手中的應用、面臨的挑戰以及未來的發展趨勢。 二、語音數據集在醫療智能語音
    的頭像 發表于 01-18 16:41 ?523次閱讀

    語音數據集在智能語音助手中的應用與挑戰

    。本文將詳細介紹語音數據集在智能語音助手中的應用、面臨的挑戰以及未來的發展趨勢。 二、語音數據集在智能語音
    的頭像 發表于 01-18 15:46 ?386次閱讀
    主站蜘蛛池模板: 帅哥操帅哥| 最近2019中文字幕免费版视频| 欧美高清xxx| 快乐激情站| 老师洗澡让我吃她胸的视频| 午夜福利影院私人爽爽| 国产一区二区三区在线看片| 一二三四高清中文版视频| 性欧美xxxxporn| 女生下面免费看| 美女激清床上戏大全| 麻豆沈芯语| 免费欧美大片| 欧美阿v在线天堂| 欧美91精品久久久久网免费| 挠黑色超薄丝袜脚心vk40分钟| 国产精品婷婷久青青原| 2224x最新网站| 无码欧美毛片一区二区三在线视频| 日韩做A爰片久久毛片A片毛茸茸| 秋霞伦理电影在2017韩国在线伦| 奇虎成人网| 久久午夜夜伦鲁鲁片无码免费| 九九热这里只有精品2| 久久视频这里只精品99热在线观看 | 久久综合久综合久久鬼色| 久久国产免费| 伦理在线影院伦理电影| 男人吃奶摸下弄进去好爽| 日本XXXXZZX片免费观看| 日韩综合网| 亚洲精品电影久久久影院| 妻子的秘密HD观看| 三级黄色在线视频中文| 亚洲AV 中文字幕 国产 欧美| 日日AV夜夜添久久奶无码| 十分钟免费观看大全视频| 亚洲国产欧美在线看片| 中国女人hd| 伊人国产在线观看| 99国产在线视频有精品视频|