Emacs から home assistant を使ってみた話

GNU Emacs からhome assistantを使う、hassを設定してみたので記事を書いてみます。例えば M-x hass-call-service で色々な機器を操作できます。

今回の設定は以下のようになります。

(leaf hass
  :ensure t
  :custom
  `((hass-host . ,(plist-get
                   (car
                    (auth-source-search
                     :host "homeassistant"))
                   :user))
    (hass-apikey . ,(auth-source-pick-first-password
                     :host "homeassistant"))
    (hass-port . ,(or (plist-get
                       (car
                        (auth-source-search
                         :host "homeassistant"))
                       :port)
                      ;; We use 8123 by default.
                      "8123")))
  :config
  (hass-setup))

今回、諸々の設定は Emacs の auth-source/auth-info にいれて、設定ファイルには一切書かないようにしてみました。 ~/.authinfo などに host が “homeassistant” の行を作り、その行の “user” 列に home assistant サーバーのホスト名を、 “password” 列に API キーを記入していることを仮定しています。また、 “port” 列にポートを書くこともできます (デフォルトでは 8123 ポートを使用します)。