home-assistant.github.io/addons/google_assistant/index.html
2017-10-21 23:33:53 +00:00

208 lines
12 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Google Assistant - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Enhance your Hass.io installation with Google Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/addons/google_assistant/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Google Assistant">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/addons/google_assistant/">
<meta property="og:type" content="article">
<meta property="og:description" content="Enhance your Hass.io installation with Google Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Google Assistant">
<meta name="twitter:description" content="Enhance your Hass.io installation with Google Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection, print" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header class='site-header'>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/docs/">Docs</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
<li><a href='#' class='show-search'><i class="icon-search"></i></a></li>
</ul>
</nav>
<div class='search-container' style='display: none'>
<div class='search'>
<i class="icon-search"></i>
<input id='search' placeholder='Search the docs…'>
<a href='#' class='close'><i class="icon-remove-sign"></i></a>
</div>
</div>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/_addons/google_assistant.markdown'>Edit this page on GitHub</a></div>
<header>
<h1 class="title indent">
Google Assistant
</h1>
</header>
<hr class="divider">
<p><a href="https://assistant.google.com/">Google Assistant</a> is an AI-powered voice assistant that runs on the Raspberry Pi and x86 platforms and interact over <a href="https://api.ai/">api.ai</a> with Home-Assistant. You can also use <a href="https://actions.google.com/">Google Actions</a> to extend its functionality.</p>
<p>To enable access to the Google Assistant API, do the following:</p>
<ol>
<li>In the <a href="https://console.cloud.google.com/project">Cloud Platform Console</a>, go to the Projects page. Select an existing project or create a new project</li>
<li>Open the project. In the top of the page search for Google Assistant API or use <a href="https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview">this link</a> and enable it.</li>
<li>Create an <a href="https://console.developers.google.com/apis/credentials/oauthclient">OAuth Client ID</a>, pick type “Other”, click “Create” and download the JSON file by clicking the Download JSON button on the right side.</li>
</ol>
<p>Now install and activate the <a href="/addons/samba/">Samba</a> add-on so you can upload your credential file. Connect to the “share” Samba share and copy your credentials over. Name the file <code class="highlighter-rouge">google_assistant.json</code>.</p>
<p>Now its time to start Google Assistant for the first time. When the Google Assistant add-on starts, it will output your audio devices in the “Logs” card. You might have to hit “refresh” to get the latest logs:</p>
<div class="language-text highlighter-rouge"><pre class="highlight"><code>**** List of PLAYBACK Hardware Devices ****
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Microphone [Yeti Stereo Microphone], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
</code></pre>
</div>
<p>You need to use this information to point the add-on at the right speakers and microphone. The information describes different cards and devices. On a Raspberry Pi 3, card 0 - device 0 is the built-in headset port, card 0 - device 1 is the HDMI port. In the example above, the USB microphone showed up as card 1 - device 0.</p>
<p>Find the microphone and speakers that you want to use and note down their device and card number. We will need that to configure the add-on options <code class="highlighter-rouge">mic</code> (microphone to use) and <code class="highlighter-rouge">speaker</code> (speaker to use). The format for these options is <code class="highlighter-rouge">&lt;card #&gt;,&lt;device #&gt;</code>. Change the configuration options and click save.</p>
<p>The next step is to authenticate your Google account with Google Assistant. Start the add-on and click on the “OPEN WEB UI” button to start authentication.</p>
<h3>Add-On configuration</h3>
<p>Configuration example that uses the USB microphone and use the built-in headset audio output on the Raspberry Pi. Note that card and device numbers can differ on your device.</p>
<div class="language-json highlighter-rouge"><pre class="highlight"><code><span class="p">{</span><span class="w">
</span><span class="nt">"mic"</span><span class="p">:</span><span class="w"> </span><span class="s2">"1,0"</span><span class="p">,</span><span class="w">
</span><span class="nt">"speaker"</span><span class="p">:</span><span class="w"> </span><span class="s2">"0,0"</span><span class="p">,</span><span class="w">
</span><span class="nt">"client_secrets"</span><span class="p">:</span><span class="w"> </span><span class="s2">"google_assistant.json"</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre>
</div>
<p>Configuration variables:</p>
<ul>
<li><strong>mic</strong>: This is the hardware address of your microphone. Look at the add-on output</li>
<li><strong>speaker</strong>: This is the hardware address of your speakers. Look at the add-on output</li>
</ul>
<h3><a class="title-link" name="home-assistant-configuration" href="#home-assistant-configuration"></a> Home Assistant configuration</h3>
<p>Use the Home Assistant <a href="/components/apiai/">api.ai component</a> to integrate the add-on into Home Assistant.</p>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='section'>
<h1 class="title delta">Topics</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/hassio/'>Hass.io </a>
<ul>
<li><a href='/hassio/installation/'>Installation </a></li>
<li><a href='/addons/'>Available add-ons </a></li>
<li><a href='/hassio/installing_third_party_addons/'>Installing third-party add-ons </a></li>
</ul>
</li>
</ul>
<ul class='divided sidebar-menu'>
<li>
Advanced
<ul>
<li><a href='/hassio/zwave/'>Z-Wave </a></li>
<li><a href='/hassio/external_storage/'>External storage </a></li>
<li><a href='/hassio/run_local/'>Execute local things </a></li>
</ul>
</li>
</ul>
<ul class='divided sidebar-menu'>
<li><a href='/developers/hassio/addon_development/'>Looking to create an add-on?</a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a> (no support!).<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png" /></a><br /><span xmlns:dct="http://purl.org/dc/terms/" property="dct:title">home-assistant.io</span> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License</a>.
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.css" />
<script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
<script type="text/javascript">
docsearch({
apiKey: 'ae96d94b201c5444c8a443093edf3efb',
indexName: 'home-assistant',
inputSelector: '#search',
debug: false // Set debug to true if you want to inspect the dropdown
});
document.querySelector('.search .close').addEventListener('click', function(ev) {
ev.preventDefault();
document.querySelector('.search-container').style.display = 'none';
});
document.querySelector('.show-search').addEventListener('click', function(ev) {
ev.preventDefault();
document.querySelector('.search-container').style.display = 'block';
document.getElementById('toggle').checked = false;
document.querySelector('.search-container input').focus();
});
</script>
</body>
</html>