From 2e00a6226861dc239c536c7f81223c25f8eeecd7 Mon Sep 17 00:00:00 2001
From: Mahasri Kalavala
+
+If you are running a database server instance on the same server as Home Assistant then you must ensure that this service starts before Home Assistant. For a Linux instance running Systemd (Raspberry Pi, Debian, Ubuntu and others) then you should edit the file /etc/systemd/system/home-assistant@homeassistant.service as root (e.g. sudo nano /etc/systemd/system/home-assistant@homeassistant.service) and add the service - for PostgreSQL:
-+```
-+[Unit]
-+Description=Home Assistant
-+After=network.target postgresql.service
-+```
-+
+In order for the sensors to work the hikvision user must have the 'Remote: Notify Surveillance Center / Trigger Alarm Output' permission which can be enabled from the user managment section of the web interace. Also the 'WEB Authentication' needs to be set to 'digest/basic' in the security / authentication section. +
+ For example, if you configure a camera with the name "Front Porch" that has motion detection and line crossing events enabled to notify the surveillance center the following binary sensors will be added to Home Assistant: ``` From 5c324c2f365e29d6186a740a940368417910aa37 Mon Sep 17 00:00:00 2001 From: Aaron Bach+It is important to ensure the ZIP code is quoted if it starts with a 0. Unquoted +ZIP codes that start with 0 will cause errors. +
+ ## {% linkable_title Available Metrics %} The following metrics can be monitored: From c7060c75152eaddb0bf5c10eae657b2dc97c7e44 Mon Sep 17 00:00:00 2001 From: Jon Griffith <32052562+arretx@users.noreply.github.com> Date: Wed, 28 Feb 2018 15:49:02 -0700 Subject: [PATCH 04/61] Typo (#4785) --- source/_components/sensor.statistics.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.statistics.markdown b/source/_components/sensor.statistics.markdown index 01abb92ca24..a5b126fac4a 100644 --- a/source/_components/sensor.statistics.markdown +++ b/source/_components/sensor.statistics.markdown @@ -16,7 +16,7 @@ ha_release: "0.30" The `statistics` sensor platform consumes the state from other sensors. Besides the maximum and the minimum values, the total, mean, median, variance and the standard deviation are also available as attributes. If it's a binary sensor then only state changes are counted. -If you are running the [recorder](/components/recorder/) component, on startup the data is read from the database. So after a restart of the platform, you will immediately have data available. If you're using the [history](/components/history/) component, this will automatically also start the recoder component on startup. +If you are running the [recorder](/components/recorder/) component, on startup the data is read from the database. So after a restart of the platform, you will immediately have data available. If you're using the [history](/components/history/) component, this will automatically also start the `recorder` component on startup. If you are *not* running the `recorder` component, it can take time till the sensor starts to work because a couple of attributes need more than one value to do the calculation. To enable the statistics sensor, add the following lines to your `configuration.yaml`: From d043e5429f8606629ed7265f260d41e1004bd7cc Mon Sep 17 00:00:00 2001 From: Paul Jimenez
The translation of the Home Assistant frontend is still a work in progress. More phrases will be available for translation soon.
diff --git a/source/images/frontend/lokalise-multilanguage-view-button.png b/source/images/frontend/lokalise-multilanguage-view-button.png
deleted file mode 100644
index 26872d4726672e4c118d31e330ba18b1d94ad937..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 3624
zcma)<`#%%@7st1m%NS$K-7uH%aT(>>F!$SB8Zxysm&(0SM3y#YV`6S;-6i`l$*mIV
z!
+If the platform fails to load because it could not install its requirement, install cmake: `sudo apt-get install cmake`.
+
+It is recommended to use the [advanced guide](/docs/installation/raspberry-pi/) which allows for the installation to run as a `homeassistant` user. The steps below may be shorter but some users find difficulty when applying updates and may run into issues.
+
From 5cf6c0b432d3457c2d930767f38fba04e9b6c930 Mon Sep 17 00:00:00 2001
From: DubhAd
-
+
From the Hass.io main panel open the add-on store.
-
-Add the URLs of repositories (one per line) and then press "Save". A new card for the repository will appear.
+
+Add the URL of the repository and then press "Add". A new card for the repository will appear.
- Starting 0.42, it is no longer possible to listen for event `homeassistant_start`. Use the 'homeassistant' [platform](docs/automation/trigger) instead. + Starting 0.42, it is no longer possible to listen for event `homeassistant_start`. Use the 'homeassistant' [platform](/docs/automation/trigger) instead.
### {% linkable_title Event `homeassistant_stop` %} From 040af0410ce2eff2ad2ead093f4c7b5a3bcb5ec8 Mon Sep 17 00:00:00 2001 From: Robin+Although these installation steps specifically mention a Raspberry Pi, you can go ahead and proceed on any Linux install as well. This guide is also referred to as the "Advanced Guide" for a virtual environment install. +
+ Connect to the Raspberry Pi over SSH. Default password is `raspberry`. You will need to enable SSH access. The Raspberry Pi website has instructions [here](https://www.raspberrypi.org/documentation/remote-access/ssh/). @@ -61,7 +65,13 @@ $ cd /srv/homeassistant $ python3 -m venv . $ source bin/activate ``` -Once you have activated the virtual environment you will notice the prompt change and then you can install Home Assistant. +Once you have activated the virtual environment (notice the prompt change) you will need to run the following command to install a required python package. + +```bash +(homeassistant) homeassistant@raspberrypi:/srv/homeassistant $ python3 -m pip install wheel +``` + +Once you have installed the required python package it is now time to install Home Assistant! ```bash (homeassistant) homeassistant@raspberrypi:/srv/homeassistant $ pip3 install homeassistant From b0714317f9182c45561b8ae5603064dd4f495532 Mon Sep 17 00:00:00 2001 From: Daniel Shokouhid_T$R_m zQym5Y&Xn)-GxWsL9k3r<4Wo6b;BI^;3&SY8!Ls2NJ9atGtJHUg9V{k0a9;1DfUJ8) ztG-v%PL(mt?i-nVmW)#L6oY5;>rtMkiffMvH&_UX+=fVYB{}zphnKoWTcY!izFhq_ z?3)O5?ol0GYN%_`ou`7mC`8RmlRLq#A^L0CW0mszsiQ58IQ~m+zdpVl4)mdi()uio z!nenzZyU&bDCVcOzdU=z|v zgSQ!p@n`Z&bRz!tTIZsXl-$54fA;$;E`RWbiQ;eMWZC&~Z#&EJgHc0d*v0K$`t)i+ zJqlB2&dxe7;{v)~2V^fe3jdbskCg7z=RDI7`zphldAsSF^sugcH*4D7?!uNM*6nl5 zn&pG+l|JXSMW1672iF(9UwBbO^Jh18ofnhX7&?{Mut=bcoW%8676x;hJXMa&snAPR z ;!WnRUtL!uAqqXKf%RpNR)9p+6jVBBP{YN0fI+(JL^N;xoR- z48^duoGuf6-Ae*~uGr-9(pp2u?Y39j8K|<)3>?r2kc~ogNi$xDmPy^-z~wey`C&D? z@rv{#^+Ieph2nEPOjJyW|8Kyj%+rgRc-CUbVClmcNK|V7+aS{aXn9Oam!80_Dir}u zwQ*$9{|i?8Z%1qkNIX`euxW>8j5{NkBPN(?;idhCBf0Ym37`PB4ExIxc9K}XLx&|? z2so~x!7_1>X#1YEM_pOCy5g(^^Ar%1^1v2eP0xox;%Jq$UqcS60J4`vTI)dJI;8_l zh>v7r>4HdY-94B5j_KapKeAORb;8>q?!o~;c3XiK`i;b=y7cZ-Xz?CR)k>*fMtAoE zvfT=l(Tnh-E&V)xZe?$<%SrjVyDvy@D;57aB_mv5oe^EBZ(_k7blP)F!g{5kCh-Ny z{x`ipPinA`B7A$+_U|MNL0+;@xJ<7;BQ5EamIR(v5>=unFM64*I)4mP*8)7rCRrH- z?Vduv?5{8pLGI`Ao?dHPwahAs+Nrb24JuR&!J36y)DNO`T(J_N6pcv{P@Y|e{M!Ka ztrC)ZQ^b{@_I;9)i;ka`W>8>>=0Ev>cWMD$_FmO6BB2qvyEgslfm}L{D2NmB6d6e( z7D0n$ss9&`VCnc&0wQhfjPvwBZcjv~BjyLr4iuU ~ z-Sv4xs3=&B(ry1Tav;p~m@YttaG@B0Gj* }kdAUdr70pvZ%R{&bO_amz=44D8iG{O13?i`=}J*C)DS{f z5RgPf=@J48gcgbf5=sc%&H2VR#{Ku+JMNF{>^1kCb3M;obG4ajX>P>DA;bXy0GEmJ z4J!aR0s-Gs*pGwHJR^K0_{S1#Wuy;OeiK;)8?0V>W_kcngW}xtI0m*M4~!jy0pMik z;g6*!;O#w7$P;qYA;dc1en_}SkSAai >Uu|YRe9q@Sirhp=T4}x }z z3B0c~xQH3_;4m=&G6$aN>R;gFWiMlW#k0q%ALnBr*!hS3#joF<_|BG2!tvY`_&@LX z6RPiRJn|7MJC?wbn`#nq{mZX-mb2`!U%J02x%WnGPchvV6~#rFRU!5jE?Rq}m;K&b zlfmD#wkBG)_At#(E7VdW9RUD{6O?2D0318W_~T7u5VwN<5de5_ng{&!Bm- wA>ve+^yG4Up`Bxo?~9o+ntcPqTVzP{A4OpXgrK7nX8$qwj4W1tVo zn)^g9w=dgUP9;rOe9*KJoJ%&c+AR5a=nrIT$i9uL)LX|<`3Dpr?wl0g`*KMSk2i7w zoNN>oRYE-Xs}ky)`;LxNO}CeF$(pjcvJMr5SHYPZ pHO8i}z&sM )C$sy;Th!TEO*)nIBhKeq4%q4+A(@@pdFP4*1_RGo2g Q@(o*Q=ZM#{H}%%vYXw;&vBU(&*vlV~>g`5VR; zY)}UJt+#uba{=Od#{TLx0r002BKex$+z>TJ>-dY9Hr=V$>;d(SQ?os6nGqvF1?G~H zJIi`co~wC6AV){P EG{ XwpTU0j{Agb zLk%sE#zqsxuWp4we~x#z;7d~t^vl})9lG39PuzpyM+s$XC&Lpu%8C!9bqZWoMvhho zOMp3>5}+zFY8TKGE~HGT?T1bYIE>OC#%B$~X*qLC#PCagf17L1;%4B9E7T$J4Y`~_ zA@+DUMv+rrUv( J zd@=j=sX=}z<&3P`)cC$t?DpAsX7)AwwDTkH1Kqo;UR1Nk1oeIC!g^ bU(j@}i!{XUAImuKR}oQ!;>}%*D)X)4|o~ zMm>+Nivk4u`Qb*e3k9%?%Cilv5@yXidc{lN^44#p6AU`i1RYsrk@hgcJVWCBIJ>aW zCE#CS)8<$`=R`(Pb{--Z%J%V>t}*Z(-BT6W!3A0B3YKXM1y00(PG8D3m3#$7_Bq-M zBP^Gz!M)(#|6iMMdpY3bI|}Xux~{J3$oIlLHeI$^haz53G&y;l8Ko+vyn-#)e88+C zsRPHw^pC`ez1!^_ey8U#XVxA{NxZbW-Ku#xw6Xc5?!h4fScSPzp%9-mscj7XMp?qU zk#=738G ILG75}b>;2n1QSUUi9aPyv=D!ij2sMMQS;&Zc2}G5+ zf%8(pg6(|&zU9*Xq9CZ?*#+?;K*Hso8xZU^{yy^E;;^44!u`r;Wu&dJPF*2pT`$DG zFB?|gE^ROuJB{Tm!hjs3vi2Qkn_)7|dPN#lc}nJn7Ey*LFGA&!R}Zc>Ab?T>Fr>c8 z{Uj-h1#W^1aFnW&cD`!VrUO%}k_MOnI7(F)lqFtxmZ#<1$rR{)7_2=#%vyv32bphq zLd`e&FNwGP?d$zPBV57c1xCfJFMnYZ@u;N`NblIr7M05?`s>Tp#3^eFRI8QY#7 erk%ViDH#X{g{s?L%;~`!zAGntO%Z zrLkJUZJ^3;>zpqS$-WWSSQgIz8^pp!VRDMK>vI{!7gC{9XXniK9pTsaBGh)udhU%S z1Q5hFRGL9ZhbNQPzt z?5kn2_#VbG aMBdu6T|yxCM|TzVjol{VstP-gY$`3wF&vv;dJ>@*%a5 zPhyx)g?3gG*1r6Cr-&!>if7xKH(uW9kWxHV^244ty*d2l^41^qa1G$`;Z%LQS$GX` zRp3l|9u29qR5|b2@mZ}`CzyKVp%;zY{FbZP_2o~twHn}1`~_mNL|r zZ)9|28=S9LPipOls0w~wZQ5*`9cJB6Q?_&hiT*{)!uJJzH1M5uTdjKbBXi$=wRu}? zXJZRFn|$<*$8@4bY);FokL^#7n;znr4eR^)rdDOgunSh!Ucd=(dVcGd`AghpQ$KzH zM4eB+bO_-F7#6S1ThBIy`MC==p6*dF_OqXfvH3BUHLD-bYb3EUMG}%z|6hJuo&!-J z%sV?K`EzG8ehyO;qTS53-)=Y8Nr!ExC(TY7yIq5(=kE(07z$lD4bI!x8O1rIG_sHr zFz{;6iLne^PD9~0bn?INi*o+A#O*tT90x+4`T }|l zl`k`6-kb;Vb{T _5deqtB-)a=z(yn{3$+V@`KeixIfhaafmXC48ZeKR#nfhffZF{}WY+78{Q611- z2UGaO_1&b~Q;`vAB6PPkX{7#Q77KVV)n`eMZgbV1Y;tLVI)-LKjdCa}jkLbiUALCu z3q+@9=T;i3(O2F4Gt#(-nL!>}rSQLz7`Gj|86~+v-i(+D?;_jSGu$aHP#g&pG;&bg zcUR-?54)Yh`abG-x%`UQfwz$xymf%#K@zs}%PbXs<@xnlI%1@!NfT|3ljm(1bZH;@ zx+SC`Z;eHe>~PM6l$9>xZA$KsT_=TGQ;*HsGZrfv;~tPI>Z#*pbM&^P0lJK~f+Hcc zw7I5UNf9}4PM~dkeZo}3wHSx;(Ac#WPoWt6uBm}1QD$m3@Gn-!l_q1)SliFQC{0o6 zV`Jf46X^}SgYbK21!QMvCZP>&HtdjN)v4DDLg24aInbSkC8r4!2g)M#GT;DJk(?Li znbux_!TXn>jW`{Z)cIy^r^($@irfvkcIHG{w!jmYQysiNvVXFkc2%C{wNn&~I!A$s zDvSm>8IAtz>REvKYB*Phen87HYt 82e+#tWP^N^%;7e`ay;h(XrHC$rQYZut zw%kGUfuUh%6#AXMWo}B^OB2SHUM$w)`nDswLLx_CUd;9JT6L0WGX@sG#O(TzP2~yO z-i0&2?lSxtygDayl4f8{LglO7UEM)}X7eyl;y)-`H}I_SQTl7dIol?=f*YanLy-Ns z2@4m2(LtFkRlQ^aCl@4;iGjZ_SWeKUkJs%l(5V;g{i1j%sX~Qce+OxJgmyeqRGRGS z#Z%PLycW| VSUAIXpnE+1 zsY_g4_Qvd0tess>61=-dc1{a5kPR)I!8VN>wiNpGxF#`(wvASJC2cHfB;4hUcr#}H z!8jGe>{n6<)0~^FOyU<0S#BN~jP()zy-}hFUP9b?oiy)U3Q!t7TG@V)f?)b=rD127 zbg@gyQVTGme>iXLs9`puT04<2124_8{;l%3&)jD12yA)!wSc|6fUC{4iS8n#l2Jrx zp*6|*b$Xvgm(%JtZ!I4CEDNKBLPriTPt0)0-_&ZIb*dafHtE3u&1<3@Q)A~r`ar(B zla8)0MRk5WD^^wA_9H4#*DNzklNPw={Ld&+utYSv6wzx{`MfqARS9N+>l!5@F_en% zFJD1s2iCwzZM8JDViY`|ZqaFA-;cJE1ji@$#^A`}tl0h>I n}wTz%Mp zzuhEujr8I6gbd1jWL&1T&{I6bWx@+uKwe2+9pO)KxxQJd#qZ|V@uV_;ENnVTz*Xz_ z$~jnQC$CnEAW^9_w1Z5d-STP1PV&+n*HS_anpU>&me2+iLL7JP{MKU^>9oKx6s9J9 z)KgxdiV*HcE7wx(n8~lt|1;*KaRqKcOd}4!%U4nc0taW%2onwZhy_tRT7*srsYl=a zqOPs3up7g*b-sj=M{6XJt|u|COkNp{9a|p=ZFd}$v)_A1i=3y`JpXr&jY;=aj&$)B zq8lJ%Z+J1J56;C^Qr=pOmK$x7k_2t WpE^5mBZu6IgB)v6C zYNbp|<%WXLdY9US;RQdLIohopU*crf ACJAD^)0HUUU5X6Xm~-yO+JULW@SoB zLk+;b4?75=eODsLgLEANZcLD(g2`(o7j0dWT8JXuzdnh0m|+=*Np(odY|Ps5S2ywf ziHkKRHUuRlvzGF<*D5(FD!l1Xsa-YD{6q kepJ#Q*% zPWC9=QX}dR)3e2Mqhl%kA7H}biY}E8tM5%a~T&)VfL !E) z|12yHUCmeZSsv?wy}}+icK_vP%_#q*OYog~E^5@eHmt}G?gSks%C6-EKk5*~Wvz#| zSsOdGgq8<0(ep#z@ESV9od}_PCR0gl6}$~zo*jq{{6$KG>dCH*u+tC=%Vu#`iDlMN z3u$7~)s+$~*-=_5v((M*Tk}|wfP`!g)=VD8IHfS!6D2au=`zyBpGh}ih-{gO6H6*k zgWc+@zTgEhrrVCt-9wO`s-7y|c1WJ4XVKIYrffCVW21T|@rjJ3EZO>)9;3*fPubBu zN@C)f|590Pz@iHcs;e`weOBkC_$1)x(q+sMwIybs>Co26QEJo^A}4`QhzH|({U=n7 z^QfJ|>Md=?udKmck7yq >kl@ zRVnc4(er8DZVe>*Yo?9`RmoGV9eVI7jF(}{v>JLRT@vm5j(k 5@(zJxU2$oUYdHrHIr;wwm_A>5>j?c6#^K6eu<~vj;)IoJB;}^;A zbvn2mUsj&2 jyJC*FtB`lQnJ_VRS`R%euCv%~_VYNaHL zGjvpOnAD}PT9?gD+)#)y%%NP_`gd87`|S`#2`z+od}nxwr>R2jT^!AlgXM;`_%YVk zIU*68cw&u-FQHq}PezPTnchk>phUov2GZ|bxhE=~6((Y%4blk2D=FA@?|KvKuRIao z0&7$Mhw|Hhs?;5sI8KKzCg0z}9RZ?}Gfw?dsSW^-bqg-d$|@>g0aW*&|9#2tKlS-P fC?uvE?jV=sz43Rn7KOn&BVcmV{6?j|d;EU^G9R51 literal 0 HcmV?d00001 From 52b4db70f525500a7f9e5decef15953fc6539a32 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Fri, 2 Mar 2018 11:27:34 -0800 Subject: [PATCH 23/61] Release 0.64.3 --- _config.yml | 6 +++--- source/_posts/2018-02-26-release-64.markdown | 17 +++++++++++++++++ 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/_config.yml b/_config.yml index f78a2da8c9a..081fb5711d5 100644 --- a/_config.yml +++ b/_config.yml @@ -140,13 +140,13 @@ social: # Home Assistant release details current_major_version: 0 current_minor_version: 64 -current_patch_version: 2 -date_released: 2018-03-01 +current_patch_version: 3 +date_released: 2018-03-02 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. # Major release: -patch_version_notes: "#release-0642---march-1" +patch_version_notes: "#release-0643---march-2" # Minor release (Example #release-0431---april-25): # Date we moved to Discourse for comments diff --git a/source/_posts/2018-02-26-release-64.markdown b/source/_posts/2018-02-26-release-64.markdown index ce19aef91e3..c745d771fd5 100644 --- a/source/_posts/2018-02-26-release-64.markdown +++ b/source/_posts/2018-02-26-release-64.markdown @@ -94,6 +94,13 @@ Major new integration by [@snjoetw]: August locks and door bells! Lock and unloc - Fix dead Sonos web interface with some music sources ([@amelchio] - [#12796]) ([media_player.sonos docs]) - Unique IDs for Plex Clients ([@ryanm101] - [#12799]) ([media_player.plex docs]) +## {% linkable_title Release 0.64.3 - March 2 %} + +- is_allowed_path: Also test folder #12788 #12807 ([@kellerza] - [#12810]) +- Fix sensibo default IDs to be according to schema ([@andrey-git] - [#12837]) ([climate.sensibo docs]) +- Cloud: handle unauth better ([@balloob] - [#12840]) ([cloud docs]) +- Handle Hue errors better ([@balloob] - [#12845]) ([hue docs]) + ## {% linkable_title If you need help... %} ...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks. @@ -642,3 +649,13 @@ Experiencing issues introduced by this release? Please report them in our [issue [media_player.sonos docs]: https://home-assistant.io/components/media_player.sonos/ [sensor.fedex docs]: https://home-assistant.io/components/sensor.fedex/ [sensor.pollen docs]: https://home-assistant.io/components/sensor.pollen/ +[#12810]: https://github.com/home-assistant/home-assistant/pull/12810 +[#12837]: https://github.com/home-assistant/home-assistant/pull/12837 +[#12840]: https://github.com/home-assistant/home-assistant/pull/12840 +[#12845]: https://github.com/home-assistant/home-assistant/pull/12845 +[@andrey-git]: https://github.com/andrey-git +[@balloob]: https://github.com/balloob +[@kellerza]: https://github.com/kellerza +[climate.sensibo docs]: https://home-assistant.io/components/climate.sensibo/ +[cloud docs]: https://home-assistant.io/components/cloud/ +[hue docs]: https://home-assistant.io/components/hue/ \ No newline at end of file From 3ae1a995059de7a1049b8116d216778829d49bb2 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Fri, 2 Mar 2018 11:37:26 -0800 Subject: [PATCH 24/61] Update installation.markdown --- source/hassio/installation.markdown | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/source/hassio/installation.markdown b/source/hassio/installation.markdown index 1a3113dffce..465a6b03483 100644 --- a/source/hassio/installation.markdown +++ b/source/hassio/installation.markdown @@ -17,20 +17,19 @@ Hass.io images are available for all available Raspberry Pi and Intel NUC platfo - [Raspberry Pi 3][pi3] - [Intel NUC][nuc] -- Unpack the .bz2 File - Flash the downloaded image to an SD card using [Etcher]. - Optional - Setup the WiFi or static IP: On the SD-card, edit the `system-connections/resin-sample` file and follow the [ResinOS howto][resinos-network]. - Insert SD card to Raspberry Pi and turn it on. On first boot, it downloads the latest version of Home Assistant which takes ~20 minutes (slower/faster depending on the platform). - -Please remember to ensure you're using an [appropriate power supply](https://www.raspberrypi.org/help/faqs/#powerReqs) with your Pi. Mobile chargers may not be suitable since some are designed to only provide the full power with that manufacturer's handsets. -
-- You will be able to reach your installation at [http://hassio.local:8123][local]. - Enable either the [Samba add-on][samba] or the [SSH add-on][ssh] to manage your configuration in `/config/` (From the UI choose **Hass.io** which is located in the sidebar). +
+Please remember to ensure you're using an [appropriate power supply](https://www.raspberrypi.org/help/faqs/#powerReqs) with your Pi. Mobile chargers may not be suitable since some are designed to only provide the full power with that manufacturer's handsets. +
+If you copy over your existing Home Assistant configuration, make sure to enable the Hass.io panel by adding either `discovery:` or `hassio:` to your configuration.
From 1667c36859f7ce5fc37bf24ce95b6d35f142c407 Mon Sep 17 00:00:00 2001 From: NiclasDate: Sat, 3 Mar 2018 00:13:14 +0100 Subject: [PATCH 25/61] Incorrect case in stateObj The stateObj was spelled StateObj, which resulted in an empty string, causing a noob like me great confusion. Hope this helps someone. :) --- source/developers/frontend_creating_custom_ui.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/developers/frontend_creating_custom_ui.markdown b/source/developers/frontend_creating_custom_ui.markdown index 7a4b8eeb418..c9da0cf1e22 100644 --- a/source/developers/frontend_creating_custom_ui.markdown +++ b/source/developers/frontend_creating_custom_ui.markdown @@ -48,7 +48,7 @@ frontend: - + From f12a87218025d185323ee7c3c6b597020b95ae35 Mon Sep 17 00:00:00 2001 From: Daniel Shokouhi Date: Fri, 2 Mar 2018 18:23:16 -0800 Subject: [PATCH 26/61] Add update section for advanced guide Detail steps for the user to do a proper update. --- source/_docs/installation/raspberry-pi.markdown | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/source/_docs/installation/raspberry-pi.markdown b/source/_docs/installation/raspberry-pi.markdown index d9a0aa4a649..00a77dd3f52 100644 --- a/source/_docs/installation/raspberry-pi.markdown +++ b/source/_docs/installation/raspberry-pi.markdown @@ -89,3 +89,15 @@ When you run the `hass` command for the first time, it will download, install an If you want setup `hass` as a daemon and autostart it on boot please refer to [Autostart Home Assistant](/docs/autostart/). + +### {% linkable_title Updating %} + +To update to the latest version of Home Assistant follow these simple steps: + +```bash +$ sudo su -s /bin/bash homeassistant +$ source /srv/homeassistant/bin/activate +$ pip3 install --upgrade home assistant +``` + +Once the last command executes restart the Home Assistant service to apply the latest updates. Please keep in mind that some updates may take longer to boot up than others. If Home Assistant fails to start make sure you check the **Breaking Changes** from the [Release Notes](https://github.com/home-assistant/home-assistant/releases). From e0f5d865825b2e9a11ba2cf64ae6848664a24807 Mon Sep 17 00:00:00 2001 From: nsimb <34156112+nsimb@users.noreply.github.com> Date: Sat, 3 Mar 2018 11:46:49 +0100 Subject: [PATCH 27/61] Added replace from , to . for float handling Since the website saves numbers with , the sensor ends up with "," when trying to use it in automations float does not work. So i thought i added this if somone ells uses the example --- source/_components/sensor.scrape.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.scrape.markdown b/source/_components/sensor.scrape.markdown index 06d1cd80424..cbbaf5553e0 100644 --- a/source/_components/sensor.scrape.markdown +++ b/source/_components/sensor.scrape.markdown @@ -126,7 +126,7 @@ sensor: resource: https://elen.nu/timpriser-pa-el-for-elomrade-se3-stockholm/ name: Electricity price select: ".elspot-content" - value_template: '{{ value.split(" ")[0] }}' + value_template: '{{ ((value.split(" ")[0]) | replace (",", ".")) }}' unit_of_measurement: "öre/kWh" ``` {% endraw %} From 10e944059136117846fb70fe7d8d5598a9b9fb27 Mon Sep 17 00:00:00 2001 From: sjabby Date: Sat, 3 Mar 2018 13:31:10 +0100 Subject: [PATCH 28/61] Update automation examples to proper formatting Updated the automation examples to reflect the proper climate format and listing the entity_id inside the `data:` section. --- source/_components/climate.zwave.markdown | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/_components/climate.zwave.markdown b/source/_components/climate.zwave.markdown index 3c5f96f7247..0669e0dfc69 100644 --- a/source/_components/climate.zwave.markdown +++ b/source/_components/climate.zwave.markdown @@ -46,12 +46,12 @@ automation: at: "20:00:00" action: - service: climate.set_operation_mode - entity_id: climate.remotec_zxt120_heating_1_id data: + entity_id: climate.remotec_zxt120_heating_1_id operation_mode: Heat - service: climate.set_temperature - entity_id: climate.remotec_zxt120_heating_1_39 data: + entity_id: climate.remotec_zxt120_heating_1_39 temperature: 24 ``` @@ -65,8 +65,8 @@ automation: at: "21:00:00" action: - service: climate.set_operation_mode - entity_id: climate.remotec_zxt120_heating_1_id data: + entity_id: climate.remotec_zxt120_heating_1_id operation_mode: 'Off' ``` From d4836ea89a51f71c25572f6c04b497501a64ca64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20S=C3=B8rensen?= Date: Sat, 3 Mar 2018 15:43:41 +0100 Subject: [PATCH 29/61] Fixes wrong syntax in the newest version of hassbian-config --- source/_docs/installation/hassbian/common-tasks.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/hassbian/common-tasks.markdown b/source/_docs/installation/hassbian/common-tasks.markdown index 6fddcd360b6..73e96a07876 100644 --- a/source/_docs/installation/hassbian/common-tasks.markdown +++ b/source/_docs/installation/hassbian/common-tasks.markdown @@ -37,7 +37,7 @@ To get the current state of the `homeassistant.service` replace `stop` with `sta ### {% linkable_title Update Home Assistant %} -You can also use `hassbian-config` to automate the process by running `sudo hassbian-config upgrade home-assistant` +You can also use `hassbian-config` to automate the process by running `sudo hassbian-config upgrade homeassistant`
Log in as the `pi` account and execute the following commands: From 82a9aa1d98244a49d0a59405f9eb84553ca1ffaa Mon Sep 17 00:00:00 2001 From: Adam MillsDate: Sat, 3 Mar 2018 11:06:10 -0500 Subject: [PATCH 30/61] Improved docs for the i18n project (#4796) --- .../asides/developers_navigation.html | 9 ++++++++- .../backend_localization.markdown | 19 ++++++++++++++++++ .../custom_component_localization.markdown | 20 +++++++++++++++++++ .../internationalization/index.markdown | 19 ++++++++++++++++++ .../translation.markdown} | 5 +++-- 5 files changed, 69 insertions(+), 3 deletions(-) create mode 100644 source/developers/internationalization/backend_localization.markdown create mode 100644 source/developers/internationalization/custom_component_localization.markdown create mode 100644 source/developers/internationalization/index.markdown rename source/developers/{frontend_translation.markdown => internationalization/translation.markdown} (97%) diff --git a/source/_includes/asides/developers_navigation.html b/source/_includes/asides/developers_navigation.html index 0f42206817a..2d770cb7a14 100644 --- a/source/_includes/asides/developers_navigation.html +++ b/source/_includes/asides/developers_navigation.html @@ -78,7 +78,14 @@ {% active_link /developers/frontend_add_more_info/ Add More Info Dialog %} {% active_link /developers/frontend_creating_custom_panels/ Add Custom Panels %} {% active_link /developers/frontend_creating_custom_ui/ Add Custom UI %} -{% active_link /developers/frontend_translation/ Translation %} + + ++ {% active_link /developers/internationalization/ Internationalization %} + +
- {% active_link /developers/internationalization/backend_localization/ Backend Localization %}
+- {% active_link /developers/internationalization/custom_component_localization/ Custom Component Localization %}
+- {% active_link /developers/internationalization/translation/ Translation %}
diff --git a/source/developers/internationalization/backend_localization.markdown b/source/developers/internationalization/backend_localization.markdown new file mode 100644 index 00000000000..6d395352b4f --- /dev/null +++ b/source/developers/internationalization/backend_localization.markdown @@ -0,0 +1,19 @@ +--- +layout: page +title: "Backend Localization" +description: "Translating platforms in Home Assistant" +date: 2018-03-01 18:00 +sidebar: true +comments: false +sharing: true +footer: true +ha_release: 0.64 +--- + +## {% linkable_title Translation Strings %} +Platform translation strings are stored as JSON in the [home-assistant](https://github.com/home-assistant/home-assistant) repository. These files must be located adjacent to the component/platform they belong to. They are named `strings. .json`, unless the component being translated exists in its own directory, in which case the file is simply named `strings.json` in that directory. This file will contain the different strings that will be translatable. Currently only states are supported by the frontend. + +After the pull request with the strings file is merged into the `dev` branch, the strings will be automatically uploaded to Lokalise, where contributors can submit translations. The translated strings in Lokalise will be periodically pulled in to the home-assistant repository. + +## {% linkable_title States Localization %} +The first step when localizing platform states is to ensure that the states defined in the actual platform code are defined in `snake_case`. The states should not contain capital letters or spaces. Next, the strings file needs to be created. The states should exist under the `state` key, and map the backend state keys to their English translations. [The season sensor localization](https://github.com/home-assistant/home-assistant/pull/12453/commits/bb2f328ce10c3867990e34a88da64e2f8dc7a5c4) is a good example. diff --git a/source/developers/internationalization/custom_component_localization.markdown b/source/developers/internationalization/custom_component_localization.markdown new file mode 100644 index 00000000000..b7d12664d4d --- /dev/null +++ b/source/developers/internationalization/custom_component_localization.markdown @@ -0,0 +1,20 @@ +--- +layout: page +title: "Custom Component Localization" +description: "Translating custom components in Home Assistant" +date: 2018-03-01 18:00 +sidebar: true +comments: false +sharing: true +footer: true +ha_release: 0.64 +--- + +## {% linkable_title Translation Strings %} +Unlike localized strings merged in the home-assistant repository, custom components cannot take advantage of Lokalise for user submitted translations. However, custom component authors can still include translation with their components. These will be read from the `.translations` directory, adjacent to the component source file. They are named ` . .json`, unless the custom component exists in its own directory, in which case the file is simply named ` .json` in the `.translations` directory. + +These files follow the same formatting as [backend translation string files](/developers/internationalization/backend_localization/), but a copy will exist for each translated language. + +The language codes follow the [BCP47](https://tools.ietf.org/html/bcp47) format. The [frontend translation files](https://github.com/home-assistant/home-assistant-polymer/tree/master/translations) can also be referred to if you are unsure of the correct language code to use. + +The frontend will serve these files after Home Assistant is restarted. diff --git a/source/developers/internationalization/index.markdown b/source/developers/internationalization/index.markdown new file mode 100644 index 00000000000..109502fe458 --- /dev/null +++ b/source/developers/internationalization/index.markdown @@ -0,0 +1,19 @@ +--- +layout: page +title: "Internationalization" +description: "Home Assistant internationalization summary" +date: 2018-03-01 18:00 +sidebar: true +comments: false +sharing: true +footer: true +ha_release: 0.64 +--- + +The Home Assistant internationalization project includes preparing platforms and the frontend for localization, as well as the actual translation of localized strings. + +Some compmonents and platforms will have strings that need to be localized specifically for that platform. These strings are managed in the core [home-assistant](https://github.com/home-assistant/home-assistant) repository. The Home Assistant backend will serve strings to the clients based on the loaded components in the running instance. + +There are also localizable strings that exist only on the frontend. These strings are managed in the [home-assistant-polymer](https://github.com/home-assistant/home-assistant-polymer) repository. These strings are stored with the frontend and don’t depend on the backend configuration. + +Our strings are translated by the community using the online translation tool [Lokalise](https://lokalise.co/). diff --git a/source/developers/frontend_translation.markdown b/source/developers/internationalization/translation.markdown similarity index 97% rename from source/developers/frontend_translation.markdown rename to source/developers/internationalization/translation.markdown index c91d80e36ed..334a68e6aa3 100644 --- a/source/developers/frontend_translation.markdown +++ b/source/developers/internationalization/translation.markdown @@ -1,13 +1,14 @@ --- layout: page -title: "Frontend Translation" -description: "How to translate the frontend for Home Assistant." +title: "Translation" +description: "How to translate Home Assistant." date: 2017-10-27 13:00 sidebar: true comments: false sharing: true footer: true ha_release: 0.57 +redirect_from: /developers/frontend_translation/ --- ## {% linkable_title How to start %} From 957ada3afa79d68c0f4ee2aa8055ade771f6a68a Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Sun, 4 Mar 2018 00:30:21 +0100 Subject: [PATCH 31/61] Update installation.markdown --- source/hassio/installation.markdown | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/hassio/installation.markdown b/source/hassio/installation.markdown index 465a6b03483..215850b8144 100644 --- a/source/hassio/installation.markdown +++ b/source/hassio/installation.markdown @@ -50,10 +50,10 @@ A detailed guide about running Hass.io as a virtual machine is available in the [Etcher]: https://etcher.io/ [resinos-network]: https://docs.resin.io/deployment/network/2.0.0/ -[pi1]: https://github.com/home-assistant/hassio-build/releases/download/1.1/resinos-hassio-1.1-raspberrypi.img.bz2 -[pi2]: https://github.com/home-assistant/hassio-build/releases/download/1.1/resinos-hassio-1.1-raspberrypi2.img.bz2 -[pi3]: https://github.com/home-assistant/hassio-build/releases/download/1.1/resinos-hassio-1.1-raspberrypi3.img.bz2 -[nuc]: https://github.com/home-assistant/hassio-build/releases/download/1.1/resinos-hassio-1.1-intel-nuc.img.bz2 +[pi1]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.2-raspberrypi.img.bz2 +[pi2]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.2-raspberrypi2.img.bz2 +[pi3]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.2-raspberrypi3.img.bz2 +[nuc]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.2-intel-nuc.img.bz2 [linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio [local]: http://hassio.local:8123 [samba]: /addons/samba/ From 5582dc788cfaec751100b8ed3566e1c56c7a474d Mon Sep 17 00:00:00 2001 From: Mahasri Kalavala Date: Sun, 4 Mar 2018 20:17:13 -0500 Subject: [PATCH 32/61] fixed a typo in the command --- source/_docs/installation/raspberry-pi.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/raspberry-pi.markdown b/source/_docs/installation/raspberry-pi.markdown index 00a77dd3f52..bb0bc595da2 100644 --- a/source/_docs/installation/raspberry-pi.markdown +++ b/source/_docs/installation/raspberry-pi.markdown @@ -97,7 +97,7 @@ To update to the latest version of Home Assistant follow these simple steps: ```bash $ sudo su -s /bin/bash homeassistant $ source /srv/homeassistant/bin/activate -$ pip3 install --upgrade home assistant +$ pip3 install --upgrade homeassistant ``` Once the last command executes restart the Home Assistant service to apply the latest updates. Please keep in mind that some updates may take longer to boot up than others. If Home Assistant fails to start make sure you check the **Breaking Changes** from the [Release Notes](https://github.com/home-assistant/home-assistant/releases). From 2cac99159005f53e472050c57b1e205a51496df3 Mon Sep 17 00:00:00 2001 From: Robbie Trencheny Date: Sun, 4 Mar 2018 18:55:16 -0800 Subject: [PATCH 33/61] Remove space that breaks pip3 command --- source/_docs/installation/raspberry-pi.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/raspberry-pi.markdown b/source/_docs/installation/raspberry-pi.markdown index 00a77dd3f52..bb0bc595da2 100644 --- a/source/_docs/installation/raspberry-pi.markdown +++ b/source/_docs/installation/raspberry-pi.markdown @@ -97,7 +97,7 @@ To update to the latest version of Home Assistant follow these simple steps: ```bash $ sudo su -s /bin/bash homeassistant $ source /srv/homeassistant/bin/activate -$ pip3 install --upgrade home assistant +$ pip3 install --upgrade homeassistant ``` Once the last command executes restart the Home Assistant service to apply the latest updates. Please keep in mind that some updates may take longer to boot up than others. If Home Assistant fails to start make sure you check the **Breaking Changes** from the [Release Notes](https://github.com/home-assistant/home-assistant/releases). From b0a2289db5a95a59c8a1850b35f3c0d32d9b5f71 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Mon, 5 Mar 2018 00:28:44 -0800 Subject: [PATCH 34/61] Add link to skill --- source/cloud/google_assistant.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/cloud/google_assistant.markdown b/source/cloud/google_assistant.markdown index f76dd80d481..155b2356a73 100644 --- a/source/cloud/google_assistant.markdown +++ b/source/cloud/google_assistant.markdown @@ -16,7 +16,7 @@ To use this integration, you need to have: - The cloud component set up. [Learn more](/components/cloud/) - A Google Assistant enabled device like the Google Home - - Activated the Home Assistant Smart Home skill for Google Assistant + - Activated the [Home Assistant Smart Home skill for Google Assistant](https://assistant.google.com/services/a/uid/00000091fd5fb875) You can use `configuration.yaml` to configure the entities that are being shown to Google Assistant and how they are exposed. From 7dfde5e84f49c8a92305b56fb70a54ce6347f97e Mon Sep 17 00:00:00 2001 From: Mason Garrison Date: Mon, 5 Mar 2018 15:35:41 -0500 Subject: [PATCH 35/61] updated dead link (#4839) --- source/_cookbook/configuration_yaml_by_greenturtwig.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_cookbook/configuration_yaml_by_greenturtwig.markdown b/source/_cookbook/configuration_yaml_by_greenturtwig.markdown index dcb11f84540..a5bc7c5b184 100644 --- a/source/_cookbook/configuration_yaml_by_greenturtwig.markdown +++ b/source/_cookbook/configuration_yaml_by_greenturtwig.markdown @@ -8,6 +8,6 @@ comments: false sharing: true footer: true ha_category: Example configuration.yaml -ha_external_link: https://github.com/GreenTurtwig/personal-home-automation/tree/master/Home%20Assistant +ha_external_link: https://github.com/GreenTurtwig/personal-home-automation/blob/master/configuration.yaml --- From 1546a557263756945ebc4013c4b231ee6868f5dc Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Mon, 5 Mar 2018 22:54:44 +0100 Subject: [PATCH 36/61] Update installation.markdown --- source/hassio/installation.markdown | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/hassio/installation.markdown b/source/hassio/installation.markdown index 215850b8144..4a2ea0e5d96 100644 --- a/source/hassio/installation.markdown +++ b/source/hassio/installation.markdown @@ -50,10 +50,10 @@ A detailed guide about running Hass.io as a virtual machine is available in the [Etcher]: https://etcher.io/ [resinos-network]: https://docs.resin.io/deployment/network/2.0.0/ -[pi1]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.2-raspberrypi.img.bz2 -[pi2]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.2-raspberrypi2.img.bz2 -[pi3]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.2-raspberrypi3.img.bz2 -[nuc]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.2-intel-nuc.img.bz2 +[pi1]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.3-raspberrypi.img.bz2 +[pi2]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.3-raspberrypi2.img.bz2 +[pi3]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.3-raspberrypi3.img.bz2 +[nuc]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.3-intel-nuc.img.bz2 [linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio [local]: http://hassio.local:8123 [samba]: /addons/samba/ From 4cd2e5e30c7cc4f2202d871232daa65d778cb5a5 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Mon, 5 Mar 2018 22:55:05 +0100 Subject: [PATCH 37/61] Update installation.markdown --- source/hassio/installation.markdown | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/hassio/installation.markdown b/source/hassio/installation.markdown index 4a2ea0e5d96..2a26994493a 100644 --- a/source/hassio/installation.markdown +++ b/source/hassio/installation.markdown @@ -50,10 +50,10 @@ A detailed guide about running Hass.io as a virtual machine is available in the [Etcher]: https://etcher.io/ [resinos-network]: https://docs.resin.io/deployment/network/2.0.0/ -[pi1]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.3-raspberrypi.img.bz2 -[pi2]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.3-raspberrypi2.img.bz2 -[pi3]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.3-raspberrypi3.img.bz2 -[nuc]: https://github.com/home-assistant/hassio-build/releases/download/1.2/resinos-hassio-1.3-intel-nuc.img.bz2 +[pi1]: https://github.com/home-assistant/hassio-build/releases/download/1.3/resinos-hassio-1.3-raspberrypi.img.bz2 +[pi2]: https://github.com/home-assistant/hassio-build/releases/download/1.3/resinos-hassio-1.3-raspberrypi2.img.bz2 +[pi3]: https://github.com/home-assistant/hassio-build/releases/download/1.3/resinos-hassio-1.3-raspberrypi3.img.bz2 +[nuc]: https://github.com/home-assistant/hassio-build/releases/download/1.3/resinos-hassio-1.3-intel-nuc.img.bz2 [linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio [local]: http://hassio.local:8123 [samba]: /addons/samba/ From f7379745636d6f7f484334726ecd9fd056cd1fbc Mon Sep 17 00:00:00 2001 From: Andrew Cockburn Date: Mon, 5 Mar 2018 23:32:30 -0800 Subject: [PATCH 38/61] Update tutorial.markdown (#4841) --- .../ecosystem/appdaemon/tutorial.markdown | 38 +++++++++++++------ 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/source/_docs/ecosystem/appdaemon/tutorial.markdown b/source/_docs/ecosystem/appdaemon/tutorial.markdown index 6a9998bced3..962be8ea9f1 100755 --- a/source/_docs/ecosystem/appdaemon/tutorial.markdown +++ b/source/_docs/ecosystem/appdaemon/tutorial.markdown @@ -43,22 +43,38 @@ The best way to show what AppDaemon does is through a few simple examples. ### {% linkable_title Sunrise/Sunset Lighting %} -Lets start with a simple App to turn a light on every night at sunset and off every morning at sunrise. Every App when first started will have its `initialize()` function called which gives it a chance to register a callback for AppDaemons's scheduler for a specific time. In this case we are using `run_at_sunrise()` and `run_at_sunset()` to register 2 separate callbacks. The argument `0` is the number of seconds offset from sunrise or sunset and can be negative or positive. For complex intervals it can be convenient to use Python's `datetime.timedelta` class for calculations. When sunrise or sunset occurs, the appropriate callback function, `sunrise_cb()` or `sunset_cb()` is called which then makes a call to Home Assistant to turn the porch light on or off by activating a scene. The variables `args["on_scene"]` and `args["off_scene"]` are passed through from the configuration of this particular App, and the same code could be reused to activate completely different scenes in a different version of the App. +Lets start with a simple App to turn a light on every night fifteen +minutes (900 seconds) before sunset and off every morning at sunrise. +Every App when first started will have its ``initialize()`` function +called which gives it a chance to register a callback for AppDaemons's +scheduler for a specific time. In this case we are using +`run_at_sunrise()` and `run_at_sunset()` to register 2 separate +callbacks. The named argument `offset` is the number of seconds offset +from sunrise or sunset and can be negative or positive (it defaults to +zero). For complex intervals it can be convenient to use Python's +`datetime.timedelta` class for calculations. In the example below, +when sunrise or just before sunset occurs, the appropriate callback +function, `sunrise_cb()` or `before_sunset_cb()` is called which +then makes a call to Home Assistant to turn the porch light on or off by +activating a scene. The variables `args["on_scene"]` and +`args["off_scene"]` are passed through from the configuration of this +particular App, and the same code could be reused to activate completely +different scenes in a different version of the App. ```python -import homeassistant.appapi as appapi + import appdaemon.plugins.hass.hassapi as hass -class OutsideLights(appapi.AppDaemon): + class OutsideLights(hass.Hass): - def initialize(self): - self.run_at_sunrise(self.sunrise_cb, 0) - self.run_at_sunset(self.sunset_cb, 0) - - def sunrise_cb(self, kwargs): - self.turn_on(self.args["off_scene"]) + def initialize(self): + self.run_at_sunrise(self.sunrise_cb) + self.run_at_sunset(self.before_sunset_cb, offset=-900) + + def sunrise_cb(self, kwargs): + self.turn_on(self.args["off_scene"]) - def sunset_cb(self, kwargs): - self.turn_on(self.args["on_scene"]) + def before_sunset_cb(self, kwargs): + self.turn_on(self.args["on_scene"]) ``` From 6527716bcc8fdb409177bd60fe0e1b9dd38f7632 Mon Sep 17 00:00:00 2001 From: DubhAd Date: Tue, 6 Mar 2018 10:01:30 +0000 Subject: [PATCH 39/61] Changed the PSU link to be to the power reqs (#4821) --- source/getting-started/index.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/getting-started/index.markdown b/source/getting-started/index.markdown index abb8cf7e72c..429c6b4cb8a 100644 --- a/source/getting-started/index.markdown +++ b/source/getting-started/index.markdown @@ -17,7 +17,7 @@ Follow this guide if you want to easily get started with Home Assistant, or if y We will need a few things to get started with installing Home Assistant. Links below are linking to Amazon US. If you're not in the US, you should be able to find these items in web stores in your country. -- [Raspberry Pi 3 model B](http://a.co/gEfMqL4) + [Power Supply](http://a.co/cgKUgkt) (at least 2.5A) +- [Raspberry Pi 3 model B](http://a.co/gEfMqL4) + [Power Supply](https://www.raspberrypi.org/help/faqs/#powerReqs) (at least 2.5A) - [Micro SD Card](http://a.co/gslOydD). Get one that is Class 10 as they are more reliable. Size 32GB or bigger recommended. - SD Card reader. Part of most laptops, and also available as [standalone USB sticks](http://a.co/5FCyb0N) (the brand doesn't matter, just pick the cheapest) - Ethernet cable (optional, Hass.io can work with WiFi too) From d808f39a2158785982929a033c373c13bcbd684d Mon Sep 17 00:00:00 2001 From: DubhAd Date: Tue, 6 Mar 2018 10:03:19 +0000 Subject: [PATCH 40/61] Added PSU warning (#4820) --- source/_docs/installation/raspberry-pi.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_docs/installation/raspberry-pi.markdown b/source/_docs/installation/raspberry-pi.markdown index bb0bc595da2..d7f3c231ef7 100644 --- a/source/_docs/installation/raspberry-pi.markdown +++ b/source/_docs/installation/raspberry-pi.markdown @@ -16,6 +16,10 @@ This installation of Home Assistant requires the Raspberry Pi to run [Raspbian L Although these installation steps specifically mention a Raspberry Pi, you can go ahead and proceed on any Linux install as well. This guide is also referred to as the "Advanced Guide" for a virtual environment install. + +Please remember to ensure you're using an [appropriate power supply](https://www.raspberrypi.org/help/faqs/#powerReqs) with your Pi. Mobile chargers may not be suitable, since some are designed to only provide the full power with that manufacturer's handsets. USB ports on your computer also will not supply enough power and must not be used. +
+ Connect to the Raspberry Pi over SSH. Default password is `raspberry`. You will need to enable SSH access. The Raspberry Pi website has instructions [here](https://www.raspberrypi.org/documentation/remote-access/ssh/). From 73af490160fff22d8793cd332687a616abd2f472 Mon Sep 17 00:00:00 2001 From: cogneatoDate: Tue, 6 Mar 2018 03:06:07 -0700 Subject: [PATCH 41/61] re-adding that the add-on makes use of port 80 (#4760) I realized that the entire previous instruction should not have been removed and only the reference to port 443. --- source/_addons/lets_encrypt.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_addons/lets_encrypt.markdown b/source/_addons/lets_encrypt.markdown index fe3894e6f89..c0cbf10bbea 100644 --- a/source/_addons/lets_encrypt.markdown +++ b/source/_addons/lets_encrypt.markdown @@ -14,7 +14,7 @@ featured: false You should not use this if you are also using the [DuckDNS add-on]. The DuckDNS add-on has integrated Let's Encrypt support. -Setup and manage a [Let's Encrypt](https://letsencrypt.org/) certificate. This addon will create a certificate on the first run and will auto-renew if the certificate is within 30 days of expiration. +Setup and manage a [Let's Encrypt](https://letsencrypt.org/) certificate. This addon will create a certificate on the first run and will auto-renew if the certificate is within 30 days of expiration. This add-on uses port 80 to verify the certificate request. You will need to stop all other add-ons that also use this port. ```json { From 24e2021c21481934f4931e8bd91e4b02408f70e2 Mon Sep 17 00:00:00 2001 From: Ben Lebherz Date: Tue, 6 Mar 2018 20:37:06 +0100 Subject: [PATCH 42/61] Fixes link to submit page in states documentation (#4847) --- source/developers/development_states.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/developers/development_states.markdown b/source/developers/development_states.markdown index 369f87ea54b..6da9e5fbc97 100644 --- a/source/developers/development_states.markdown +++ b/source/developers/development_states.markdown @@ -137,4 +137,4 @@ def device_state_attributes(self): Entities also have a similar property `state_attributes`, which normally doesn't need to be defined by new platforms. This property is used by base components to add standard sets of attributes to a state. Example: The light component uses `state_attributes` to add brightness to the state dictionary. If you are designing a new component, you should define `state_attributes` instead. -To get your component included in the Home Assistant releases, follow the steps described in the [Submitting improvements](https://home-assistant.io/developers/#submitting-improvements) section. Basically you only need to move your component in the `homeassistant/component/` directory of your fork and create a Pull Request. +To get your component included in the Home Assistant releases, follow the steps described in the [Submit your work](https://home-assistant.io/developers/development_submitting/) section. Basically you only need to move your component in the `homeassistant/component/` directory of your fork and create a Pull Request. From a303c393d9e6963d808622d7fcc435a23bf95422 Mon Sep 17 00:00:00 2001 From: Matt F Date: Tue, 6 Mar 2018 13:37:44 -0600 Subject: [PATCH 43/61] Update Synology installation instructions (#4845) The command to chown the directory was backwards --- source/_docs/installation/synology.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/synology.markdown b/source/_docs/installation/synology.markdown index 9edf9fbb001..8885d8e868b 100644 --- a/source/_docs/installation/synology.markdown +++ b/source/_docs/installation/synology.markdown @@ -61,7 +61,7 @@ Create homeassistant config directory & switch to it ```bash # mkdir /volume1/homeassistant -# chown /volume1/homeassistant homeassistant +# chown homeassistant /volume1/homeassistant # chmod 755 /volume1/homeassistant # cd /volume1/homeassistant ``` From 7965cb8b072156dd33331dff56128636b3dd197c Mon Sep 17 00:00:00 2001 From: DubhAd Date: Tue, 6 Mar 2018 20:14:52 +0000 Subject: [PATCH 44/61] Changed example to ACM from USB (#4804) Most Z-Wave sticks identify as ttyACM rather than ttyUSB - changing the example in the docs to fit what'll work for most people --- source/_docs/z-wave/installation.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/z-wave/installation.markdown b/source/_docs/z-wave/installation.markdown index 03195547071..5974c16a201 100644 --- a/source/_docs/z-wave/installation.markdown +++ b/source/_docs/z-wave/installation.markdown @@ -43,7 +43,7 @@ On Raspberry Pi you will need to enable the serial interface in the `raspi-confi ```yaml # Example configuration.yaml entry zwave: - usb_path: /dev/ttyUSB0 + usb_path: /dev/ttyACM0 ``` {% configuration zwave %} From 3217dfcc7ffce7e9b7ea0484b544065d2079770a Mon Sep 17 00:00:00 2001 From: cogneato Date: Tue, 6 Mar 2018 13:15:52 -0700 Subject: [PATCH 45/61] Change wording to locate logs (#4837) Changed description to match UI changes for system (supervisor) log. --- source/hassio/installing_third_party_addons.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/hassio/installing_third_party_addons.markdown b/source/hassio/installing_third_party_addons.markdown index f88860e1d8a..828ed90e590 100644 --- a/source/hassio/installing_third_party_addons.markdown +++ b/source/hassio/installing_third_party_addons.markdown @@ -31,4 +31,4 @@ Add the URL of the repository and then press "Add". A new card for the repositor ### {% linkable_title Help: Repository is not showing up %} -If you have added a repository, but it's not showing up, it means that the repository contains invalid configuration. Go to the Hass.io panel -> Three dot menu -> Advanced Settings -> Supervisor card -> View logs and scroll to the bottom. It should tell you what went wrong. Report this information to the repository author. +If you have added a repository, but it's not showing up, it means that the repository contains invalid configuration. Go to the Hass.io panel and then the System tab to find the System log. It should tell you what went wrong. Report this information to the repository author. From ca946f274d9d4c6bce819c62ab77e1eb198de010 Mon Sep 17 00:00:00 2001 From: Scott Prive Date: Tue, 6 Mar 2018 15:17:04 -0500 Subject: [PATCH 46/61] Update docker.markdown (#4815) # add paragraph to explain how to update docker-compose.yml example for macOS # The TZ issue wasn't specific to `boot2docker` # Add details link for net:host vs port: conflict # Add details link for TZ issue --- source/_docs/installation/docker.markdown | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown index 63212564d60..0a531af7546 100644 --- a/source/_docs/installation/docker.markdown +++ b/source/_docs/installation/docker.markdown @@ -20,14 +20,16 @@ $ docker run -d --name="home-assistant" -v /path/to/your/config:/config -v /etc/ ### {% linkable_title macOS %} -When using `boot2docker` on macOS you are unable to map the local time to your Docker container. Use `-e "TZ=America/Los_Angeles"` instead of `-v /etc/localtime:/etc/localtime:ro`. Replace "America/Los_Angeles" with [your timezone](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones). +When using `docker-ce` (or `boot2docker`) on macOS, you are unable to map the local timezone to your Docker container (see Docker issue https://github.com/docker/for-mac/issues/44). Instead of `-v /etc/localtime:/etc/localtime:ro`, just pass in the timezone environment variable when you launch the container, ex: `-e "TZ=America/Los_Angeles"`. Replace "America/Los_Angeles" with [your timezone](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones). -Additionally, if your expectation is that you will be able to browse directly to `http://localhost:8123` on your macOS host, then you will also need to replace the `--net=host` switch with `-p 8123:8123`. This is currently the only way to forward ports on to your actual host (macOS) machine instead of the virtual machine inside `xhyve`. More detail on this can be found in [the docker forums](https://forums.docker.com/t/should-docker-run-net-host-work/14215/10). +If you wish to browse directly to `http://localhost:8123` from your macOS host, meaning forward ports directly to the container, replace the `--net=host` switch with `-p 8123:8123`. More detail can be found in [the docker forums](https://forums.docker.com/t/should-docker-run-net-host-work/14215/10). ```bash $ docker run -d --name="home-assistant" -v /path/to/your/config:/config -e "TZ=America/Los_Angeles" -p 8123:8123 homeassistant/home-assistant ``` +Alternatively, `docker-compose` works with any recent release of `docker-ce` on macOS. Note that (further down this page) we provide an example `docker-compose.yml` however it differs from the `docker run` example above. To make the .yml directives match, you would need to make _two_ changes: first add the equivalent `ports:` directive, then _remove_ the `network_mode: host` section. This is because `Port mapping is incompatible with network_mode: host:`. More details can be found at [Docker networking docs] (https://docs.docker.com/engine/userguide/networking/#default-networks). Note also the `/dev/tty*` device name used by your Arduino etc. devices will differ from the Linux example, so the compose `mount:` may require updates. + ### {% linkable_title Windows %} When running Home Assistant in Docker on Windows, you may have some difficulty getting ports to map for routing (since the `--net=host` switch actually applies to the hypervisor's network interface). To get around this, you will need to add port proxy ipv4 rules to your local Windows machine, like so (Replacing '192.168.1.10' with whatever your Windows IP is, and '10.0.50.2' with whatever your Docker container's IP is): From 4ff8107c739bf161d5003c05675fbe59c433749d Mon Sep 17 00:00:00 2001 From: Otto Winter Date: Tue, 6 Mar 2018 21:18:27 +0100 Subject: [PATCH 47/61] Fix MQTT discovery object_id docs (#4761) * Fix MQTT discovery object_id docs * Update format --- source/_docs/mqtt/discovery.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/mqtt/discovery.markdown b/source/_docs/mqtt/discovery.markdown index a0f3737cbce..51eae400c43 100644 --- a/source/_docs/mqtt/discovery.markdown +++ b/source/_docs/mqtt/discovery.markdown @@ -44,7 +44,7 @@ The discovery topic need to follow a specific format: - ` `: One of the supported components, eg. `binary_sensor`. - ` `: (*Optional*) id of the node providing the topic. -- ` `: The ID of the device. This will become the `entity_id` in Home Assistant. +- ` `: "The ID of the device. This is only to allow for separate topics for each device and is not used for the `entity_id`." - `<>`: The topic `config` or `state` which defines the current action. The payload will be checked like an entry in your `configuration.yaml` file if a new device is added. This means that missing variables will be filled with the platform's default values. All configuration variables which are *required* must be present in the initial payload send to `/config`. From 1b266b18a42d1e715c1c19a157caa16e0bb5728d Mon Sep 17 00:00:00 2001 From: Florian Klien Date: Tue, 6 Mar 2018 21:18:48 +0100 Subject: [PATCH 48/61] nginx rev proxy minimal version 1.3.13 (#4849) * nginx rev proxy minimal version 1.3.13 * Some other minor changes --- source/_docs/ecosystem/nginx.markdown | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/source/_docs/ecosystem/nginx.markdown b/source/_docs/ecosystem/nginx.markdown index 24e4c7e0849..46ae6152d1c 100644 --- a/source/_docs/ecosystem/nginx.markdown +++ b/source/_docs/ecosystem/nginx.markdown @@ -14,13 +14,17 @@ Using NGINX as a proxy for Home Assistant allows you to serve Home Assistant sec ### {% linkable_title 1. Get a domain name forwarded to your IP %} -Chances are, you have a dynamic IP Address (your ISP changes your address periodically). If this is true, you can use a Dynamic DNS service to obtain a domain and set it up to update with you IP. If you purchase your own domain name, you will be able to easily get a trusted SSL certificate later. +Chances are, you have a dynamic IP address (your ISP changes your address periodically). If this is true, you can use a Dynamic DNS service to obtain a domain and set it up to update with you IP. If you purchase your own domain name, you will be able to easily get a trusted SSL certificate later. ### {% linkable_title 2 Install nginx on your server %} This will vary depending on your OS. Check out Google for this. After installing, ensure that NGINX is not running. + +You will at least need nginx >= 1.3.13, as WebSocket support is required for the reverse proxy. +
+ ### {% linkable_title 3. Obtain an SSL certificate %} There are two ways of obtaining an SSL certificate. @@ -28,7 +32,7 @@ There are two ways of obtaining an SSL certificate. #### {% linkable_title Using Let's Encrypt %} If you purchased your own domain, you can use https://letsencrypt.org/ to obtain a free, publicly trusted SSL certificate. This will allow you to work with services like IFTTT. Download and install per the instructions online and get a certificate using the following command. -``` +```bash $ sudo ./letsencrypt-auto certonly --standalone -d example.com -d www.example.com ``` @@ -75,14 +79,13 @@ $ sudo ln ../sites-available/hass default Double check this configuration to ensure all settings are correct and start nginx. - ### {% linkable_title 8. Port forwarding. %} Forward ports 443 and 80 to your server on your router. Do not forward port 8123. ### {% linkable_title NGINX Config %} -``` +```text map $http_upgrade $connection_upgrade { default upgrade; '' close; From f73376a4daa2a88af5f5bcb61f5eda52534c9255 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?=Date: Tue, 6 Mar 2018 22:21:18 +0200 Subject: [PATCH 49/61] nginx proxy config updates (#4828) * nginx_proxy: Document certfile and keyfile config vars * nginx_proxy: Document customize variables --- source/_addons/nginx_proxy.markdown | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/source/_addons/nginx_proxy.markdown b/source/_addons/nginx_proxy.markdown index 8fd22956e72..f306fccbe5e 100644 --- a/source/_addons/nginx_proxy.markdown +++ b/source/_addons/nginx_proxy.markdown @@ -15,13 +15,23 @@ In the `http` section of the `configuration.yaml` file remove `ssl_certificate` ```json { - "domain": "home.example.com" + "domain": "home.example.com", + "certfile": "fullchain.pem", + "keyfile": "privkey.pem", + "customize": { + "active": false, + "default": "nginx_proxy_default*.conf", + "servers": "nginx_proxy/*.conf" + } } ``` Configuration variables: - **domain** (*Required*): Domain they will proxy run with it. +- **certfile** (*Required*): Certificate file to use in the /ssl dir. +- **keyfile** (*Required*): Private key file to use in the /ssl dir. +- **customize** (*Optional*): If true, additional NGINX configuration files for the default server and additional servers are read from files in the /share dir specified by the `default` and `servers` variables. It is possible to deactivate port 80 if you need this for things like `emulate_hue`. Remove the host port from Network option of this add-on. From 97b30a17f8ca600925cdf88b553e45344acbf6cf Mon Sep 17 00:00:00 2001 From: Fabian Affolter
Date: Tue, 6 Mar 2018 21:38:10 +0100 Subject: [PATCH 50/61] Fix link --- source/_docs/configuration/basic.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/configuration/basic.markdown b/source/_docs/configuration/basic.markdown index 77e8359eba1..3ac38b00a2f 100644 --- a/source/_docs/configuration/basic.markdown +++ b/source/_docs/configuration/basic.markdown @@ -28,7 +28,7 @@ Configuration variables: - **longitude** (*Optional*): Longitude of your location required to calculate the time the sun rises and sets. - **elevation** (*Optional*): Altitude above sea level in meters. Impacts weather/sunrise data. - **unit_system** (*Optional*): `metric` for Metric, `imperial` for Imperial. -- **time_zone** (*Optional*): Pick yours from here: http://en.wikipedia.org/wiki/List_of_tz_database_time_zones +- **time_zone** (*Optional*): Pick yours from here: [http://en.wikipedia.org/wiki/List_of_tz_database_time_zones](http://en.wikipedia.org/wiki/List_of_tz_database_time_zones) - **name** (*Optional*): Name of the location where Home Assistant is running. - **customize** (*Optional*): [Customize](/docs/configuration/customizing-devices/) entities. - **customize_domain** (*Optional*): [Customize](/docs/configuration/customizing-devices/) all entities in a domain. From 8ad6597d2a367bb2804727f27d22bac268509b2c Mon Sep 17 00:00:00 2001 From: scaarup Date: Tue, 6 Mar 2018 21:50:06 +0100 Subject: [PATCH 51/61] Update index.markdown (#4851) --- source/hassio/index.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/hassio/index.markdown b/source/hassio/index.markdown index fdddad8dd39..d53336e89ca 100644 --- a/source/hassio/index.markdown +++ b/source/hassio/index.markdown @@ -57,7 +57,7 @@ Hass.io upgrade process from the SSH command line ## {% linkable_title hassio command %} -On the SSH command line tyou can use the `hassio` command to retrieve logs, check the details of connected hardware, and more. +On the SSH command line you can use the `hassio` command to retrieve logs, check the details of connected hardware, and more. HomeAssistant: ``` $ hassio homeassistant logs From 4a88a5b148e2a36834da9a180545b025d891914f Mon Sep 17 00:00:00 2001 From: Jerry Workman Date: Tue, 6 Mar 2018 16:10:13 -0500 Subject: [PATCH 52/61] Add systemctl daemon-reload (#4835) * Add systemctl daemon-reload * Minor changes * Update format --- source/_components/recorder.markdown | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/source/_components/recorder.markdown b/source/_components/recorder.markdown index 0b777cdf364..b0d42275064 100644 --- a/source/_components/recorder.markdown +++ b/source/_components/recorder.markdown @@ -157,12 +157,26 @@ If the `recorder` component is activated then some components support `restore_s | MS SQL Server | `mssql+pymssql://user:pass@SERVER_IP/DB_NAME?charset=utf8` | -+If you are running a database server instance on the same server as Home Assistant then you must ensure that this service starts before Home Assistant. For a Linux instance running Systemd (Raspberry Pi, Debian, Ubuntu and others) then you should edit the file /etc/systemd/system/home-assistant@homeassistant.service as root (e.g. sudo nano /etc/systemd/system/home-assistant@homeassistant.service) and add the service - for PostgreSQL: ++If you are running a database server instance on the same server as Home Assistant then you must ensure that this service starts before Home Assistant. For a Linux instance running Systemd (Raspberry Pi, Debian, Ubuntu and others) then you should edit the service file. + +```bash +$ sudo nano /etc/systemd/system/home-assistant@homeassistant.service +``` + +and add the service for PostgreSQL: + ``` [Unit] Description=Home Assistant After=network.target postgresql.service ``` + +Save the file then reload `systemctl`: + +```bash +$ sudo systemctl daemon-reload +``` +
## {% linkable_title Installation notes %} From f50be7c5e831ed0d703eaf67e7f27a9e44ed4f4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Nu=C3=B1ez?=Date: Tue, 6 Mar 2018 18:10:34 -0300 Subject: [PATCH 53/61] adding a method to Recovery the token (#4833) * adding a method to Recovery the token The access token also can be found with the Command Line tool from miio. I tested this and works. * Update format --- .../_components/vacuum.xiaomi_miio.markdown | 39 +++++++++++++++++-- 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/source/_components/vacuum.xiaomi_miio.markdown b/source/_components/vacuum.xiaomi_miio.markdown index 03a8b0ecec6..403a0f42720 100644 --- a/source/_components/vacuum.xiaomi_miio.markdown +++ b/source/_components/vacuum.xiaomi_miio.markdown @@ -133,12 +133,43 @@ The following table shows the units of measurement for each attribute: ## {% linkable_title Retrieving the Access Token %} -This token (32 hexadecimal characters) is required for the Xiaomi Mi Robot -Vacuum, Xiaomi Philips Lights and Xiaomi IR Remote. The Xiaomi Gateway uses another security -method and requires a `key` (16 alphanumeric chars), which can be obtained -easily via a hidden menu item at the Mi-Home app. +This token (32 hexadecimal characters) is required for the Xiaomi Mi Robot Vacuum, Xiaomi Philips Lights and Xiaomi IR Remote. The Xiaomi Gateway uses another security method and requires a `key` (16 alphanumeric chars), which can be obtained +easily via a hidden menu item at the Mi-Home app or using the `miio` command line tool.
+#### {% linkable_title Miio command line tool %} + +You can install the command line tool with: + +```bash +$ npm install -g miio +``` + +Discovering devices on current network + +```bash +$ miio discover +``` + +This will list devices that are connected to the same network as your computer. Let it run for a while so it has a chance to reach all devices, as it might take a minute or two for all devices to answer. + +The commands outputs each device on this format: + +```text +Device ID: 48765421 +Model info: zhimi.airpurifier.m1 +Address: 192.168.100.9 +Token: token-as-hex-here via auto-token +Support: At least basic +``` + +The information output is: + +* __Device ID__ - the unique identifier of the device, does not change if the device is reset. +* __Model ID__ - the model id if it could be determined, this indicates what type of device it is +* __Address__ - the IP that the device has on the network +* __Token__ - the token of the device or ??? if it could not be automatically determined + #### {% linkable_title Windows and Android %} To fetch the token follow these instructions depending on your mobile phone platform. From 5cd3526d56ab9a2e216d242772efa270ac71e7ca Mon Sep 17 00:00:00 2001 From: Matt FDate: Tue, 6 Mar 2018 15:35:31 -0600 Subject: [PATCH 54/61] Update docker compose examples (#4816) The docker compose examples have you create a service called 'web', which will create web_1 docker container. Other references within the documents say to run `docker restart home-assistant`, yet this docker container does not exist when using the docker compose examples. Updated compose so they will have a standard name for the container that is created. --- source/_docs/installation/docker.markdown | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown index 0a531af7546..79eef349695 100644 --- a/source/_docs/installation/docker.markdown +++ b/source/_docs/installation/docker.markdown @@ -92,7 +92,8 @@ As the docker command becomes more complex, switching to `docker-compose` can be ```yaml version: '3' services: - web: + homeassistant: + container_name: home-assistant image: homeassistant/home-assistant volumes: - /path/to/your/config:/config @@ -120,7 +121,8 @@ or in a `docker-compose.yml` file: ```yaml version: '3' services: - web: + homeassistant: + container_name: home-assistant image: homeassistant/home-assistant volumes: - /path/to/your/config:/config From 98da394a611394f6f19072667d16a4f6513d2de4 Mon Sep 17 00:00:00 2001 From: R Huish Date: Tue, 6 Mar 2018 21:37:16 +0000 Subject: [PATCH 55/61] MQTT Sensor - JSON attributes example (#4755) * MQTT Sensor - JSON attributes example As per discusstions https://community.home-assistant.io/t/how-to-use-json-attributes-e-g-mqtt-sensor/40790/16 * Corrected Typo * Escaping --- source/_components/sensor.mqtt.markdown | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/source/_components/sensor.mqtt.markdown b/source/_components/sensor.mqtt.markdown index e6b96b3bc1d..aebe44beb99 100644 --- a/source/_components/sensor.mqtt.markdown +++ b/source/_components/sensor.mqtt.markdown @@ -82,6 +82,32 @@ json_attributes: In this section you find some real life examples of how to use this sensor. +### {% linkable_title JSON attributes configuration %} + +The example sensor below shows a configuration example which uses JSON in the state topic to add extra attributes. It also makes use of the availability topic. Attributes can then be extracted in [Templates](configuration/templating/#attributes); Example to extract data from the sensor below {% raw %}'{{ states.sensor.bs_client_name.attributes.ClientName }}'{% endraw %}. + +{% raw %} +```yaml +# Example configuration.yml entry +sensor: + - platform: mqtt + state_topic: "HUISHS/BunnyShed/NodeHealthJSON" + name: "BS RSSI" + unit_of_measurement: "dBm" + value_template: '{{ value_json.RSSI }}' + availability_topic: "HUISHS/BunnyShed/status" + payload_available: "online" + payload_not_available: "offline" + json_attributes: + - ClientName + - IP + - MAC + - RSSI + - HostName + - ConnectedSSID +``` +{% endraw %} + ### {% linkable_title Get battery level %} If you are using the [Owntracks](/components/device_tracker.owntracks/) and enable the reporting of the battery level then you can use a MQTT sensor to keep track of your battery. A regular MQTT message from Owntracks looks like this: From f77c8fe85ed04e1864a717cbd1a469fa4754d920 Mon Sep 17 00:00:00 2001 From: Christopher Vella <1883514+chrisvella@users.noreply.github.com> Date: Wed, 7 Mar 2018 09:22:36 +1100 Subject: [PATCH 56/61] Added instructions for magisk based root (#4843) * Added instructions for magisk based root AFAIK Magisk does not integrate with Android to provide an option for shell over adb. However it does allow you to escalate privileges once in a shell. * Minor changes --- .../_components/vacuum.xiaomi_miio.markdown | 21 +++++++------------ 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/source/_components/vacuum.xiaomi_miio.markdown b/source/_components/vacuum.xiaomi_miio.markdown index 403a0f42720..3c3b624e8f2 100644 --- a/source/_components/vacuum.xiaomi_miio.markdown +++ b/source/_components/vacuum.xiaomi_miio.markdown @@ -13,8 +13,7 @@ ha_release: 0.51 ha_iot_class: "Local Polling" --- -The `xiaomi miio` vacuum platform allows you to control the state of your -[Xiaomi Mi Robot Vacuum](http://www.mi.com/roomrobot/). +The `xiaomi miio` vacuum platform allows you to control the state of your [Xiaomi Mi Robot Vacuum](http://www.mi.com/roomrobot/). Currently supported features are: @@ -50,10 +49,7 @@ Configuration variables: ## {% linkable_title Platform Services %} -In addition to [all of the services provided by the `vacuum` component] -]) (`turn_on`, `turn_off`, `start_pause`, `stop`, `return_to_home`, `locate`, -`set_fan_speed` and `send_command`), the `xiaomi` platform introduces specific -services to access the remote control mode of the robot. These are: +In addition to all of the services provided by the `vacuum` component (`turn_on`, `turn_off`, `start_pause`, `stop`, `return_to_home`, `locate`, `set_fan_speed` and `send_command`), the `xiaomi` platform introduces specific services to access the remote control mode of the robot. These are: - `xiaomi_remote_control_start` - `xiaomi_remote_control_stop` @@ -62,8 +58,7 @@ services to access the remote control mode of the robot. These are: ### {% linkable_title Service `vacuum/xiaomi_remote_control_start` %} -Start the remote control mode of the robot. You can then move it with -`remote_control_move`; when done, call `remote_control_stop`. +Start the remote control mode of the robot. You can then move it with `remote_control_move`; when done, call `remote_control_stop`. | Service data attribute | Optional | Description | |---------------------------|----------|-------------------------------------------------------| @@ -79,8 +74,7 @@ Exit the remote control mode of the robot. ### {% linkable_title Service `vacuum/xiaomi_remote_control_move` %} -Remote control the robot. Please ensure you first set it in remote control -mode with `remote_control_start`. +Remote control the robot. Please ensure you first set it in remote control mode with `remote_control_start`. | Service data attribute | Optional | Description | |---------------------------|----------|-------------------------------------------------------| @@ -103,9 +97,8 @@ Enter remote control mode, make one move, stop, and exit remote control mode. ## {% linkable_title Attributes %} -In addition to [all of the attributes provided by the `vacuum` component](https://home-assistant.io/components/vacuum/#attributes), -(`battery_icon`, `cleaned_area`, `fan_speed`, `fan_speed_list`, `status`, and -`params`), the `xiaomi` platform introduces specific attributes. These are: +In addition to [all of the attributes provided by the `vacuum` component](/components/vacuum/#attributes), +(`battery_icon`, `cleaned_area`, `fan_speed`, `fan_speed_list`, `status`, and `params`), the `xiaomi` platform introduces specific attributes. These are: - `cleaning_time` - `do_not_disturb` @@ -236,7 +229,7 @@ To fetch the token follow these instructions depending on your mobile phone plat 3. Get ADB f.e. `apt-get install android-tools-adb` 4. `adb devices` should list your device 5. `adb root` (does work for development builds only: ones with `ro.debuggable=1`) -6. `adb shell` +6. `adb shell` (for those using Magisk based root the previous command won't work. After entering a shell, type `su` to enter the root shell) 7. `echo "select name,localIP,token from devicerecord;" | sqlite3 /data/data/com.xiaomi.smarthome/databases/miio2.db` returns a list of all registered devices including IP address and token. #### {% linkable_title iOS %} From 7f711ea1eacf27a0a87488e1aa54e20f5dee6223 Mon Sep 17 00:00:00 2001 From: Niklas V Date: Tue, 6 Mar 2018 23:30:39 +0100 Subject: [PATCH 57/61] Added port 3307 to Maira DB (#4743) Maria DB 10 have changed port from 3306 that Maria DB are using and is standard in this component. Maria DB is using port 3307 instead and that need to be added in the configuration to work. I have added a note in the description to add the port to the server_ip. --- source/_components/recorder.markdown | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/_components/recorder.markdown b/source/_components/recorder.markdown index b0d42275064..6e51c653824 100644 --- a/source/_components/recorder.markdown +++ b/source/_components/recorder.markdown @@ -157,6 +157,8 @@ If the `recorder` component is activated then some components support `restore_s | MS SQL Server | `mssql+pymssql://user:pass@SERVER_IP/DB_NAME?charset=utf8` | +If you use MariaDB 10 you need to add port 3307 to the SERVER_IP, e.g., `mysql://user:password@SERVER_IP:3307/DB_NAME?charset=utf8`. + +If you are running a database server instance on the same server as Home Assistant then you must ensure that this service starts before Home Assistant. For a Linux instance running Systemd (Raspberry Pi, Debian, Ubuntu and others) then you should edit the service file. ```bash @@ -176,7 +178,6 @@ Save the file then reload `systemctl`: ```bash $ sudo systemctl daemon-reload ``` -
## {% linkable_title Installation notes %} From 91a0bab2127c8e311e702cd5107536d7d96379da Mon Sep 17 00:00:00 2001 From: Christopher Vella <1883514+chrisvella@users.noreply.github.com> Date: Wed, 7 Mar 2018 09:31:04 +1100 Subject: [PATCH 58/61] Current Mi-Home app does not store the token with the db (#4844) Added some instructions for downgrading the apk to retrieve the token. The current root method does not work with the latest version of the app. I have not tested iOS but I assume the same would be true for all platforms/methods. I suggested apkmirror because they do signed builds and we want to avoid newbies grabbing malware. --- source/_components/vacuum.xiaomi_miio.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/_components/vacuum.xiaomi_miio.markdown b/source/_components/vacuum.xiaomi_miio.markdown index 3c3b624e8f2..49b1c9b1324 100644 --- a/source/_components/vacuum.xiaomi_miio.markdown +++ b/source/_components/vacuum.xiaomi_miio.markdown @@ -126,6 +126,8 @@ The following table shows the units of measurement for each attribute: ## {% linkable_title Retrieving the Access Token %}+As per [python-miio issue 185](https://github.com/rytilahti/python-miio/issues/185) the Mi-Home app no longer stores the token within the database (it's retrieved from Xiaomi servers from version 5.0.31+). Currently the only known fix is to uninstall, then install a downgraded version of the apk. Apkmirror is a trusted source for older versions of the app. [Mi-Home version 5.0.0](https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-0-0-release/) is confirmed as working for the following Android methods. + This token (32 hexadecimal characters) is required for the Xiaomi Mi Robot Vacuum, Xiaomi Philips Lights and Xiaomi IR Remote. The Xiaomi Gateway uses another security method and requires a `key` (16 alphanumeric chars), which can be obtained easily via a hidden menu item at the Mi-Home app or using the `miio` command line tool.
From b3d7794354dee75ccf9b39fba26bd8c40fce5157 Mon Sep 17 00:00:00 2001 From: Niklas WagnerDate: Wed, 7 Mar 2018 14:08:41 +0100 Subject: [PATCH 59/61] Update date; current state of OpenZWave and S2 Source: - https://groups.google.com/d/msg/openzwave/nK6Pw2vwoZQ/9rXQYix2AQAJ - https://github.com/OpenZWave/open-zwave/commits/master --- source/_docs/z-wave/devices.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/z-wave/devices.markdown b/source/_docs/z-wave/devices.markdown index 13d2966b4f4..92d43f00948 100644 --- a/source/_docs/z-wave/devices.markdown +++ b/source/_docs/z-wave/devices.markdown @@ -39,7 +39,7 @@ The key improvements are: ### {% linkable_title Z-Wave Security 2 %} -From 2 April 2017 all newly approved Z-Wave devices will have to support the Security 2 (S2) framework. At the time of writing this (September 2017) OpenZWave does not support the S2 framework. +From 2 April 2017 all newly approved Z-Wave devices will have to support the Security 2 (S2) framework. At the time of writing this (March 2018) OpenZWave does not support the S2 framework. ## {% linkable_title Device power %} From c7e78ce394a603a99e1e63b0d185c00d95272072 Mon Sep 17 00:00:00 2001 From: Philipp Wensauer Date: Wed, 7 Mar 2018 15:35:55 +0100 Subject: [PATCH 60/61] Current (#4854) * Using vectorized version. * Vectorized it. * Forgot to upload... --- source/developers/architecture.markdown | 2 +- .../images/architecture/ha_architecture.svg | 856 ++++++++++++++++++ 2 files changed, 857 insertions(+), 1 deletion(-) create mode 100644 source/images/architecture/ha_architecture.svg diff --git a/source/developers/architecture.markdown b/source/developers/architecture.markdown index c92361a4fc2..afe8a21ef9c 100644 --- a/source/developers/architecture.markdown +++ b/source/developers/architecture.markdown @@ -35,7 +35,7 @@ The Home Assistant core is responsible for Home Control. Home Assistant contains -
diff --git a/source/images/architecture/ha_architecture.svg b/source/images/architecture/ha_architecture.svg new file mode 100644 index 00000000000..dbe41b93bc9 --- /dev/null +++ b/source/images/architecture/ha_architecture.svg @@ -0,0 +1,856 @@ + + + + From 7f13d4f50013e0d13651431b6e3c599180a1e528 Mon Sep 17 00:00:00 2001 From: Andy Shilton+
Overview of the Home Assistant core architecture
Date: Thu, 8 Mar 2018 00:21:14 +0000 Subject: [PATCH 61/61] Spelling mistake (#4858) "simple" to "simply" --- source/_components/sensor.worldclock.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.worldclock.markdown b/source/_components/sensor.worldclock.markdown index c195fe37ce9..e9f4ac8f9bf 100644 --- a/source/_components/sensor.worldclock.markdown +++ b/source/_components/sensor.worldclock.markdown @@ -14,7 +14,7 @@ ha_release: pre 0.7 --- -The `worldclock` sensor platform simple displays the current time in a different time zone +The `worldclock` sensor platform simply displays the current time in a different time zone To enable this sensor in your installation, add the following to your `configuration.yaml` file: