Đây là danh sách các thuật ngữ, khái niệm thông dụng nhất trong Home Assistant. Hiểu rõ các khái niệm hay thuật ngữ này sẽ giúp bạn làm chủ Home Assistant dễ dàng hơn. Danh sách các thuật ngữ hay khái niệm này chưa hoàn toàn đầy đủ và sẽ được cập nhật, sửa đổi thêm.
Home Assistant Core / Home Assistant / Hass.io Supervisor / HassOS /Add-on
Action / Automation / Component / Condition / Cover / Customize / Device / Device Tracker / Discovery / Entity / Event / Frontend / Group / Integration / Light / Lovelace / Notification / Platform / Scene / Script / Sensor / Service / State / Switch / TTS / Template / Trigger / Zone
Home Assistant Core
Thành phần “lõi” chứa tất cả các tính năng cơ bản và cần thiết để máy chủ Home Assistant hoạt động. Trong các bài viết tại konnected.vn, Home Assistant Core thường được gọi tắt là Core. Home Assistant Core được viết bằng ngôn ngữ Python (phiên bản 3.7), hoạt động trên hầu hết các máy chủ linux/windows được hỗ trợ bởi ngôn ngữ này. Để vận hành một máy chủ Hass thì Home Assistant Core là thành phần cần thiết và duy nhất cần thiết.
Ghi chú về ngôn ngữ trong Hass
Ngôn ngữ mặc định trong Hass là tiếng Anh nhưng Hass có khả năng tự chuyển ngôn ngữ phù hợp dựa vào cài đặt ngôn ngữ hoặc vị trí của người dùng. Tiếng Việt trên Hass được hỗ trợ bởi cộng đồng người dùng Việt và vẫn đang được hoàn chỉnh. Người dùng thông thường có thể sử dụng Hass mà không cần phải biết tiếng Anh.
* KonnectED Team cũng đang tham gia phát triển ngôn ngữ Tiếng Việt cho Home Assistant và một số component khác
Tuy nhiên, với người dùng chuyên sâu hơn, mong muốn làm chủ hoàn toàn hoặc sử dụng Home Assistant cho các mục đích nâng cao thì việc biết và nhận dạng được các khái niệm, từ khoá tiếng Anh cơ bản trong Home Assistant sẽ giúp ích rất nhiều. Do vậy, chúng tôi, nhóm tác giả và KonnectED Team, mặc dù luôn dùng tiếng Việt là ngôn ngữ chính trong các nội dung của mình, cố gắng chú thích thêm bằng tiếng Anh nguyên bản đối với các từ khoá quan trọng hoặc dễ gây nhầm lẫn khi chuyển ngữ.
Mong các bạn thông cảm và ủng hộ!
Home Assistant
Home Assistant bao gồm Home Assistant Core, Supervisor và các công cụ khác giúp hỗ trợ và quản lý server Home Assistant dễ dàng hơn. Các công cụ này thường được hiểu là các Add-ons nhưng ngoài ra còn các công cụ khác như công cụ hỗ trợ DNS, Audio v.v… Các công cụ này hầu hết có thể được cài đặt, truy cập và quản lý thông qua giao diện người dùng (Front-end) của Hass, thường được truy cập nhanh qua menu Supervisor trên giao diện.
Home Assistant Core không bao gồm và không thể quản lý các công cụ này trên giao diện của Home Assistant (mà thường được bổ sung và quản lý từ hệ điều hành).
Home Assistant Supervised & Supervisor
Home Assistant Supervised là hệ thống bao gồm Home Assistant Core, Supervisor và các Add-ons hoạt động nhờ ứng dụng ảo hoá Docker và được quản lý bằng công cụ Supervisor.
Có thể hiểu Home Assistant Supervised là một phương thức/cách cài đặt và vận hành Home Assistant (có thể hiểu Home Assistant Supervised là một bản Home Assistant cài trên Docker trên một hệ điều hành Linux thông dụng).
Supervisor: phần mềm/công cụ nhằm mục đích quản lý như cập nhật, cài/xoá Home Assistant Core, Add-ons, bản thân công cụ này và cả các thành phần của hệ điều hành nếu bạn sử dụng HassOS.
HassOS
Home Assistant Operating System là hệ điều hành được tối thiểu hoá (minimized) chủ yếu để chạy trên các máy tính một bo mạch (SBC, như Pi) hoặc máy ảo. HassOS bao gồm cả hệ điều hành và Home Assistant. Ở thời điểm hiện tại thì HassOS và Home Assistant gần như tương đương về tính năng, tuy nhiên HassOS là phương thức cài đặt được khuyến nghị bởi home-assistant.io trên các thiết bị được hỗ trợ.
HassOS hiện chỉ hỗ trợ một số thiết bị như Raspberry Pi, Intel-Nuc, TinkerBoard, Odroid, các máy ảo tạo bởi: VMWare, VirtualBox.
Add-on
Là các ứng dụng độc lập chạy cùng với Home Assistant Core để cung cấp các tính năng, hỗ trợ thêm. Đa phần các ứng dụng này được tích hợp vào Home Assistant như các Tích hợp (xem thêm Integration) và được quản lý bằng Supervisor. Các add-on thông dụng bao gồm MQTT Broker, Samba hay Duckdns.
Action
Hành động, là một Sự kiện dành riêng cho tự động hoá, được thực hiện khi xảy ra một sự kiện kích hoạt mà các điều kiện cho trước thoả mãn.
Các action phổ biến: thay đổi trạng thái của một thực thể (đèn, công tắc, điều hoà không khí); gửi một thông báo; kích hoạt một action khác.
Automation
Tự động hoá, một trong các điểm mạnh của Hass, cho phép thực hiện một hoặc một chuỗi Action khi có một hoặc một nhóm kích hoạt (có thể rất phức tạp và linh hoạt) xảy ra. Automation cũng cho phép kiểm tra các điều kiện trước khi thực hiện action phù hợp.
Component
Còn gọi là tích hợp. Xem dưới đây.
Condition
Điều kiện, sử dụng trong Automation hay Script. Khi được cho trước, các action chỉ được thực hiện khi thoả mãn điều kiện này. Các điều kiện cho ra kết quả True/False (đúng/sai) tương đương cặp giá trị 1/0 (nghĩa là bạn có thể kiểm tra một điều kiện bằng cách kiểm tra giá trị trả về bằng 1 hay 0). Các điều kiện có thể được kết hợp với nhau theo kiểu và (and), hoặc (or) hay kết hợp nhiều cặp và/hoặc rất linh hoạt.
Cover
Che phủ, thường dùng cho các thiết bị như cửa garage, rèm hay lá sách cửa sổ. Thường được điều khiển đóng/mở hoàn toàn hoặc một phần.
Customize / Customization
Tuỳ biến, Hass cho phép bạn tuỳ ý thay đổi một vài thông số (attribute) mặc định của thực thể như tên hiển thị (friendly name), biểu tượng (icon), đơn vị đo lường (unit of measurement) v.v… để phù hợp với việc hiển thị hoặc quản lý.
Device
Thiết bị, thường dùng để chỉ đến một thiết bị vật lý mà bạn có thể tích hợp vào Hass.
Device tracker
Theo dõi thiết bị, là platform dùng để nhận biết sự hiện diện (như ở trong một khu vực) hoặc vị trí của một thiết bị.
Discovery
Tự động nhận dạng, là một tích hợp của Hass nhằm mục đích tự phát hiện các thiết bị và thiết lập kèm theo hiện có trong mạng thông qua các giao thức UPnP (Universal Plug and Play, xem thêm), ZeroConf/mDNS (từng được biết đến dưới tên Avahi/Bonjour, là một nhóm các công nghệ kết hợp nhằm mục đích tạo nên một mạng lưới cho phép các thiết bị cùng mạng tìm và trao đổi thông tin với nhau, xem thêm).
zeroconf integration trong Hass sẽ thường xuyên “quét” trong mạng để tìm các thiết bị và dịch vụ có hỗ trợ (như homekit), đồng thời cũng “quảng bá” (broadcast) máy chủ Hass và các dịch vụ hiện hữu đến các thiết bị khác trong mạng.
Domain
Miền/Lĩnh vực, là tập hợp các entity (xem ở dưới) có chung một dạng trạng thái (state), kích hoạt các sự kiện giống nhau và cung cấp các dịch vụ (service) tương tự nhau. Để truy cập một entity cụ thể, bạn cần phải truy cập nó dưới một miền, ví dụ switch.den_san_vuon
với den_san_vuon là entity thuộc về domain switch.
Ví dụ, miền light là tập hợp các thực thể có trạng thái là ON/OFF (bật/tắt), kích hoạt các sự kiện như State_changed (thay đổi trạng thái) và cung cấp các dịch vụ như light.turn_on
, light.turn_off
(bật đèn, tắt đèn) hoặc dịch vụ đặc trưng như thiết lập màu sắc và độ sáng (mà domain switch sẽ không có).
Các domain thông dụng bao gồm: automation, climate, device_tracker, group, input_***, light, media_player, scene, script, sensor, binary_sensor, switch, weather.
Entity
Thực thể, là “thể hiện” (hay đại diện – representation) của một chức năng của một thiết bị hay một dịch vụ trong Hass. Entity là đơn vị cơ bản của Home Assistant dùng để quản lý và hiện thị các chức năng hay thực hiện các hành động. Một thiết bị hay dịch vụ có thể có một hay nhiều thực thể khác nhau.
Ví dụ, một thiết bị cảm biến môi trường sẽ được thể hiện bởi nhiều thực thể trong Home Assistant như nhiệt độ (thường được thể hiện với định danh – entity_id sensor.ambient_temperature), độ ẩm, dung lượng pin, công tắc báo động v.v…
Mỗi entity trong Hass đại diện bằng một mã định danh không trùng lắp, gọi là entity_id. Các thông tin của entity như state được truy cập thông qua mã định danh này.
Event
Sự kiện, rất quan trọng với hoạt động của Hass, đặc biệt cho các chức năng xử lý cơ bản bên trong. Sự kiện được tạo ra (fired) bởi các tích hợp hoặc bản thân Hass (lưu ý, không phải bởi các entity) và cũng được lắng nghe bởi các tích hợp. Các automation đều được kích hoạt (trigger) nhờ những sự kiện này.
Frontend
Giao diện điều khiển, là một tích hợp yêu cầu phải có của Hass để hỗ trợ cho giao diện người dùng cuối (UI). Lovelace, giao diện mặc định có sẵn cho Hass dựa trên tích hợp này.
Group
Nhóm, là một phương thức để quản lý các thực thể trong Hass. Group thường bao gồm nhiều thực thể hoặc các group khác (group trong group trong group). Bạn có thể tương tác với một group thay vì tương tác với các thực thể.
Mặc định, trạng thái (state) của một group sẽ là on (bật) khi tất cả entity trong group đều có trạng thái on. Tuy nhiên bạn có thể đảo ngược điều này với tuỳ chọn all: true khi cài đặt một group.
Integration
Tích hợp, là thành phần tạo nên sự hỗ trợ phong phú và khả năng hoạt động với nhiều loại thiết bị khác nhau của Hass. Mỗi integration chịu trách nhiệm cho một domain trong Hass. Integration chịu trách nhiệm duy trì trạng thái (state), lắng nghe và tạo ra các sự kiện, cung cấp các dịch vụ.
Có một số lượng lớn integration được cung cấp sẵn bởi Hass, một số integration như switch, light được xây dựng từ ban đầu bởi nhóm phát triển Home Assistant nhưng phần lớn được phát triển và duy trì bởi cộng đồng Home Assistant.
Danh sách các integration có sẵn (built-in) trong Hass: integration
Light
Đèn, là một integration cung cấp khả năng điều khiển độ sáng hay nhiệt độ màu, sắc độ màu đối với các entity bên trong domain light.
Lovelace
Lovelace, là tên của giao diện điều khiển (frontend) mặc định, có sẵn của Hass.
Lovelace Dashboard
Bảng điều khiển, được sử dụng trong Lovelace để tập hợp một hoặc một nhóm các Chế độ xem (view) hoặc thẻ nhằm mục đích quản lý. Mỗi dashboard sẽ được tải cùng một lần trên trình duyệt và bao gồm nhiều thiết lập chung như chỉ cho phép Quản trị viên truy cập.
Bạn có thể tạo nhiều Dashboard bằng cách vào Configuration > Lovelace Dashboards.
Lovelace View
Chế độ xem, được sử dụng trong Lovelace để tập hợp một hoặc một nhóm thẻ. View được đại diện vởi một tab bên trong một bảng điều khiển Lovelace (dashboard) và bạn có thể cấu hình chung cho nó như chỉ cho phép Quản trị viên truy cập, thiết lập ảnh nền v.v..
Notification
Thông báo, là một nhóm platform nằm dưới integration notify hỗ trợ gửi tin nhắn, bao gồm cả chữ, ảnh, video v.v… đến các device, các device này có thể được tích hợp trong hass hoặc không. Các platform phổ biến bao gồm Telegram, Facebook, Google Hangouts, Discord, HTML5 Push Notifications, Twitter.
Platform
Nền tảng, giúp Hass kết nối và tương tác với một device hay service cụ thể. Để thật sự điều khiển một thiết bị hay truy cập một dịch vụ, một integration phải thông qua một platform.
Tương tác giữa các Integration, Platform, Entity
Scene
Khung cảnh – ngữ cảnh, sử dụng trong Home Assistant để đảm bảo một hay nhiều thiết bị ở trạng thái mong muốn.
Ví dụ, một kịch bản Đi ngủ tạo ra bởi người dùng sẽ kiểm tra và chắc chắn đèn ngủ ở trạng thái bật trong khi tất cả đèn khác đều ở trạng thái tắt.
Script
Kịch bản, là một integration hỗ trợ người dùng chạy một loạt các action nối tiếp nhau khi được kích hoạt.
Sensor
Cảm biến, cho phép truy cập thông tin (bao gồm state và condition) từ chính Home Assistant (như thời gian từ lúc khởi động – uptime), từ các dịch vụ web (như dịch vụ thông tin thời tiết) hay từ các device vật lý (như thiết bị cảm biến khói, chuyển động).
Service
Dịch vụ, được sử dụng để tương tác với Hass và các integration nhằm thực hiện các action. Các service này có thể được gọi từ automation, script hay thông qua các integration khác như Google Assistant.
Bạn có thể gọi một dịch vụ bằng tên và cung cấp các thông tin cần thiết cho nó, như ví dụ sau:
service: scene.turn_on
entity_id: scene.den_gio_di_tam
State
Trạng thái, cung cấp thông tin cơ bản nhất của một entity trong Home Assistant. Các entity công bố state của mình cho Home Assistant và mọi integration đều có thể truy cập thông tin này.
Đối tượng States – States object, chứa state và một số thông tin khác của cùng một entity. States đại diện cho một entity trong Hass và luôn chứa ít nhất thông tin về entity_id, state, và mốc thời gian (timestamp) thay đổi lần cuối – last_changed, cập nhật lần cuối – last_updated. Một số thông tin khác của States bao gồm domain, name, attributes (thuộc tính).
Lưu ý rằng, (đối tượng) States chỉ đại diện cho entity chứ không thực sự là một entity, nghĩa là, nếu bạn bằng cách nào đó (như sử dụng công cụ dành cho nhà phát triển – developer tools) thay đổi trực tiếp state của một entity thì trạng thái vật lý thực sự của entity đó vẫn không thay đổi.
Switch
Công tắc, tương tự như thiết bị cùng tên phổ biến để điều khiển các thiết bị điện, là domain cơ bản của Hass, bao gồm các entity có state gồm hai giá trị on/off và bạn có thể chuyển giữa hai state này.
TTS
Chuyển chữ thành lời – Text To Speech, là một integration với chức năng chính là thông báo bằng giọng nói đến người dùng thông qua các platform như Google Translate hay Microsoft Speech.
Template
Bản mẫu hay mẫu sẵn, là một tính năng mạnh mẽ của Hass giúp bạn tự ý thay đổi các thông tin trong Hass (đa phần là các thông tin đến từ States object) theo các khuôn mẫu do bạn định sẵn. Ban đầu template được sử dụng chủ yếu trong automation, nhưng bạn cũng có thể sử dụng nó ở rất nhiều nơi với rất nhiều integration khác.
Làm chủ template giúp bạn linh hoạt hơn rất nhiều lần khi hiện thực ý tưởng của mình trong Hass.
Trigger
Kích hoạt, sử dụng trong automation bao gồm một hoặc một tập giá trị hoặc điều kiện mà khi thoả mãn sẽ kích hoạt việc thực thi action. Trigger có thể là điều kiện về thời gian, một thay đổi về state, một giá trị/điều kiện có được từ template hay một event v.v..
Zone
Vùng, là một khu vực địa lý (nhỏ) thường được giới hạn bởi một toạ độ (latitude/longitude) trung tâm và bán kính (radius). Zone được sử dụng để kiểm tra sự hiện diện của một người hay thiết bị dựa trên thông tin vị trí trực tiếp hay nội suy từ device tracker.
Về Bài viết
Bài viết chưa đầy đủ hoặc bạn còn có ý kiến khác? Bạn có thắc mắc và cần thêm thông tin. Vui lòng đăng ý kiến vào mục bình luận để tác giả và Team có thêm thông tin cải thiện chất lượng bài viết. Chúng tôi sẽ giải đáp các thắc mắc ngay trong mục bình luận để giúp được nhiều đọc giả với cùng vấn đề hơn hoặc chúng tôi sẽ trả lời trong một bài viết riêng. Trân trọng cảm ơn bạn!
Cảm ơn bạn đã xem bài viết này!
konnectED Team.