{"config":{"indexing":"full","lang":["en"],"min_search_length":3,"prebuild_index":false,"separator":"[\\s\\-]+"},"docs":[{"location":"","text":"HomeAssistant\u672c\u5730\u90e8\u7f72\u53ca\u88c5\u8c03\u8bd5\u8bf4\u660e \u00b6 \u7b80\u8981\u8bf4\u660e \u5b89\u88c5HomeAssistant linux \u4e0b\u5b89\u88c5","title":"\u9996\u9875"},{"location":"#homeassistant","text":"\u7b80\u8981\u8bf4\u660e \u5b89\u88c5HomeAssistant linux \u4e0b\u5b89\u88c5","title":"HomeAssistant\u672c\u5730\u90e8\u7f72\u53ca\u88c5\u8c03\u8bd5\u8bf4\u660e"},{"location":"about/","text":"\u5173\u4e8e\u6211\u4eec \u00b6 \u5cb1\u7279\u667a\u80fd\u79d1\u6280\uff08\u4e0a\u6d77\uff09\u6709\u9650\u516c\u53f8 \u00b6 \u6570\u636e\u6d41\u52a8\u4e4b\u5904\uff0c\u6548\u7387\u81ea\u7136\u53d1\u751f\u3002 \u00b6 DATA\u4ee3\u8868\u611f\u77e5\u3001\u8fde\u63a5\u4e0e\u667a\u80fd\u3002\u5728\u7e41\u6742\u7684\u533b\u7597\u6570\u636e\u4e2d\uff0c\u4e00\u573a\u6570\u5b57\u5316\u9769\u547d\u6b63\u5728\u53d1\u751f\uff0c\u6211\u4eec\u5b88\u62a4\u7684\u4e0d\u6b62\u662f\u6570\u636e\uff0c\u66f4\u662f\u60a3\u8005\u7684\u6bcf\u4e00\u5206\u949f\u3002\u5cb1\u7279\u667a\u80fd\u2013\u8ba9\u6bcf\u4e00\u53f0\u8bbe\u5907\u6210\u4e3a\u667a\u6167\u533b\u7597\u7684\u795e\u7ecf\u5143\u3002 25\u5e74\u533b\u7597\u4fe1\u606f\u5316\u6df1\u8015\u8005\uff0c\u56e2\u961f\u81ea2000\u5e74\u8d77\u6301\u7eed\u63a2\u7d22\u4fe1\u606f\u5316\u5728\u533b\u7597\u573a\u666f\u7684\u6df1\u5ea6\u5e94\u7528 \u00b6 \u6700\u4f73\u5b9e\u8df5\uff1a\u670d\u52a1\u5168\u7403\u8d85\u8fc7600+\u533b\u7597\u673a\u6784\uff0c\u7eed\u7ea6\u7387\u8d8597% \u5168\u7403\u670d\u52a1\uff1a\u72ec\u7acb\u7684\u82f1/\u65e5/\u9a6c\u6765\u8bed\u7248\u672c\uff0c\u9002\u914d\u5f53\u5730\u4e34\u5e8a\u8def\u5f84 \u6784\u5efa\u6807\u51c6\uff1a\u4e3b\u5bfc\u5236\u5b9a\u591a\u9879\u6807\u51c6\uff0c\u300c\u8840\u6db2\u900f\u6790\u8f6f\u4ef6\u6280\u672f\u8981\u6c42\u300d \u6570\u636e\u4e3b\u6743\uff1a\u5373\u4f7f\u7ec8\u6b62\u5408\u4f5c\uff0c\u4ecd\u7136\u4fdd\u8bc1\u7528\u6237\u4e0d\u53d7\u9650\u5236\u7684\u8bbf\u95ee \u56de\u5f52\u672c\u8d28 \u00b6 \u4e0d\u662f\u7528\u6280\u672f\u66ff\u4ee3\u4eba,\u800c\u662f\u8ba9\u800c\u662f\u8ba9\u4eba\u4ece\u91cd\u590d\u52b3\u52a8\u4e2d\u89e3\u653e\uff0c\u56de\u5f52\u533b\u7597\u670d\u52a1\u7684\u672c\u8d28\u3002 \u77e5\u8bc6\u53cd\u54fa \u00b6 \u57fa\u5c42\u533b\u9662\u6848\u4f8b\u81ea\u52a8\u6c89\u6dc0\u4e3a\u4e09\u7532\u4f18\u5316\u7b56\u7565\uff0c\u8bc6\u522b\u79d1\u5ba4\u5de5\u4f5c\u6d41\u5dee\u5f02\uff0c\u751f\u6210\u5b9a\u5236\u65b9\u6848\u3002 \u5f00\u653e\u751f\u6001 \u00b6 \u5f00\u653eAPI\uff0c\u96c6\u6210100+\u7b2c\u4e09\u65b9\u89e3\u51b3\u65b9\u6848\uff0c\u5171\u5efa\u533b\u7597\u6570\u636e\u4ea4\u4e92\u6807\u51c6\u3002 \u4e3a\u60a8\u6784\u5efa\u53ef\u751f\u957f\u7684\u6280\u672f\u751f\u6001\u548c\u53ef\u6301\u7eed\u7684\u4e1a\u52a1 \u00b6 \u50cf\u642d\u79ef\u6728\u822c\u81ea\u7531\u6269\u5c55\uff0c\u7834\u9664\u201d\u6570\u5b57\u5316=\u9ad8\u6295\u5165\uff0c\u4ece\u57fa\u7840\u7269\u8054\u5230AI\u51b3\u7b56\uff0c\u5206\u9636\u6bb5\u5efa\u8bbe\u907f\u514d\u4e00\u6b21\u6027\u8fc7\u8f7d\u6295\u5165\u3002\u4e0d\u662f\u63a8\u7ffb\u91cd\u5efa\u7cfb\u7edf\uff0c\u800c\u662f\u8ba9\u73b0\u6709\u8d44\u4ea7\u6301\u7eed\u4ea7\u751f\u6307\u6570\u7ea7\u4ef7\u503c\u2014\u2014\u8fd9\u624d\u662f\u533b\u7597\u6570\u5b57\u5316\u7684\u7ec8\u6781\u4f7f\u547d\u3002","title":"\u5173\u4e8e"},{"location":"about/#_1","text":"","title":"\u5173\u4e8e\u6211\u4eec"},{"location":"about/#_2","text":"","title":"\u5cb1\u7279\u667a\u80fd\u79d1\u6280\uff08\u4e0a\u6d77\uff09\u6709\u9650\u516c\u53f8"},{"location":"about/#_3","text":"DATA\u4ee3\u8868\u611f\u77e5\u3001\u8fde\u63a5\u4e0e\u667a\u80fd\u3002\u5728\u7e41\u6742\u7684\u533b\u7597\u6570\u636e\u4e2d\uff0c\u4e00\u573a\u6570\u5b57\u5316\u9769\u547d\u6b63\u5728\u53d1\u751f\uff0c\u6211\u4eec\u5b88\u62a4\u7684\u4e0d\u6b62\u662f\u6570\u636e\uff0c\u66f4\u662f\u60a3\u8005\u7684\u6bcf\u4e00\u5206\u949f\u3002\u5cb1\u7279\u667a\u80fd\u2013\u8ba9\u6bcf\u4e00\u53f0\u8bbe\u5907\u6210\u4e3a\u667a\u6167\u533b\u7597\u7684\u795e\u7ecf\u5143\u3002","title":"\u6570\u636e\u6d41\u52a8\u4e4b\u5904\uff0c\u6548\u7387\u81ea\u7136\u53d1\u751f\u3002"},{"location":"about/#252000","text":"\u6700\u4f73\u5b9e\u8df5\uff1a\u670d\u52a1\u5168\u7403\u8d85\u8fc7600+\u533b\u7597\u673a\u6784\uff0c\u7eed\u7ea6\u7387\u8d8597% \u5168\u7403\u670d\u52a1\uff1a\u72ec\u7acb\u7684\u82f1/\u65e5/\u9a6c\u6765\u8bed\u7248\u672c\uff0c\u9002\u914d\u5f53\u5730\u4e34\u5e8a\u8def\u5f84 \u6784\u5efa\u6807\u51c6\uff1a\u4e3b\u5bfc\u5236\u5b9a\u591a\u9879\u6807\u51c6\uff0c\u300c\u8840\u6db2\u900f\u6790\u8f6f\u4ef6\u6280\u672f\u8981\u6c42\u300d \u6570\u636e\u4e3b\u6743\uff1a\u5373\u4f7f\u7ec8\u6b62\u5408\u4f5c\uff0c\u4ecd\u7136\u4fdd\u8bc1\u7528\u6237\u4e0d\u53d7\u9650\u5236\u7684\u8bbf\u95ee","title":"25\u5e74\u533b\u7597\u4fe1\u606f\u5316\u6df1\u8015\u8005\uff0c\u56e2\u961f\u81ea2000\u5e74\u8d77\u6301\u7eed\u63a2\u7d22\u4fe1\u606f\u5316\u5728\u533b\u7597\u573a\u666f\u7684\u6df1\u5ea6\u5e94\u7528"},{"location":"about/#_4","text":"\u4e0d\u662f\u7528\u6280\u672f\u66ff\u4ee3\u4eba,\u800c\u662f\u8ba9\u800c\u662f\u8ba9\u4eba\u4ece\u91cd\u590d\u52b3\u52a8\u4e2d\u89e3\u653e\uff0c\u56de\u5f52\u533b\u7597\u670d\u52a1\u7684\u672c\u8d28\u3002","title":"\u56de\u5f52\u672c\u8d28"},{"location":"about/#_5","text":"\u57fa\u5c42\u533b\u9662\u6848\u4f8b\u81ea\u52a8\u6c89\u6dc0\u4e3a\u4e09\u7532\u4f18\u5316\u7b56\u7565\uff0c\u8bc6\u522b\u79d1\u5ba4\u5de5\u4f5c\u6d41\u5dee\u5f02\uff0c\u751f\u6210\u5b9a\u5236\u65b9\u6848\u3002","title":"\u77e5\u8bc6\u53cd\u54fa"},{"location":"about/#_6","text":"\u5f00\u653eAPI\uff0c\u96c6\u6210100+\u7b2c\u4e09\u65b9\u89e3\u51b3\u65b9\u6848\uff0c\u5171\u5efa\u533b\u7597\u6570\u636e\u4ea4\u4e92\u6807\u51c6\u3002","title":"\u5f00\u653e\u751f\u6001"},{"location":"about/#_7","text":"\u50cf\u642d\u79ef\u6728\u822c\u81ea\u7531\u6269\u5c55\uff0c\u7834\u9664\u201d\u6570\u5b57\u5316=\u9ad8\u6295\u5165\uff0c\u4ece\u57fa\u7840\u7269\u8054\u5230AI\u51b3\u7b56\uff0c\u5206\u9636\u6bb5\u5efa\u8bbe\u907f\u514d\u4e00\u6b21\u6027\u8fc7\u8f7d\u6295\u5165\u3002\u4e0d\u662f\u63a8\u7ffb\u91cd\u5efa\u7cfb\u7edf\uff0c\u800c\u662f\u8ba9\u73b0\u6709\u8d44\u4ea7\u6301\u7eed\u4ea7\u751f\u6307\u6570\u7ea7\u4ef7\u503c\u2014\u2014\u8fd9\u624d\u662f\u533b\u7597\u6570\u5b57\u5316\u7684\u7ec8\u6781\u4f7f\u547d\u3002","title":"\u4e3a\u60a8\u6784\u5efa\u53ef\u751f\u957f\u7684\u6280\u672f\u751f\u6001\u548c\u53ef\u6301\u7eed\u7684\u4e1a\u52a1"},{"location":"Usages/usage/","text":"\u4f7f\u7528\u6559\u7a0b \u00b6 \u57fa\u7840\u914d\u7f6e \u00b6 \u914d\u7f6e\u7f51\u7edc \u521d\u59cb\u5316\u914d\u7f6e \u5fc5\u88c5\u63d2\u4ef6\u6216\u7ec4\u4ef6 \u00b6 - HACS \u00b6","title":"\u4f7f\u7528\u6982\u8ff0"},{"location":"Usages/usage/#_1","text":"","title":"\u4f7f\u7528\u6559\u7a0b"},{"location":"Usages/usage/#_2","text":"\u914d\u7f6e\u7f51\u7edc \u521d\u59cb\u5316\u914d\u7f6e","title":"\u57fa\u7840\u914d\u7f6e"},{"location":"Usages/usage/#_3","text":"","title":"\u5fc5\u88c5\u63d2\u4ef6\u6216\u7ec4\u4ef6"},{"location":"Usages/usage/#-hacs","text":"","title":"- HACS"},{"location":"Usages/QA/HA-%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E7%8A%B6%E6%80%81%E5%8F%8D%E8%BD%AC/","text":"\u9996\u5148\uff0c\u5728\u5c0f\u7c73\u7684\u8bbe\u5907\u91cc\uff0c\u627e\u5230\u4f60\u8981\u53cd\u8f6c\u72b6\u8bb0\u7684\u4f20\u611f\u5668\u7684 ID, \u4ee5\u5927\u8fde\u4e3a\u4f8b\uff0c\u51b0\u7bb1\u95e8\u7684\u4f20\u611f\u5668\u72b6\u6001\u662f\u53cd\u7684\uff0c\u95e8\u5f00\u65f6\u663e\u793a\u5173\u7684\uff0c\u95e8\u5173\u65f6\u663e\u793a\u5f00\u7684\uff0c\u9700\u8981\u53cd\u8f6c\u663e \u6cd5\uff0c\u6b64\u8bbe\u5907\u7684\u4f20\u611f\u5668 ID \u4e3a\uff1a \u201cbinary_sensor.isa_cn_blt_3_1lqaf2rrgco01_dw2hl_contact_state_p_2_2 \u8bb0\u4f4f\u8fd9\u4e2a ID \u627e\u5230\u914d\u7f6e\u6587\u4ef6 \u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u589e\u52a0\u5982\u4e0b\u683c\u5f0f\u7684\u4f20\u611f\u5668\u53cd\u8f6c\u914d\u7f6e\uff0c\u6ce8\u610f\uff0c\u6b64\u914d\u7f6e\u8981\u4e25\u683c\u9075\u5b88 YML \u683c\u5f0f\uff0c\u4e0d\u61c2 \u7684\u53ef\u4ee5\u767e\u5ea6\u5b66\u4e00\u4e0b\uff0c \u5185\u5bb9\u4e3a\uff1a - binary_sensor: - name: \"\u5927\u8fde\u51b0\u7bb1\u95e8-1 (\u72b6\u6001\u53cd\u8f6c)\" unique_id: \"reversed_\u5927\u8fde\u51b0\u7bb1\u95e8_1\" state: > {{ is_state('binary_sensor.isa_cn_blt_3_1lqaf2rrgco01_dw2hl_contact_state_p_2_2', 'off') }} \u6ce8\u610f\uff0cstate \u540e\u9762\u7684\u683c\u5f0f\u8981\u5bf9\uff0c\u4f20\u611f\u5668 ID \u8981\u6362\u6210\u521a\u8bb0\u4e0b\u7684\u4f20\u611f\u5668 ID \u8fd9\u6837\u4f60\u5c31\u591a\u4e86\u4e00\u4e2a\u540d\u79f0\u4e3a\uff1a\u201c\u5927\u8fde\u51b0\u7bb1\u95e8-1 (\u72b6\u6001\u53cd\u8f6c)\u201d\u7684\u4f20\u611f\u5668 \u7136\u540e\uff0c\u5230\u4eea\u8868\u76d8\uff0c\u5bf9\u5e94\u7684\u7ec4\u4ef6\u4e2d \u9009\u4e2d \u5927\u8fde\u51b0\u7bb1\u95e8-1 (\u72b6\u6001\u53cd\u8f6c) \u4fdd\u5b58\u5373\u53ef \u8fd9\u6837\u5c31\u5b9e\u73b0\u4e86\u53cd\u8f6c\uff0c\u4eea\u8868\u76d8\u4e2d\uff0c\u4e0d\u8981\u518d\u4f7f\u7528\u539f\u6765\u7684 ID\uff0c\u8981\u4f7f\u7528\u4f60\u914d\u7f6e\u6587\u4ef6\u4e2d\u65b0\u589e\u7684 id \u6ce8\u610f\uff1a \u5982\u679c\uff0c\u72b6\u6001\u6ca1\u6709\u53cd\u8f6c\uff0c\u53ef\u4ee5\u4ece\u5f00\u53d1\u8005\u5de5\u5177\u4e2d\u67e5\u770b\u4f20\u611f\u5668\u7684\u72b6\u6001\uff0c\u786e\u8ba4\u662f\u5426\u6b63\u786e\u53cd\u8f6c\u3002","title":"HA-\u5982\u4f55\u5b9e\u73b0\u72b6\u6001\u53cd\u8f6c"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/","text":"TQS-88 \u5355\u4eba\u8840\u6db2\u900f\u6790\u673a-\u6570\u636e\u901a\u4fe1\u64cd\u4f5c\u624b\u518c \u00b6 \u6ce8\u610f\u4e8b\u9879 \u00b6 \u5728\u5f00\u59cb\u4f7f\u7528\u900f\u6790\u673a\u524d\u8bf7\u4ed4\u7ec6\u9605\u8bfb\u672c\u64cd\u4f5c\u624b\u518c\u3002 \u4efb\u4f55\u4e0d\u5f53\u64cd\u4f5c\u90fd\u53ef\u80fd\u4f1a\u5bfc\u81f4\u4e8b\u6545\u3002\u4f7f\u7528\u7b26\u5408\u672c\u8bf4\u660e\u7684\u900f\u6790\u673a\u3002 \u8bf7\u5c06\u672c\u64cd\u4f5c\u624b\u518c\u7f6e\u4e8e\u6613\u4e8e\u83b7\u53d6\u7684\u4f4d\u7f6e\uff0c\u4ee5\u4fbf\u5728\u9700\u8981\u65f6\u53ef\u968f\u65f6\u53c2\u9605\u3002 \u672c\u64cd\u4f5c\u624b\u518c\u65e8\u5728\u4e3a\u64cd\u4f5c\u4eba\u5458\u63d0\u4f9b\u4f7f\u7528\"\u6570\u636e\u901a\u4fe1\"\u6240\u9700\u7684\u4fe1\u606f\u3002 \u672c\u64cd\u4f5c\u624b\u518c\u4e3b\u8981\u6db5\u76d6\u4ee5\u4e0b\u6709\u5173\"\u6570\u636e\u901a\u4fe1\"\u7684\u5185\u5bb9\uff1a 1. \u89c4\u683c 2. \u4e0ePC\u7684\u8fde\u63a5 \u6b63\u6587\u4e2d\u8b66\u793a\u5b9a\u4e49\u5982\u4e0b\uff1a - \u6ce8\u610f \uff1a\u6b64\u6807\u5fd7\u540e\u7684\u63cf\u8ff0\u662f\u4f7f\u7528\u8bf4\u660e\u3002\u60a8\u5fc5\u987b\u9075\u5b88\u4f7f\u7528\u8bf4\u660e\u3002 - \u9644\u6ce8 \uff1a\u6b64\u6807\u5fd7\u540e\u7684\u63cf\u8ff0\u662f\u4e3a\u4e86\u8ba9\u60a8\u589e\u8fdb\u7406\u89e3\u7684\u6709\u7528\u4fe1\u606f\u6216\u8865\u5145\u8bf4\u660e\u4e8b\u9879\u3002 \u7b80\u4ecb \u00b6 \u64cd\u4f5c\u6b64\u9009\u914d\u4ef6\uff08\"\u6570\u636e\u901a\u4fe1\"\u529f\u80fd\uff09\u65f6\uff0c\u8bf7\u52a1\u5fc5\u5145\u5206\u7406\u89e3\u548c\u7279\u522b\u6ce8\u610f\u4ee5\u4e0b\u4e8b\u9879\u3002\u4f7f\u7528\u524d\u5fc5\u987b\u5145\u5206\u4e86\u89e3\u5185\u5bb9\u3002 1. \u64cd\u4f5c\u624b\u518c \u00b6 (1) \u672c\u64cd\u4f5c\u624b\u518c\u4ecb\u7ecd\u4e86\u6b63\u786e\u4f7f\u7528\"\u6570\u636e\u901a\u4fe1\"\u6240\u9700\u7684\u4fe1\u606f\u548c\u5b89\u5168\u7684\u64cd\u4f5c\u65b9\u6cd5\uff0c\u5e76\u975e\u65e8\u5728\u8bf4\u660e\u5bf9\u60a3\u8005\u7684\u6cbb\u7597\u3002 (2) \u53ea\u6709\u4ed4\u7ec6\u9605\u8bfb\u5e76\u5145\u5206\u7406\u89e3\u672c\u64cd\u4f5c\u624b\u518c\u4e2d\u6240\u542b\u7684\u8bf4\u660e\u540e\uff0c\u624d\u80fd\u4f7f\u7528\u8bbe\u5907\u5e76\u8fdb\u884c\u64cd\u4f5c\u4ee5\u53ca\u7ef4\u62a4\u3002 (3) \u672c\u64cd\u4f5c\u624b\u518c\u4e2d\u7684\u64cd\u4f5c\u65b9\u6cd5\u548c\u5b89\u5168\u6ce8\u610f\u4e8b\u9879\u9002\u7528\u4e8e\u8fdb\u884c\u7279\u5b9a\u76ee\u7684\u7684\"\u6570\u636e\u901a\u4fe1\"\u4f7f\u7528\u3002\u8bf7\u52ff\u5c1d\u8bd5\u4ee5\u672c\u624b\u518c\u4e2d\u6240\u5217\u4ee5\u5916\u7684\u4efb\u4f55\u65b9\u5f0f\u4f7f\u7528\u8bbe\u5907\u3002 \u672c\u624b\u518c\u7684\u5185\u5bb9\u53d7\u4e1c\u4e3d\u533b\u7597\u79d1\u6280\uff08\u9752\u5c9b\uff09\u80a1\u4efd\u6709\u9650\u516c\u53f8\u7248\u6743\u4fdd\u62a4\uff0c\u4e1c\u4e3d\u533b\u7597\u79d1\u6280\uff08\u9752\u5c9b\uff09\u80a1\u4efd\u6709\u9650\u516c\u53f8\u4fdd\u7559\u6240\u6709\u6743\u5229\u3002\u672a\u7ecf\u4e1c\u4e3d\u533b\u7597\u79d1\u6280\uff08\u9752\u5c9b\uff09\u80a1\u4efd\u6709\u9650\u516c\u53f8\u4e8b\u5148\u4e66\u9762\u540c\u610f\uff0c\u4e0d\u5f97\u4ee5\u4efb\u4f55\u5f62\u5f0f\u590d\u5236\u3001\u8f6c\u8f7d\u672c\u624b\u518c\u4e2d\u7684\u4efb\u4f55\u5185\u5bb9\uff0c\u6216\u5c06\u5176\u8bd1\u4e3a\u5176\u4ed6\u8bed\u8a00\u3002 2. \u8d23\u4efb\u9650\u5236 \u00b6 \u6211\u4eec\u5e0c\u671b\u60a8\u4e8b\u524d\u4e86\u89e3\uff0c\u5bf9\u7531\u4e8e\u64cd\u4f5c\u6b64\u900f\u6790\u673a\u6240\u9020\u6210\u7684\u4efb\u4f55\u53ef\u80fd\u7684\u635f\u5bb3\u6216\u5229\u76ca\u635f\u5931\uff0c\u6211\u4eec\u4e0d\u627f\u62c5\u4efb\u4f55\u8d23\u4efb\u3002 \u8bf7\u52ff\u62c6\u5378\u6216\u6539\u9020\u900f\u6790\u673a\uff0c\u5426\u5219\u5c06\u4e0d\u5728\u5236\u9020\u5546\u4fdd\u4fee\u8303\u56f4\u4e4b\u5185\u3002 \u7531\u4e8e\u5ba2\u6237\u62c6\u5378\u3001\u6539\u9020\u3001\u5206\u89e3\u6216\u4f7f\u7528\u4e0d\u5f53\u4ee5\u53ca\u5b89\u88c5\u73af\u5883\u3001\u642c\u8fd0\u4e0d\u5f53\u7b49\u9020\u6210\u7684\u635f\u5bb3\uff0c\u6211\u4eec\u4e0d\u627f\u62c5\u4efb\u4f55\u8d23\u4efb\u3002 \u5982\u679c\u65e0\u6cd5\u53d1\u6325\u56fa\u6709\u529f\u80fd\uff0c\u5219\u4e0d\u5f97\u7528\u4e8e\u6cbb\u7597\u7528\u9014\u3002\u5bf9\u6b64\u7c7b\u60c5\u5f62\u4e0b\u9020\u6210\u7684\u4efb\u4f55\u635f\u5bb3\u6216\u5bf9\u60a3\u8005\u7684\u635f\u4f24\uff0c\u6211\u4eec\u4e0d\u627f\u62c5\u4efb\u4f55\u8d23\u4efb\u3002 \u900f\u6790\u673a\u7684\u65e5\u5e38\u7ef4\u62a4\u548c\u68c0\u67e5\u5e94\u6839\u636e\"\u7ef4\u62a4\u68c0\u67e5\u624b\u518c\"\u8fdb\u884c\u3002 \u7b2c1\u7ae0 \u89c4\u683c \u00b6 1.1 \u6570\u636e\u901a\u4fe1\u529f\u80fd\u7684\u63cf\u8ff0 \u00b6 \u900f\u6790\u673a\u7684\u6cbb\u7597\u6570\u636e\u548c\u8bbe\u7f6e\u6570\u636e\u53ef\u4ece\u4ee5\u592a\u7f51\u63a5\u53e3\u4f20\u8f93\u5230\u8ba1\u7b97\u673a\u4e2d\u3002 1.2 \u901a\u4fe1\u89c4\u683c \u00b6 1.2.1 LAN\u53c2\u6570 \u00b6 \u7f16\u53f7 \u9879\u76ee \u63cf\u8ff0 1 \u4ee5\u592a\u7f51\u63a5\u53e3 10Base-T \u6216 100Base-TX\uff08\u81ea\u52a8\u611f\u5e94\uff09 2 \u4e32\u53e3 RJ45 3 \u7f51\u7edc\u914d\u7f6e \u53ef\u81ea\u5b9a\u4e49 1.2.2 \u900f\u6790\u673a\u901a\u4fe1\u6b65\u9aa4 \u00b6 \u900f\u6790\u673a\u7aef\u7ba1\u7406\u7684\u6570\u636e\u901a\u8fc7PC\u7aef\u7684\u6570\u636e\u4f20\u8f93\u8bf7\u6c42\u8fdb\u884c\u4f20\u8f93\u3002 graph TD A[PC] -->|\u6570\u636e\u4f20\u8f93\u8bf7\u6c42| B[\u900f\u6790\u673a] B -->|\u6570\u636e\u4f20\u8f93| A B -->|\u4e34\u5e8a\u6570\u636e\u4f20\u8f93| A [1] PC\u7aef\u4f20\u8f93\u6570\u636e\u8bf7\u6c42\u4fe1\u53f7\uff08\u53c2\u9605\u7b2c1.2.3\u8282\uff09\u3002 [2] \u900f\u6790\u673a\u63a5\u6536PC\u7684\u6570\u636e\u8bf7\u6c42\u4fe1\u53f7\uff0c\u5e76\u53d1\u9001\u5404\u79cd\u76f8\u5e94\u7684\u6570\u636e\uff08\u53c2\u9605\u7b2c1.2.4\u8282\u548c\u7b2c1.2.5\u8282\uff09\u3002 1.2.3 \u4ecePC\u4f20\u8f93\u5230\u900f\u6790\u673a\u7684\u6570\u636e\u53ca\u5176\u683c\u5f0f \u00b6 \u6570\u636e\u4f20\u8f93\u8bf7\u6c42\uff083\u4e2a\u5b57\u8282\uff09 \"K\"\uff084BH\uff09 CR\uff080DH\uff09 LF\uff080AH\uff09 1.2.4 \u4ece\u900f\u6790\u673a\u4f20\u8f93\u5230PC\u7684\u6570\u636e\u683c\u5f0f \u00b6 \u4e34\u5e8a\u6570\u636e \u00b6 \u5f00\u59cb [1] \u6570\u636e\u957f\u5ea6 [2] \u6570\u636e [3] \u603b\u6570 [4] \u7ed3\u675f [5] \u6570\u636e\u7ec4\u6210 \u00b6 \u7f16\u53f7 \u5b57\u8282\u6570 \u63cf\u8ff0 [1] 2 \u6570\u636e\u5f00\u59cb\u4ee3\u7801\uff08ASCII\uff09 \"K\"\"1\" [2] 3 \u6570\u636e\u957f\u5ea6\uff08ASCII\uff09 \u91c7\u75283\u4f4d\u6570\u7684\u5f62\u5f0f\u8868\u793a\u7b2c\u4e09\u9879\u4e2d\u8ba1\u7b97\u7684\u6240\u6709\u5b57\u8282\u7684\u603b\u548c\u3002 \u4f8b\u5982\uff09\u5982\u679c\u603b\u6570\u4e3a123\u4e2a\u5b57\u8282\uff0c\u5219\u663e\u793a\u4e3a\uff1a\"1\",\"2\",\"3\" [3] 1 \u6570\u636e\u9a8c\u8bc1\u4ee3\u7801\uff08ASCII\uff09 \uff08\u8bf7\u53c2\u96051.2.5\u3002\uff09 * \u6309\u6570\u636e\u7c7b\u578b\u7684\u7f16\u53f7\u53cd\u590d\u4f20\u8f93\u3002 [3] \u5355\u4e2a \u6570\u636e\uff08ASCII\uff09 \uff08\u8bf7\u53c2\u96051.2.5\u3002\uff09 * \u6309\u6570\u636e\u7c7b\u578b\u7684\u7f16\u53f7\u53cd\u590d\u4f20\u8f93\u3002 [4] 2 \u7528\u4e8e\u548c\u6570\u6821\u9a8c\u7684\u6570\u636e \u8ba1\u7b97[1]\uff5e[3]\u603b\u548c\uff0c\u8f83\u4f4e\u7684\u5341\u516d\u8fdb\u52362\u4f4d\u6570\u4f1a\u8f6c\u6362\u6210ASCII\u4ee3\u7801\u3002 \u4f8b\u5982\uff09\u603b\u51715aH\u5b57\u8282\uff0c\u5219\u663e\u793a\u4e3a\uff1a\"5\"\u3001\"A\" [5] 2 \u6570\u636e\u7ed3\u675f\u4ee3\u7801 CR\u3001LF 1.2.5 \u4ece\u900f\u6790\u673a\u4f20\u8f93\u5230PC\u7684\u6570\u636e \u00b6 \u6570\u636e\u5217\u8868 \u00b6 \u7f16\u53f7 \u6570\u636e\u540d\u79f0 \u6570\u636e\u6807\u8bc6\u4ee3\u7801 \u5b57\u8282\u6570 \u5355\u4f4d 1 UF\u76ee\u6807 \"A\" 5 L 2 UF\u91cf \"B\" 5 L 3 UF\u901f\u7387 \"C\" 5 L/hr 4 \u8840\u6db2\u6d41\u901f \"D\" 5 mL/min 5 \u6ce8\u5c04\u5668\u6d41\u901f \"E\" 5 mL/h 6 \u900f\u6790\u6db2\u6e29\u5ea6 \"F\" 5 \u6444\u6c0f\u5ea6 7 \u900f\u6790\u6db2\u7535\u5bfc\u5ea6 \"G\" 5 mS/cm 8 \u9759\u8109\u538b \"H\" 5 mmHg 9 \u900f\u6790\u6db2\u538b \"I\" 5 mmHg 10 TMP \"J\" 5 mmHg 11 \u900f\u6790\u65f6\u95f4 \"K\" 5 min 12 \u900f\u6790\u6db2\u6e29\u5ea6\u8b66\u62a5 \"a\" 1 \u2014 13 \u7535\u5bfc\u5ea6\u8b66\u62a5 \"b\" 1 \u2014 14 \u9759\u8109\u538b\u8b66\u62a5 \"c\" 1 \u2014 15 \u900f\u6790\u6db2\u538b\u529b\u8b66\u62a5 \"d\" 1 \u2014 16 TMP\u8b66\u62a5 \"e\" 1 \u2014 17 \u6c14\u6ce1\u4fa6\u6d4b\u5668\u8b66\u62a5 \"f\" 1 \u2014 18 \u6f0f\u8840\u8b66\u62a5 \"g\" 1 \u2014 19 \u5176\u4ed6\u8b66\u62a5 \"h\" 1 \u2014 20 \u900f\u6790\u6db2\u6d41\u901f \"L\" 5 mL/min 21 BPM\u68c0\u6d4b\u65f6\u95f4 \"M\" 5 \u65f6\u95f4 22 BPM\u6700\u9ad8\u8840\u538b \"N\" 5 mmHg 23 BPM\u6700\u4f4e\u8840\u538b \"O\" 5 mmHg 24 BPM\u8109\u51b2 \"P\" 5 \u8109\u51b2 25 BPM\u6536\u7f29\u4e0a\u9650\u8b66\u62a5 \"Q\" 5 mmHg 26 BPM\u6536\u7f29\u4e0b\u9650\u8b66\u62a5 \"R\" 5 mmHg 27 BPM\u538b\u8109\u5e26\u538b\u529b \"S\" 5 mmHg 28 BPM\u68c0\u6d4b\u95f4\u9694\u65f6\u95f4 \"T\" 5 min 29 \u603b\u8840\u6db2\u6d41\u91cf \"U\" 5 L 30 \u9759\u8109\u538b\u4e0a\u9650\u8b66\u62a5 \"V\" 5 mmHg 31 \u9759\u8109\u538b\u4e0b\u9650\u8b66\u62a5 \"W\" 5 mmHg 32 \u603b\u6ce8\u5c04\u6d41\u91cf \"X\" 5 mL 33 \u900f\u6790\u6db2\u538b\u4e0a\u9650\u8b66\u62a5 \"Y\" 5 mmHg 34 \u900f\u6790\u6db2\u538b\u4e0b\u9650\u8b66\u62a5 \"Z\" 5 mmHg 35 NaCl\u6ce8\u5165\u7ea7\u522b \"i\" 5 \u2014 36 UF\u4e2a\u6027\u5316\u7a0b\u5e8f \"j\" 1 \u2014 37 \u900f\u6790\u6db2\u9009\u62e9 \"k\" 1 \u2014 38 \u7535\u5bfc\u5ea6\u7ea7\u522b \"l\" 1 \u2014 39 \u6570\u636e\u901a\u4fe1\u72b6\u6001 \"m\" 1 \u2014 40 \u5e8f\u5217\u53f7 \"n\" 8 \u2014 41 \u52a8\u8109\u538b \"o\" 5 mmHg 42 \u52a8\u8109\u538b\u8b66\u62a5 \"p\" 1 \u2014 43 \u52a8\u8109\u538b\u4e0a\u9650\u8b66\u62a5 \"q\" 5 mmHg 44 \u52a8\u8109\u538b\u4e0b\u9650\u8b66\u62a5 \"r\" 5 mmHg 45 TMP\u4e0a\u9650\u8b66\u62a5 \"s\" 5 mmHg 46 TMP\u4e0b\u9650\u8b66\u62a5 \"t\" 5 mmHg 47 \u7f6e\u6362\u7387 \"u\" 5 L/hr 48 \u7f6e\u6362\u76ee\u6807\u91cf \"v\" 5 L 49 \u7f6e\u6362\u6db2\u8fdb\u7a0b\u91cf \"w\" 5 L 50 Na\u4e2a\u6027\u5316\u7a0b\u5e8f \"x\" 1 \u2014 51 \u8840\u6db2\u6cf5\u4e2a\u6027\u5316\u7a0b\u5e8f \"y\" 1 \u2014 52 \u6ce8\u5c04\u6cf5\u4e2a\u6027\u5316\u7a0b\u5e8f \"z\" 1 \u2014 53 \u900f\u6790\u6db2\u4e2a\u6027\u5316\u7a0b\u5e8f \"!\" 1 \u2014 54 \u900f\u6790\u6db2\u6e29\u5ea6\u8bbe\u7f6e\u503c \"#\" 5 \u6444\u6c0f\u5ea6 55 \u7f3a\u6c342\u8b66\u62a5 \"$\" 1 \u2014 \u6570\u636e\u8bf4\u660e \u00b6 1) \u672a\u6307\u5b9a\u6570\u636e\u4f20\u8f93\u7684\u987a\u5e8f\u3002 2) \u7b2c1\u523011\u9879\u300120\u523035\u9879\u300141\u9879\u300143\u523049\u9879\u548c54\u9879\u7684\u6570\u636e\u4ee55\u4f4d\u6570\u8868\u793a\u3002 - \u5982\u679c\u5305\u542b\u5c0f\u6570\u70b9\uff0c\u52195\u4f4d\u6570\u5305\u542b\u4e86\u5c0f\u6570\u70b9\u3002 - \u5982\u679c\u6570\u636e\u4e3a\u8d1f\u6570\uff0c\u6570\u5b57\u5c06\u4ee5\u51cf\u53f7\u6807\u5fd7\"-\"\u5f00\u5934\u3002 - \u5982\u679c\u9ad8\u4f4d\u5b57\u8282\u4e3a\u96f6\uff0c\u5219\u663e\u793a\"0\"\u3002 - \u4f8b\u5982\uff09\u76ee\u6807UF\u91cf\u4e3a2.35L\uff0c\u5219\u8f93\u5165\"0\"\u3001\"2\"\u3001\".\"\u3001\"3\"\u548c\"5\"\u3002 3) \u7b2c12\u81f319\u9879\u300142\u9879\u548c55\u9879\u7684\u8b66\u62a5\u503c\u4e3a\"1\"\uff08\u5df2\u8b66\u62a5\uff09\u6216\"0\"\uff08\u672a\u8b66\u62a5\uff09\u3002 4) \u7b2c19\u9879\u5176\u4ed6\u8b66\u62a5\u662f\u9664\u7b2c12\u81f318\u9879\u300142\u9879\u548c55\u9879\u4ee5\u5916\u7684\u8b66\u62a5\u3002 5) \u7b2c40\u9879\u6570\u636e\u662f\u5e8f\u5217\u53f7\uff08\u5de6\u5bf9\u9f50\uff09\u3002 6) \u7b2c21\u9879\"\u8840\u538b\u68c0\u6d4b\u65f6\u95f4\"\u6307\u662f\u5426\u5bf9\u8840\u538b\u8fdb\u884c\u68c0\u6d4b\u7684\u5224\u65ad\u3002 7) \u7b2c25\u81f328\u9879\u662f\u4e0e\u8840\u538b\u76f8\u5173\u7684\u8bbe\u7f6e\u3002 - \u8bbe\u7f6e\u66f4\u6539\u540e\uff0c\u6700\u65b0\u8bbe\u7f6e\u4f1a\u5728\u4e0b\u4e00\u6b21\u6570\u636e\u4f20\u8f93\u8bf7\u6c42\u65f6\u4f20\u8f93\u3002 \u7b2c2\u7ae0 \u4e0ePC\u7684\u8fde\u63a5 \u00b6 2.1 \u8fde\u63a5\u900f\u6790\u673a\u548cPC \u00b6 \u7f16\u53f7 \u540d\u79f0 \u529f\u80fd 1 LAN - \u901a\u8fc7\u672c\u900f\u6790\u673a\u80cc\u9762\u63d0\u4f9b\u7684LAN\u63a5\u53e3\uff0c\u8fde\u63a5\u6b64\u900f\u6790\u673a\u548cPC\u3002 - LAN\uff1aRJ-45\u4e32\u53e3\u3002 2.2 \u901a\u4fe1\u57fa\u677fIP\u7684\u8bbe\u5b9a \u00b6 2.2.1 \u6253\u5f00\"\u641c\u7d22\u5de5\u5177\"\u5e94\u7528\u7a0b\u5e8f \u00b6 \u5982\u4e0b\u56fe\u6240\u793a\uff1a 2.2.2 \u641c\u7d22\u901a\u4fe1\u57fa\u677f \u00b6 \u5728\u6253\u5f00\u7684\"\u641c\u7d22\u5de5\u5177\"\u754c\u9762\u4e0b\uff0c\u70b9\u51fb\u5de6\u4e0a\u89d2\u7c7b\u4f3c\u671b\u8fdc\u955c\u6807\u5fd7\u7684\"\u641c\u7d22\"\u6309\u94ae\uff0c\u641c\u7d22\u5df2\u7ecf\u8fde\u63a5\u5230\u7535\u8111\u7684\u901a\u4fe1\u57fa\u677f\u3002 2.2.3 \u8bbe\u5b9aPC\u7f51\u7edc\u53c2\u6570 \u00b6 \u4e3a\u786e\u4fddPC\u548c\u901a\u4fe1\u57fa\u677f\u7684\u6b63\u5e38\u901a\u4fe1\uff0c\u6839\u636e\u641c\u7d22\u5230\u7684\u901a\u4fe1\u57fa\u677f\u7684IP\u5bf9\u901a\u4fe1\u7528PC\u8fdb\u884c\u53c2\u6570\u8bbe\u5b9a\uff08IP\u5730\u5740\u3001\u5b50\u7f51\u63a9\u7801\u3001\u9ed8\u8ba4\u7f51\u5173\uff09\u3002 IP\u5730\u5740\u3001\u5b50\u7f51\u63a9\u7801\u3001\u9ed8\u8ba4\u7f51\u5173\u7684\u8bbe\u5b9a\uff1a 1) \u786e\u4fdd\u548c\u901a\u4fe1\u57fa\u677fIP\u5730\u5740\u5728\u540c\u4e00\u57df\u5185\uff0c\u4e14\u8bbe\u5b9a\u7684IP\u548c\u540c\u4e00\u57df\u5185\u5176\u4ed6\u8bbe\u5907\u7684IP\u4e0d\u51b2\u7a81\u3002 2) PC\u7684IP\u5730\u5740\u8bbe\u5b9a\u5b8c\u6210\u540e\uff0c\u9f20\u6807\u70b9\u51fb\u5b50\u7f51\u63a9\u7801\u8f93\u5165\u680f\uff0c\u5b50\u7f51\u63a9\u7801\u4f1a\u81ea\u52a8\u751f\u6210\uff08\u539f\u5219\u4e0a\u81ea\u52a8\u751f\u6210\u7684\u5b50\u7f51\u63a9\u7801\u548c\u901a\u4fe1\u57fa\u677f\u7684\u5b50\u7f51\u63a9\u7801\u662f\u76f8\u540c\u7684\uff0c\u53c2\u80032.2.4\u5bf9\u5b50\u7f51\u63a9\u7801\u8fdb\u884c\u786e\u8ba4\uff09\u3002 3) PC\u7684\u9ed8\u8ba4\u7f51\u5173\u548c\u901a\u4fe1\u57fa\u677f\u76f8\u540c\uff08\u53c2\u80032.2.4\u5bf9\u9ed8\u8ba4\u7f51\u5173\u8fdb\u884c\u786e\u8ba4\uff09\u3002 2.2.4 \u8fdb\u5165IP\u8bbe\u5b9a\u754c\u9762 \u00b6 \u9009\u4e2d\u641c\u7d22\u5230\u7684\u76ee\u6807IP\uff0c\u70b9\u51fb\"\u8bbe\u7f6e\"\u6309\u94ae\uff0c\u8fdb\u5165IP\u8bbe\u5b9a\u754c\u9762\u3002\u5728IP\u8bbe\u5b9a\u754c\u9762\u4e0b\uff0c\u6839\u636e\u9700\u8981\uff0c\u91cd\u65b0\u8bbe\u5b9a\u901a\u4fe1\u57fa\u677f\u7684IP\uff0c\u5e76\u70b9\u51fb\"\u4fdd\u5b58\"\u952e\uff0c\u5b8c\u6210\u65b0IP\u7684\u8bbe\u5b9a\u3002 \u6ce8\u610f \uff1a\u901a\u4fe1\u57fa\u677fIP\u8bbe\u5b9a\u754c\u9762\u4e5f\u53ef\u4ee5\u4e0d\u7528\"\u641c\u7d22\u5de5\u5177\"\u8f6f\u4ef6\u800c\u76f4\u63a5\u5728IE\u6d4f\u89c8\u5668\u4e2d\u8f93\u5165 http://192.168.0.233/ \u76f4\u63a5\u6253\u5f00\u3002 2.3 \u901a\u4fe1\u57fa\u677f\u4e34\u65f6IP\u7684\u8bbe\u5b9a\u65b9\u6cd5 \u00b6 2.3.1 \u8bbe\u7f6e\u4e34\u65f6IP \u00b6 \u70b9\u51fb\"\u641c\u7d22\"\u6309\u94ae\u5bf9\u8fde\u63a5\u5230PC\u7684\u901a\u4fe1\u8bbe\u5907\u8fdb\u884c\u641c\u7d22\uff0c\u9009\u4e2d\u76ee\u6807IP\uff0c\u70b9\u51fb\"\u8bbe\u7f6e\u4e34\u65f6IP\uff08F\uff09\"\u6309\u94ae\u3002 2.3.2 \u914d\u7f6e\u4e34\u65f6IP \u00b6 \u5728\u6253\u5f00\u7684\"\u8bbe\u7f6e\u4e34\u65f6IP\uff08F\uff09\"\u754c\u9762\u4e0b\uff0c\u5373\u53ef\u6839\u636e\u9700\u8981\u5bf9\u76ee\u6807IP\u8fdb\u884c\u4e34\u65f6\u8bbe\u5b9a\u3002 \u6ce8\u610f \uff1a\u8bbe\u5b9a\u7684IP\u53ea\u6709\u5728\u8bbe\u5907\u672a\u65ad\u7535\u548c\u672a\u91cd\u542f\u65f6\u6709\u6548\uff0c\u5982\u679c\u8bbe\u5907\u91cd\u542f\u6216\u8005\u65ad\u7535\uff0cIP\u7684\u8bbe\u5b9a\u4f1a\u81ea\u52a8\u6062\u590d\u5230\u51fa\u5382\u8bbe\u7f6e\u3002 2.4 \u901a\u4fe1\u57fa\u677f\u7684\u91cd\u7f6e\u529f\u80fd \u00b6 2.4.1 \u6253\u5f00\u57fa\u677f\u7ba1\u7406\u754c\u9762 \u00b6 \u5728PC\u7684IE\u6d4f\u89c8\u5668\u4e2d\u8f93\u5165\u901a\u4fe1\u57fa\u677f\u7684IP\u5730\u5740\u8fdb\u884c\u641c\u7d22\uff08\u4ee5IP\u5730\u5740\u4e3a192.168.0.233\u4e3a\u4f8b\uff0c\u5728IE\u6d4f\u89c8\u5668\u4e2d\u5e94\u8f93\u5165 http://192.168.0.233/ \uff09\u6253\u5f00\u5982\u4e0b\u7684\u753b\u9762\u3002 2.4.2 \u6267\u884c\u6062\u590d\u51fa\u5382\u8bbe\u7f6e \u00b6 \u70b9\u51fb\u753b\u9762\u5de6\u4fa7\u7684\"\u6062\u590d\u51fa\u5382\u8bbe\u7f6e\"\u9879\uff0c\u8fdb\u5165\"\u6062\u590d\u51fa\u5382\u8bbe\u7f6e\"\u754c\u9762\u3002\u70b9\u51fb\"\u6062\u590d\"\u952e\u5373\u53ef\u6062\u590d\u51fa\u5382\u8bbe\u7f6e\u3002 \u6587\u6863\u4fe1\u606f \u00b6 \u5355\u4eba\u8840\u6db2\u900f\u6790\u673a TQS-88 \u9009\u914d \u6570\u636e\u901a\u4fe1\u64cd\u4f5c\u624b\u518c 00\u7248\u53d1\u5e03 2019/01/11 \u4e1c\u4e3d\u533b\u7597\u79d1\u6280\uff08\u9752\u5c9b\uff09\u80a1\u4efd\u6709\u9650\u516c\u53f8 \u9752\u5c9b\u5e02\u5373\u58a8\u533a\u670d\u88c5\u5de5\u4e1a\u56ed\u5185\u5b54\u96c0\u6cb3\u56db\u8def63\u53f7 \u7535\u8bdd\uff1a0532-81721030 \u4f20\u771f\uff1a0532-81721025 \u90ae\u653f\u7f16\u7801\uff1a266200 \u2611 \u539f\u7248\u53d1\u884c \u25a1 \u539f\u7248\u8bd1\u672c \u9644\u5f55 \u00b6","title":"TS88\u900f\u6790\u673a\u8054\u673a\u901a\u4fe1-\u4e2d\u6587\u7248"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#tqs-88-","text":"","title":"TQS-88 \u5355\u4eba\u8840\u6db2\u900f\u6790\u673a-\u6570\u636e\u901a\u4fe1\u64cd\u4f5c\u624b\u518c"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#_1","text":"\u5728\u5f00\u59cb\u4f7f\u7528\u900f\u6790\u673a\u524d\u8bf7\u4ed4\u7ec6\u9605\u8bfb\u672c\u64cd\u4f5c\u624b\u518c\u3002 \u4efb\u4f55\u4e0d\u5f53\u64cd\u4f5c\u90fd\u53ef\u80fd\u4f1a\u5bfc\u81f4\u4e8b\u6545\u3002\u4f7f\u7528\u7b26\u5408\u672c\u8bf4\u660e\u7684\u900f\u6790\u673a\u3002 \u8bf7\u5c06\u672c\u64cd\u4f5c\u624b\u518c\u7f6e\u4e8e\u6613\u4e8e\u83b7\u53d6\u7684\u4f4d\u7f6e\uff0c\u4ee5\u4fbf\u5728\u9700\u8981\u65f6\u53ef\u968f\u65f6\u53c2\u9605\u3002 \u672c\u64cd\u4f5c\u624b\u518c\u65e8\u5728\u4e3a\u64cd\u4f5c\u4eba\u5458\u63d0\u4f9b\u4f7f\u7528\"\u6570\u636e\u901a\u4fe1\"\u6240\u9700\u7684\u4fe1\u606f\u3002 \u672c\u64cd\u4f5c\u624b\u518c\u4e3b\u8981\u6db5\u76d6\u4ee5\u4e0b\u6709\u5173\"\u6570\u636e\u901a\u4fe1\"\u7684\u5185\u5bb9\uff1a 1. \u89c4\u683c 2. \u4e0ePC\u7684\u8fde\u63a5 \u6b63\u6587\u4e2d\u8b66\u793a\u5b9a\u4e49\u5982\u4e0b\uff1a - \u6ce8\u610f \uff1a\u6b64\u6807\u5fd7\u540e\u7684\u63cf\u8ff0\u662f\u4f7f\u7528\u8bf4\u660e\u3002\u60a8\u5fc5\u987b\u9075\u5b88\u4f7f\u7528\u8bf4\u660e\u3002 - \u9644\u6ce8 \uff1a\u6b64\u6807\u5fd7\u540e\u7684\u63cf\u8ff0\u662f\u4e3a\u4e86\u8ba9\u60a8\u589e\u8fdb\u7406\u89e3\u7684\u6709\u7528\u4fe1\u606f\u6216\u8865\u5145\u8bf4\u660e\u4e8b\u9879\u3002","title":"\u6ce8\u610f\u4e8b\u9879"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#_2","text":"\u64cd\u4f5c\u6b64\u9009\u914d\u4ef6\uff08\"\u6570\u636e\u901a\u4fe1\"\u529f\u80fd\uff09\u65f6\uff0c\u8bf7\u52a1\u5fc5\u5145\u5206\u7406\u89e3\u548c\u7279\u522b\u6ce8\u610f\u4ee5\u4e0b\u4e8b\u9879\u3002\u4f7f\u7528\u524d\u5fc5\u987b\u5145\u5206\u4e86\u89e3\u5185\u5bb9\u3002","title":"\u7b80\u4ecb"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#1","text":"(1) \u672c\u64cd\u4f5c\u624b\u518c\u4ecb\u7ecd\u4e86\u6b63\u786e\u4f7f\u7528\"\u6570\u636e\u901a\u4fe1\"\u6240\u9700\u7684\u4fe1\u606f\u548c\u5b89\u5168\u7684\u64cd\u4f5c\u65b9\u6cd5\uff0c\u5e76\u975e\u65e8\u5728\u8bf4\u660e\u5bf9\u60a3\u8005\u7684\u6cbb\u7597\u3002 (2) \u53ea\u6709\u4ed4\u7ec6\u9605\u8bfb\u5e76\u5145\u5206\u7406\u89e3\u672c\u64cd\u4f5c\u624b\u518c\u4e2d\u6240\u542b\u7684\u8bf4\u660e\u540e\uff0c\u624d\u80fd\u4f7f\u7528\u8bbe\u5907\u5e76\u8fdb\u884c\u64cd\u4f5c\u4ee5\u53ca\u7ef4\u62a4\u3002 (3) \u672c\u64cd\u4f5c\u624b\u518c\u4e2d\u7684\u64cd\u4f5c\u65b9\u6cd5\u548c\u5b89\u5168\u6ce8\u610f\u4e8b\u9879\u9002\u7528\u4e8e\u8fdb\u884c\u7279\u5b9a\u76ee\u7684\u7684\"\u6570\u636e\u901a\u4fe1\"\u4f7f\u7528\u3002\u8bf7\u52ff\u5c1d\u8bd5\u4ee5\u672c\u624b\u518c\u4e2d\u6240\u5217\u4ee5\u5916\u7684\u4efb\u4f55\u65b9\u5f0f\u4f7f\u7528\u8bbe\u5907\u3002 \u672c\u624b\u518c\u7684\u5185\u5bb9\u53d7\u4e1c\u4e3d\u533b\u7597\u79d1\u6280\uff08\u9752\u5c9b\uff09\u80a1\u4efd\u6709\u9650\u516c\u53f8\u7248\u6743\u4fdd\u62a4\uff0c\u4e1c\u4e3d\u533b\u7597\u79d1\u6280\uff08\u9752\u5c9b\uff09\u80a1\u4efd\u6709\u9650\u516c\u53f8\u4fdd\u7559\u6240\u6709\u6743\u5229\u3002\u672a\u7ecf\u4e1c\u4e3d\u533b\u7597\u79d1\u6280\uff08\u9752\u5c9b\uff09\u80a1\u4efd\u6709\u9650\u516c\u53f8\u4e8b\u5148\u4e66\u9762\u540c\u610f\uff0c\u4e0d\u5f97\u4ee5\u4efb\u4f55\u5f62\u5f0f\u590d\u5236\u3001\u8f6c\u8f7d\u672c\u624b\u518c\u4e2d\u7684\u4efb\u4f55\u5185\u5bb9\uff0c\u6216\u5c06\u5176\u8bd1\u4e3a\u5176\u4ed6\u8bed\u8a00\u3002","title":"1. \u64cd\u4f5c\u624b\u518c"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#2","text":"\u6211\u4eec\u5e0c\u671b\u60a8\u4e8b\u524d\u4e86\u89e3\uff0c\u5bf9\u7531\u4e8e\u64cd\u4f5c\u6b64\u900f\u6790\u673a\u6240\u9020\u6210\u7684\u4efb\u4f55\u53ef\u80fd\u7684\u635f\u5bb3\u6216\u5229\u76ca\u635f\u5931\uff0c\u6211\u4eec\u4e0d\u627f\u62c5\u4efb\u4f55\u8d23\u4efb\u3002 \u8bf7\u52ff\u62c6\u5378\u6216\u6539\u9020\u900f\u6790\u673a\uff0c\u5426\u5219\u5c06\u4e0d\u5728\u5236\u9020\u5546\u4fdd\u4fee\u8303\u56f4\u4e4b\u5185\u3002 \u7531\u4e8e\u5ba2\u6237\u62c6\u5378\u3001\u6539\u9020\u3001\u5206\u89e3\u6216\u4f7f\u7528\u4e0d\u5f53\u4ee5\u53ca\u5b89\u88c5\u73af\u5883\u3001\u642c\u8fd0\u4e0d\u5f53\u7b49\u9020\u6210\u7684\u635f\u5bb3\uff0c\u6211\u4eec\u4e0d\u627f\u62c5\u4efb\u4f55\u8d23\u4efb\u3002 \u5982\u679c\u65e0\u6cd5\u53d1\u6325\u56fa\u6709\u529f\u80fd\uff0c\u5219\u4e0d\u5f97\u7528\u4e8e\u6cbb\u7597\u7528\u9014\u3002\u5bf9\u6b64\u7c7b\u60c5\u5f62\u4e0b\u9020\u6210\u7684\u4efb\u4f55\u635f\u5bb3\u6216\u5bf9\u60a3\u8005\u7684\u635f\u4f24\uff0c\u6211\u4eec\u4e0d\u627f\u62c5\u4efb\u4f55\u8d23\u4efb\u3002 \u900f\u6790\u673a\u7684\u65e5\u5e38\u7ef4\u62a4\u548c\u68c0\u67e5\u5e94\u6839\u636e\"\u7ef4\u62a4\u68c0\u67e5\u624b\u518c\"\u8fdb\u884c\u3002","title":"2. \u8d23\u4efb\u9650\u5236"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#1_1","text":"","title":"\u7b2c1\u7ae0 \u89c4\u683c"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#11","text":"\u900f\u6790\u673a\u7684\u6cbb\u7597\u6570\u636e\u548c\u8bbe\u7f6e\u6570\u636e\u53ef\u4ece\u4ee5\u592a\u7f51\u63a5\u53e3\u4f20\u8f93\u5230\u8ba1\u7b97\u673a\u4e2d\u3002","title":"1.1 \u6570\u636e\u901a\u4fe1\u529f\u80fd\u7684\u63cf\u8ff0"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#12","text":"","title":"1.2 \u901a\u4fe1\u89c4\u683c"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#121-lan","text":"\u7f16\u53f7 \u9879\u76ee \u63cf\u8ff0 1 \u4ee5\u592a\u7f51\u63a5\u53e3 10Base-T \u6216 100Base-TX\uff08\u81ea\u52a8\u611f\u5e94\uff09 2 \u4e32\u53e3 RJ45 3 \u7f51\u7edc\u914d\u7f6e \u53ef\u81ea\u5b9a\u4e49","title":"1.2.1 LAN\u53c2\u6570"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#122","text":"\u900f\u6790\u673a\u7aef\u7ba1\u7406\u7684\u6570\u636e\u901a\u8fc7PC\u7aef\u7684\u6570\u636e\u4f20\u8f93\u8bf7\u6c42\u8fdb\u884c\u4f20\u8f93\u3002 graph TD A[PC] -->|\u6570\u636e\u4f20\u8f93\u8bf7\u6c42| B[\u900f\u6790\u673a] B -->|\u6570\u636e\u4f20\u8f93| A B -->|\u4e34\u5e8a\u6570\u636e\u4f20\u8f93| A [1] PC\u7aef\u4f20\u8f93\u6570\u636e\u8bf7\u6c42\u4fe1\u53f7\uff08\u53c2\u9605\u7b2c1.2.3\u8282\uff09\u3002 [2] \u900f\u6790\u673a\u63a5\u6536PC\u7684\u6570\u636e\u8bf7\u6c42\u4fe1\u53f7\uff0c\u5e76\u53d1\u9001\u5404\u79cd\u76f8\u5e94\u7684\u6570\u636e\uff08\u53c2\u9605\u7b2c1.2.4\u8282\u548c\u7b2c1.2.5\u8282\uff09\u3002","title":"1.2.2 \u900f\u6790\u673a\u901a\u4fe1\u6b65\u9aa4"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#123-pc","text":"\u6570\u636e\u4f20\u8f93\u8bf7\u6c42\uff083\u4e2a\u5b57\u8282\uff09 \"K\"\uff084BH\uff09 CR\uff080DH\uff09 LF\uff080AH\uff09","title":"1.2.3 \u4ecePC\u4f20\u8f93\u5230\u900f\u6790\u673a\u7684\u6570\u636e\u53ca\u5176\u683c\u5f0f"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#124-pc","text":"","title":"1.2.4 \u4ece\u900f\u6790\u673a\u4f20\u8f93\u5230PC\u7684\u6570\u636e\u683c\u5f0f"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#_3","text":"\u5f00\u59cb [1] \u6570\u636e\u957f\u5ea6 [2] \u6570\u636e [3] \u603b\u6570 [4] \u7ed3\u675f [5]","title":"\u4e34\u5e8a\u6570\u636e"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#_4","text":"\u7f16\u53f7 \u5b57\u8282\u6570 \u63cf\u8ff0 [1] 2 \u6570\u636e\u5f00\u59cb\u4ee3\u7801\uff08ASCII\uff09 \"K\"\"1\" [2] 3 \u6570\u636e\u957f\u5ea6\uff08ASCII\uff09 \u91c7\u75283\u4f4d\u6570\u7684\u5f62\u5f0f\u8868\u793a\u7b2c\u4e09\u9879\u4e2d\u8ba1\u7b97\u7684\u6240\u6709\u5b57\u8282\u7684\u603b\u548c\u3002 \u4f8b\u5982\uff09\u5982\u679c\u603b\u6570\u4e3a123\u4e2a\u5b57\u8282\uff0c\u5219\u663e\u793a\u4e3a\uff1a\"1\",\"2\",\"3\" [3] 1 \u6570\u636e\u9a8c\u8bc1\u4ee3\u7801\uff08ASCII\uff09 \uff08\u8bf7\u53c2\u96051.2.5\u3002\uff09 * \u6309\u6570\u636e\u7c7b\u578b\u7684\u7f16\u53f7\u53cd\u590d\u4f20\u8f93\u3002 [3] \u5355\u4e2a \u6570\u636e\uff08ASCII\uff09 \uff08\u8bf7\u53c2\u96051.2.5\u3002\uff09 * \u6309\u6570\u636e\u7c7b\u578b\u7684\u7f16\u53f7\u53cd\u590d\u4f20\u8f93\u3002 [4] 2 \u7528\u4e8e\u548c\u6570\u6821\u9a8c\u7684\u6570\u636e \u8ba1\u7b97[1]\uff5e[3]\u603b\u548c\uff0c\u8f83\u4f4e\u7684\u5341\u516d\u8fdb\u52362\u4f4d\u6570\u4f1a\u8f6c\u6362\u6210ASCII\u4ee3\u7801\u3002 \u4f8b\u5982\uff09\u603b\u51715aH\u5b57\u8282\uff0c\u5219\u663e\u793a\u4e3a\uff1a\"5\"\u3001\"A\" [5] 2 \u6570\u636e\u7ed3\u675f\u4ee3\u7801 CR\u3001LF","title":"\u6570\u636e\u7ec4\u6210"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#125-pc","text":"","title":"1.2.5 \u4ece\u900f\u6790\u673a\u4f20\u8f93\u5230PC\u7684\u6570\u636e"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#_5","text":"\u7f16\u53f7 \u6570\u636e\u540d\u79f0 \u6570\u636e\u6807\u8bc6\u4ee3\u7801 \u5b57\u8282\u6570 \u5355\u4f4d 1 UF\u76ee\u6807 \"A\" 5 L 2 UF\u91cf \"B\" 5 L 3 UF\u901f\u7387 \"C\" 5 L/hr 4 \u8840\u6db2\u6d41\u901f \"D\" 5 mL/min 5 \u6ce8\u5c04\u5668\u6d41\u901f \"E\" 5 mL/h 6 \u900f\u6790\u6db2\u6e29\u5ea6 \"F\" 5 \u6444\u6c0f\u5ea6 7 \u900f\u6790\u6db2\u7535\u5bfc\u5ea6 \"G\" 5 mS/cm 8 \u9759\u8109\u538b \"H\" 5 mmHg 9 \u900f\u6790\u6db2\u538b \"I\" 5 mmHg 10 TMP \"J\" 5 mmHg 11 \u900f\u6790\u65f6\u95f4 \"K\" 5 min 12 \u900f\u6790\u6db2\u6e29\u5ea6\u8b66\u62a5 \"a\" 1 \u2014 13 \u7535\u5bfc\u5ea6\u8b66\u62a5 \"b\" 1 \u2014 14 \u9759\u8109\u538b\u8b66\u62a5 \"c\" 1 \u2014 15 \u900f\u6790\u6db2\u538b\u529b\u8b66\u62a5 \"d\" 1 \u2014 16 TMP\u8b66\u62a5 \"e\" 1 \u2014 17 \u6c14\u6ce1\u4fa6\u6d4b\u5668\u8b66\u62a5 \"f\" 1 \u2014 18 \u6f0f\u8840\u8b66\u62a5 \"g\" 1 \u2014 19 \u5176\u4ed6\u8b66\u62a5 \"h\" 1 \u2014 20 \u900f\u6790\u6db2\u6d41\u901f \"L\" 5 mL/min 21 BPM\u68c0\u6d4b\u65f6\u95f4 \"M\" 5 \u65f6\u95f4 22 BPM\u6700\u9ad8\u8840\u538b \"N\" 5 mmHg 23 BPM\u6700\u4f4e\u8840\u538b \"O\" 5 mmHg 24 BPM\u8109\u51b2 \"P\" 5 \u8109\u51b2 25 BPM\u6536\u7f29\u4e0a\u9650\u8b66\u62a5 \"Q\" 5 mmHg 26 BPM\u6536\u7f29\u4e0b\u9650\u8b66\u62a5 \"R\" 5 mmHg 27 BPM\u538b\u8109\u5e26\u538b\u529b \"S\" 5 mmHg 28 BPM\u68c0\u6d4b\u95f4\u9694\u65f6\u95f4 \"T\" 5 min 29 \u603b\u8840\u6db2\u6d41\u91cf \"U\" 5 L 30 \u9759\u8109\u538b\u4e0a\u9650\u8b66\u62a5 \"V\" 5 mmHg 31 \u9759\u8109\u538b\u4e0b\u9650\u8b66\u62a5 \"W\" 5 mmHg 32 \u603b\u6ce8\u5c04\u6d41\u91cf \"X\" 5 mL 33 \u900f\u6790\u6db2\u538b\u4e0a\u9650\u8b66\u62a5 \"Y\" 5 mmHg 34 \u900f\u6790\u6db2\u538b\u4e0b\u9650\u8b66\u62a5 \"Z\" 5 mmHg 35 NaCl\u6ce8\u5165\u7ea7\u522b \"i\" 5 \u2014 36 UF\u4e2a\u6027\u5316\u7a0b\u5e8f \"j\" 1 \u2014 37 \u900f\u6790\u6db2\u9009\u62e9 \"k\" 1 \u2014 38 \u7535\u5bfc\u5ea6\u7ea7\u522b \"l\" 1 \u2014 39 \u6570\u636e\u901a\u4fe1\u72b6\u6001 \"m\" 1 \u2014 40 \u5e8f\u5217\u53f7 \"n\" 8 \u2014 41 \u52a8\u8109\u538b \"o\" 5 mmHg 42 \u52a8\u8109\u538b\u8b66\u62a5 \"p\" 1 \u2014 43 \u52a8\u8109\u538b\u4e0a\u9650\u8b66\u62a5 \"q\" 5 mmHg 44 \u52a8\u8109\u538b\u4e0b\u9650\u8b66\u62a5 \"r\" 5 mmHg 45 TMP\u4e0a\u9650\u8b66\u62a5 \"s\" 5 mmHg 46 TMP\u4e0b\u9650\u8b66\u62a5 \"t\" 5 mmHg 47 \u7f6e\u6362\u7387 \"u\" 5 L/hr 48 \u7f6e\u6362\u76ee\u6807\u91cf \"v\" 5 L 49 \u7f6e\u6362\u6db2\u8fdb\u7a0b\u91cf \"w\" 5 L 50 Na\u4e2a\u6027\u5316\u7a0b\u5e8f \"x\" 1 \u2014 51 \u8840\u6db2\u6cf5\u4e2a\u6027\u5316\u7a0b\u5e8f \"y\" 1 \u2014 52 \u6ce8\u5c04\u6cf5\u4e2a\u6027\u5316\u7a0b\u5e8f \"z\" 1 \u2014 53 \u900f\u6790\u6db2\u4e2a\u6027\u5316\u7a0b\u5e8f \"!\" 1 \u2014 54 \u900f\u6790\u6db2\u6e29\u5ea6\u8bbe\u7f6e\u503c \"#\" 5 \u6444\u6c0f\u5ea6 55 \u7f3a\u6c342\u8b66\u62a5 \"$\" 1 \u2014","title":"\u6570\u636e\u5217\u8868"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#_6","text":"1) \u672a\u6307\u5b9a\u6570\u636e\u4f20\u8f93\u7684\u987a\u5e8f\u3002 2) \u7b2c1\u523011\u9879\u300120\u523035\u9879\u300141\u9879\u300143\u523049\u9879\u548c54\u9879\u7684\u6570\u636e\u4ee55\u4f4d\u6570\u8868\u793a\u3002 - \u5982\u679c\u5305\u542b\u5c0f\u6570\u70b9\uff0c\u52195\u4f4d\u6570\u5305\u542b\u4e86\u5c0f\u6570\u70b9\u3002 - \u5982\u679c\u6570\u636e\u4e3a\u8d1f\u6570\uff0c\u6570\u5b57\u5c06\u4ee5\u51cf\u53f7\u6807\u5fd7\"-\"\u5f00\u5934\u3002 - \u5982\u679c\u9ad8\u4f4d\u5b57\u8282\u4e3a\u96f6\uff0c\u5219\u663e\u793a\"0\"\u3002 - \u4f8b\u5982\uff09\u76ee\u6807UF\u91cf\u4e3a2.35L\uff0c\u5219\u8f93\u5165\"0\"\u3001\"2\"\u3001\".\"\u3001\"3\"\u548c\"5\"\u3002 3) \u7b2c12\u81f319\u9879\u300142\u9879\u548c55\u9879\u7684\u8b66\u62a5\u503c\u4e3a\"1\"\uff08\u5df2\u8b66\u62a5\uff09\u6216\"0\"\uff08\u672a\u8b66\u62a5\uff09\u3002 4) \u7b2c19\u9879\u5176\u4ed6\u8b66\u62a5\u662f\u9664\u7b2c12\u81f318\u9879\u300142\u9879\u548c55\u9879\u4ee5\u5916\u7684\u8b66\u62a5\u3002 5) \u7b2c40\u9879\u6570\u636e\u662f\u5e8f\u5217\u53f7\uff08\u5de6\u5bf9\u9f50\uff09\u3002 6) \u7b2c21\u9879\"\u8840\u538b\u68c0\u6d4b\u65f6\u95f4\"\u6307\u662f\u5426\u5bf9\u8840\u538b\u8fdb\u884c\u68c0\u6d4b\u7684\u5224\u65ad\u3002 7) \u7b2c25\u81f328\u9879\u662f\u4e0e\u8840\u538b\u76f8\u5173\u7684\u8bbe\u7f6e\u3002 - \u8bbe\u7f6e\u66f4\u6539\u540e\uff0c\u6700\u65b0\u8bbe\u7f6e\u4f1a\u5728\u4e0b\u4e00\u6b21\u6570\u636e\u4f20\u8f93\u8bf7\u6c42\u65f6\u4f20\u8f93\u3002","title":"\u6570\u636e\u8bf4\u660e"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#2-pc","text":"","title":"\u7b2c2\u7ae0 \u4e0ePC\u7684\u8fde\u63a5"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#21-pc","text":"\u7f16\u53f7 \u540d\u79f0 \u529f\u80fd 1 LAN - \u901a\u8fc7\u672c\u900f\u6790\u673a\u80cc\u9762\u63d0\u4f9b\u7684LAN\u63a5\u53e3\uff0c\u8fde\u63a5\u6b64\u900f\u6790\u673a\u548cPC\u3002 - LAN\uff1aRJ-45\u4e32\u53e3\u3002","title":"2.1 \u8fde\u63a5\u900f\u6790\u673a\u548cPC"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#22-ip","text":"","title":"2.2 \u901a\u4fe1\u57fa\u677fIP\u7684\u8bbe\u5b9a"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#221","text":"\u5982\u4e0b\u56fe\u6240\u793a\uff1a","title":"2.2.1 \u6253\u5f00\"\u641c\u7d22\u5de5\u5177\"\u5e94\u7528\u7a0b\u5e8f"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#222","text":"\u5728\u6253\u5f00\u7684\"\u641c\u7d22\u5de5\u5177\"\u754c\u9762\u4e0b\uff0c\u70b9\u51fb\u5de6\u4e0a\u89d2\u7c7b\u4f3c\u671b\u8fdc\u955c\u6807\u5fd7\u7684\"\u641c\u7d22\"\u6309\u94ae\uff0c\u641c\u7d22\u5df2\u7ecf\u8fde\u63a5\u5230\u7535\u8111\u7684\u901a\u4fe1\u57fa\u677f\u3002","title":"2.2.2 \u641c\u7d22\u901a\u4fe1\u57fa\u677f"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#223-pc","text":"\u4e3a\u786e\u4fddPC\u548c\u901a\u4fe1\u57fa\u677f\u7684\u6b63\u5e38\u901a\u4fe1\uff0c\u6839\u636e\u641c\u7d22\u5230\u7684\u901a\u4fe1\u57fa\u677f\u7684IP\u5bf9\u901a\u4fe1\u7528PC\u8fdb\u884c\u53c2\u6570\u8bbe\u5b9a\uff08IP\u5730\u5740\u3001\u5b50\u7f51\u63a9\u7801\u3001\u9ed8\u8ba4\u7f51\u5173\uff09\u3002 IP\u5730\u5740\u3001\u5b50\u7f51\u63a9\u7801\u3001\u9ed8\u8ba4\u7f51\u5173\u7684\u8bbe\u5b9a\uff1a 1) \u786e\u4fdd\u548c\u901a\u4fe1\u57fa\u677fIP\u5730\u5740\u5728\u540c\u4e00\u57df\u5185\uff0c\u4e14\u8bbe\u5b9a\u7684IP\u548c\u540c\u4e00\u57df\u5185\u5176\u4ed6\u8bbe\u5907\u7684IP\u4e0d\u51b2\u7a81\u3002 2) PC\u7684IP\u5730\u5740\u8bbe\u5b9a\u5b8c\u6210\u540e\uff0c\u9f20\u6807\u70b9\u51fb\u5b50\u7f51\u63a9\u7801\u8f93\u5165\u680f\uff0c\u5b50\u7f51\u63a9\u7801\u4f1a\u81ea\u52a8\u751f\u6210\uff08\u539f\u5219\u4e0a\u81ea\u52a8\u751f\u6210\u7684\u5b50\u7f51\u63a9\u7801\u548c\u901a\u4fe1\u57fa\u677f\u7684\u5b50\u7f51\u63a9\u7801\u662f\u76f8\u540c\u7684\uff0c\u53c2\u80032.2.4\u5bf9\u5b50\u7f51\u63a9\u7801\u8fdb\u884c\u786e\u8ba4\uff09\u3002 3) PC\u7684\u9ed8\u8ba4\u7f51\u5173\u548c\u901a\u4fe1\u57fa\u677f\u76f8\u540c\uff08\u53c2\u80032.2.4\u5bf9\u9ed8\u8ba4\u7f51\u5173\u8fdb\u884c\u786e\u8ba4\uff09\u3002","title":"2.2.3 \u8bbe\u5b9aPC\u7f51\u7edc\u53c2\u6570"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#224-ip","text":"\u9009\u4e2d\u641c\u7d22\u5230\u7684\u76ee\u6807IP\uff0c\u70b9\u51fb\"\u8bbe\u7f6e\"\u6309\u94ae\uff0c\u8fdb\u5165IP\u8bbe\u5b9a\u754c\u9762\u3002\u5728IP\u8bbe\u5b9a\u754c\u9762\u4e0b\uff0c\u6839\u636e\u9700\u8981\uff0c\u91cd\u65b0\u8bbe\u5b9a\u901a\u4fe1\u57fa\u677f\u7684IP\uff0c\u5e76\u70b9\u51fb\"\u4fdd\u5b58\"\u952e\uff0c\u5b8c\u6210\u65b0IP\u7684\u8bbe\u5b9a\u3002 \u6ce8\u610f \uff1a\u901a\u4fe1\u57fa\u677fIP\u8bbe\u5b9a\u754c\u9762\u4e5f\u53ef\u4ee5\u4e0d\u7528\"\u641c\u7d22\u5de5\u5177\"\u8f6f\u4ef6\u800c\u76f4\u63a5\u5728IE\u6d4f\u89c8\u5668\u4e2d\u8f93\u5165 http://192.168.0.233/ \u76f4\u63a5\u6253\u5f00\u3002","title":"2.2.4 \u8fdb\u5165IP\u8bbe\u5b9a\u754c\u9762"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#23-ip","text":"","title":"2.3 \u901a\u4fe1\u57fa\u677f\u4e34\u65f6IP\u7684\u8bbe\u5b9a\u65b9\u6cd5"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#231-ip","text":"\u70b9\u51fb\"\u641c\u7d22\"\u6309\u94ae\u5bf9\u8fde\u63a5\u5230PC\u7684\u901a\u4fe1\u8bbe\u5907\u8fdb\u884c\u641c\u7d22\uff0c\u9009\u4e2d\u76ee\u6807IP\uff0c\u70b9\u51fb\"\u8bbe\u7f6e\u4e34\u65f6IP\uff08F\uff09\"\u6309\u94ae\u3002","title":"2.3.1 \u8bbe\u7f6e\u4e34\u65f6IP"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#232-ip","text":"\u5728\u6253\u5f00\u7684\"\u8bbe\u7f6e\u4e34\u65f6IP\uff08F\uff09\"\u754c\u9762\u4e0b\uff0c\u5373\u53ef\u6839\u636e\u9700\u8981\u5bf9\u76ee\u6807IP\u8fdb\u884c\u4e34\u65f6\u8bbe\u5b9a\u3002 \u6ce8\u610f \uff1a\u8bbe\u5b9a\u7684IP\u53ea\u6709\u5728\u8bbe\u5907\u672a\u65ad\u7535\u548c\u672a\u91cd\u542f\u65f6\u6709\u6548\uff0c\u5982\u679c\u8bbe\u5907\u91cd\u542f\u6216\u8005\u65ad\u7535\uff0cIP\u7684\u8bbe\u5b9a\u4f1a\u81ea\u52a8\u6062\u590d\u5230\u51fa\u5382\u8bbe\u7f6e\u3002","title":"2.3.2 \u914d\u7f6e\u4e34\u65f6IP"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#24","text":"","title":"2.4 \u901a\u4fe1\u57fa\u677f\u7684\u91cd\u7f6e\u529f\u80fd"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#241","text":"\u5728PC\u7684IE\u6d4f\u89c8\u5668\u4e2d\u8f93\u5165\u901a\u4fe1\u57fa\u677f\u7684IP\u5730\u5740\u8fdb\u884c\u641c\u7d22\uff08\u4ee5IP\u5730\u5740\u4e3a192.168.0.233\u4e3a\u4f8b\uff0c\u5728IE\u6d4f\u89c8\u5668\u4e2d\u5e94\u8f93\u5165 http://192.168.0.233/ \uff09\u6253\u5f00\u5982\u4e0b\u7684\u753b\u9762\u3002","title":"2.4.1 \u6253\u5f00\u57fa\u677f\u7ba1\u7406\u754c\u9762"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#242","text":"\u70b9\u51fb\u753b\u9762\u5de6\u4fa7\u7684\"\u6062\u590d\u51fa\u5382\u8bbe\u7f6e\"\u9879\uff0c\u8fdb\u5165\"\u6062\u590d\u51fa\u5382\u8bbe\u7f6e\"\u754c\u9762\u3002\u70b9\u51fb\"\u6062\u590d\"\u952e\u5373\u53ef\u6062\u590d\u51fa\u5382\u8bbe\u7f6e\u3002","title":"2.4.2 \u6267\u884c\u6062\u590d\u51fa\u5382\u8bbe\u7f6e"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#_7","text":"\u5355\u4eba\u8840\u6db2\u900f\u6790\u673a TQS-88 \u9009\u914d \u6570\u636e\u901a\u4fe1\u64cd\u4f5c\u624b\u518c 00\u7248\u53d1\u5e03 2019/01/11 \u4e1c\u4e3d\u533b\u7597\u79d1\u6280\uff08\u9752\u5c9b\uff09\u80a1\u4efd\u6709\u9650\u516c\u53f8 \u9752\u5c9b\u5e02\u5373\u58a8\u533a\u670d\u88c5\u5de5\u4e1a\u56ed\u5185\u5b54\u96c0\u6cb3\u56db\u8def63\u53f7 \u7535\u8bdd\uff1a0532-81721030 \u4f20\u771f\uff1a0532-81721025 \u90ae\u653f\u7f16\u7801\uff1a266200 \u2611 \u539f\u7248\u53d1\u884c \u25a1 \u539f\u7248\u8bd1\u672c","title":"\u6587\u6863\u4fe1\u606f"},{"location":"Usages/QA/TS88%E9%80%8F%E6%9E%90%E6%9C%BA%E8%81%94%E6%9C%BA%E9%80%9A%E4%BF%A1-%E4%B8%AD%E6%96%87%E7%89%88/#_8","text":"","title":"\u9644\u5f55"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/","text":"VMware ESXi\u4e2d\u6269\u5c55Home Assistant OS\u786c\u76d8\u7a7a\u95f4\u6307\u5357 \u00b6 \u6982\u8ff0 \u00b6 \u672c\u6587\u6863\u4ecb\u7ecd\u5982\u4f55\u5728VMware ESXi\u73af\u5883\u4e2d\u5c06\u901a\u8fc7OVA\u65b9\u5f0f\u5b89\u88c5\u7684Home Assistant OS\u865a\u62df\u673a\u786c\u76d8\u4ece32GB\u6269\u5c55\u5230500GB\u3002 \u524d\u63d0\u6761\u4ef6 \u00b6 VMware ESXi 5.5 \u6216\u66f4\u9ad8\u7248\u672c \u5df2\u5b89\u88c5\u7684Home Assistant OS\u865a\u62df\u673a ESXi\u4e3b\u673a\u6709\u8db3\u591f\u7684\u5b58\u50a8\u7a7a\u95f4\uff08\u81f3\u5c11500GB\u53ef\u7528\uff09 \u7ba1\u7406\u5458\u6743\u9650\u8bbf\u95eeESXi Web\u754c\u9762 \u64cd\u4f5c\u6b65\u9aa4 \u00b6 \u6b65\u9aa41\uff1a\u51c6\u5907\u5de5\u4f5c \u00b6 \u521b\u5efa\u865a\u62df\u673a\u5feb\u7167 \uff08\u5f3a\u70c8\u5efa\u8bae\uff09 \u5728ESXi Web\u754c\u9762\u4e2d\u9009\u62e9Home Assistant\u865a\u62df\u673a \u70b9\u51fb\"\u64cd\u4f5c\" \u2192 \"\u521b\u5efa\u5feb\u7167\" \u8f93\u5165\u5feb\u7167\u540d\u79f0\uff1a \u6269\u5bb9\u524d\u5907\u4efd_YYYY-MM-DD \u70b9\u51fb\"\u521b\u5efa\u5feb\u7167\" \u5b8c\u5168\u5173\u95ed\u865a\u62df\u673a \u5728Home Assistant\u754c\u9762\u4e2d\u9009\u62e9\"\u7cfb\u7edf\" \u2192 \"\u91cd\u542f\u7cfb\u7edf\" \u9009\u62e9\"\u5173\u673a\"\u9009\u9879 \u6216\u5728ESXi\u754c\u9762\u4e2d\u9009\u62e9\u865a\u62df\u673a\uff0c\u70b9\u51fb\"\u5173\u95ed\u7535\u6e90\" \u26a0\ufe0f \u91cd\u8981 \uff1a\u786e\u4fdd\u662f\u5b8c\u5168\u5173\u95ed\uff0c\u4e0d\u662f\u6302\u8d77\u72b6\u6001 \u6b65\u9aa42\uff1a\u5728ESXi\u4e2d\u6269\u5c55\u786c\u76d8 \u00b6 \u8fdb\u5165\u865a\u62df\u673a\u7f16\u8f91\u6a21\u5f0f \u5728ESXi Web\u754c\u9762\u4e2d\u53f3\u952e\u70b9\u51fbHome Assistant\u865a\u62df\u673a \u9009\u62e9\"\u7f16\u8f91\u8bbe\u7f6e\" \u4fee\u6539\u786c\u76d8\u5bb9\u91cf \u5728\u865a\u62df\u786c\u4ef6\u5217\u8868\u4e2d\u627e\u5230\"\u786c\u76d81\" \u5f53\u524d\u663e\u793a\u4e3a\"32 GB\" \u5c06\u6570\u503c\u6539\u4e3a\"500\"\uff0c\u5355\u4f4d\u4fdd\u6301\"GB\" \u70b9\u51fb\"\u4fdd\u5b58\" \u786e\u8ba4\u66f4\u6539 \u68c0\u67e5\u865a\u62df\u673a\u8bbe\u7f6e\u4e2d\u786c\u76d8\u5bb9\u91cf\u5df2\u663e\u793a\u4e3a500GB \u5173\u95ed\u7f16\u8f91\u7a97\u53e3 \u6b65\u9aa43\uff1a\u542f\u52a8\u865a\u62df\u673a \u00b6 \u542f\u52a8Home Assistant \u70b9\u51fb\u865a\u62df\u673a\u7684\"\u5f00\u542f\u7535\u6e90\"\u6309\u94ae \u7b49\u5f85Home Assistant\u5b8c\u5168\u542f\u52a8 \u901a\u8fc7Web\u754c\u9762\u786e\u8ba4\u7cfb\u7edf\u6b63\u5e38\u8fd0\u884c \u6b65\u9aa44\uff1a\u6269\u5c55\u6587\u4ef6\u7cfb\u7edf \u00b6 \u865a\u62df\u786c\u76d8\u5df2\u6269\u5c55\uff0c\u4f46\u64cd\u4f5c\u7cfb\u7edf\u8fd8\u9700\u8981\u8bc6\u522b\u5e76\u4f7f\u7528\u65b0\u589e\u7a7a\u95f4\u3002 \u65b9\u6cd51\uff1a\u4f7f\u7528Home Assistant\u5185\u7f6e\u5de5\u5177\uff08\u63a8\u8350\uff09 \u00b6 \u8bbf\u95eeHome Assistant\u7ec8\u7aef \u5728Home Assistant Web\u754c\u9762\u4e2d \u8fdb\u5165\"\u8bbe\u7f6e\" \u2192 \"\u9644\u52a0\u7ec4\u4ef6\" \u2192 \"Advanced SSH & Web Terminal\" \u5982\u679c\u6ca1\u6709\u5b89\u88c5\uff0c\u9700\u8981\u5148\u5b89\u88c5SSH\u9644\u52a0\u7ec4\u4ef6 \u6267\u884c\u6269\u5c55\u547d\u4ee4 ```bash # \u67e5\u770b\u5f53\u524d\u78c1\u76d8\u4f7f\u7528\u60c5\u51b5 df -h # \u6269\u5c55\u6839\u5206\u533a\uff08\u901a\u5e38\u662f/dev/sda8\uff09 resize2fs /dev/sda8 # \u518d\u6b21\u67e5\u770b\u78c1\u76d8\u4f7f\u7528\u60c5\u51b5\uff0c\u786e\u8ba4\u6269\u5c55\u6210\u529f df -h ``` \u65b9\u6cd52\uff1a\u4f7f\u7528SSH\u8fde\u63a5\uff08\u5907\u9009\uff09 \u00b6 \u542f\u7528SSH \u5728Home Assistant Web\u754c\u9762\u4e2d\u542f\u7528SSH\u529f\u80fd \u901a\u8fc7SSH\u8fde\u63a5 ```bash # \u8fde\u63a5\u5230Home Assistant ssh root@[Home_Assistant_IP] # \u67e5\u770b\u78c1\u76d8\u5206\u533a fdisk -l # \u6269\u5c55\u6587\u4ef6\u7cfb\u7edf resize2fs /dev/sda8 ``` \u6b65\u9aa45\uff1a\u9a8c\u8bc1\u6269\u5c55\u7ed3\u679c \u00b6 \u68c0\u67e5\u5b58\u50a8\u7a7a\u95f4 \u901a\u8fc7SSH\u6216\u7ec8\u7aef\u6267\u884c\u547d\u4ee4\uff1a df -h \u6216\u5728Home Assistant Web\u754c\u9762\u4e2d\u8fdb\u5165\"\u8bbe\u7f6e\" \u2192 \"\u7cfb\u7edf\" \u2192 \"\u5b58\u50a8\" \u786e\u8ba4\u53ef\u7528\u7a7a\u95f4\u63a5\u8fd1500GB \u6210\u529f\u6848\u4f8b\u8f93\u51fa\u793a\u4f8b\uff1a bash \u279c ~ df -h Filesystem Size Used Available Use% Mounted on /dev/sda8 491.4G 5.4G 466.0G 1% /homeassistant /dev/sda8 491.4G 5.4G 466.0G 1% /data /dev/sda8 491.4G 5.4G 466.0G 1% /backup /dev/sda8 491.4G 5.4G 466.0G 1% /media /dev/sda8 491.4G 5.4G 466.0G 1% /share \u53ef\u4ee5\u770b\u5230 /dev/sda8 \u5206\u533a\u5df2\u6210\u529f\u6269\u5c55\u5230 491.4GB \uff0c\u53ef\u7528\u7a7a\u95f4 466.0GB \u3002 \u9a8c\u8bc1\u7cfb\u7edf\u7a33\u5b9a\u6027 \u91cd\u542fHome Assistant\u7cfb\u7edf \u786e\u8ba4\u6240\u6709\u529f\u80fd\u6b63\u5e38\u5de5\u4f5c \u68c0\u67e5\u65e5\u5fd7\u4e2d\u65e0\u9519\u8bef\u4fe1\u606f \u6545\u969c\u6392\u9664 \u00b6 \u95ee\u98981\uff1a\u865a\u62df\u673a\u65e0\u6cd5\u542f\u52a8 \u00b6 \u89e3\u51b3\u65b9\u6848\uff1a - \u68c0\u67e5ESXi\u4e3b\u673a\u5b58\u50a8\u7a7a\u95f4\u662f\u5426\u5145\u8db3 - \u6062\u590d\u5230\u6269\u5bb9\u524d\u7684\u5feb\u7167 - \u91cd\u65b0\u6267\u884c\u6269\u5bb9\u6b65\u9aa4 \u95ee\u98982\uff1a\u6587\u4ef6\u7cfb\u7edf\u6269\u5c55\u5931\u8d25 \u00b6 \u89e3\u51b3\u65b9\u6848\uff1a # \u68c0\u67e5\u6587\u4ef6\u7cfb\u7edf fsck /dev/sda8 # \u5f3a\u5236\u6269\u5c55 resize2fs -f /dev/sda8 \u95ee\u98983\uff1a\u6269\u5c55\u540e\u7a7a\u95f4\u672a\u663e\u793a \u00b6 \u89e3\u51b3\u65b9\u6848\uff1a - \u91cd\u542fHome Assistant\u7cfb\u7edf - \u68c0\u67e5\u5206\u533a\u8868\uff1a fdisk -l - \u624b\u52a8\u6269\u5c55\u5206\u533a\uff1a parted /dev/sda resizepart 8 100% \u6ce8\u610f\u4e8b\u9879 \u00b6 \u26a0\ufe0f \u5b89\u5168\u8b66\u544a \u00b6 \u5fc5\u987b \u5728\u64cd\u4f5c\u524d\u521b\u5efa\u865a\u62df\u673a\u5feb\u7167 \u786e\u4fdd\u5728\u7ef4\u62a4\u7a97\u53e3\u671f\u95f4\u6267\u884c\u6b64\u64cd\u4f5c \u5efa\u8bae\u5728\u6d4b\u8bd5\u73af\u5883\u4e2d\u5148\u9a8c\u8bc1\u6b65\u9aa4 \ud83d\udca1 \u6700\u4f73\u5b9e\u8df5 \u00b6 \u5b9a\u671f\u5907\u4efdHome Assistant\u914d\u7f6e \u76d1\u63a7ESXi\u4e3b\u673a\u5b58\u50a8\u4f7f\u7528\u60c5\u51b5 \u8003\u8651\u4f7f\u7528\u7cbe\u7b80\u914d\u7f6e\u78c1\u76d8\u4ee5\u8282\u7701\u7a7a\u95f4 \ud83d\udccb \u9a8c\u8bc1\u6e05\u5355 \u00b6 \u521b\u5efa\u865a\u62df\u673a\u5feb\u7167 \u5b8c\u5168\u5173\u95ed\u865a\u62df\u673a \u4fee\u6539\u865a\u62df\u786c\u76d8\u5927\u5c0f\u4e3a500GB \u542f\u52a8\u865a\u62df\u673a\u5e76\u786e\u8ba4\u6b63\u5e38\u8fd0\u884c \u6267\u884c\u6587\u4ef6\u7cfb\u7edf\u6269\u5c55\u547d\u4ee4 \u9a8c\u8bc1\u5b58\u50a8\u7a7a\u95f4\u663e\u793a\u63a5\u8fd1500GB \u6d4b\u8bd5Home Assistant\u6240\u6709\u529f\u80fd \u5220\u9664\u4e0d\u9700\u8981\u7684\u5feb\u7167\uff08\u53ef\u9009\uff09 \u76f8\u5173\u6587\u6863 \u00b6 Home Assistant\u5907\u4efd\u548c\u6062\u590d\u6307\u5357 VMware ESXi\u865a\u62df\u673a\u7ba1\u7406\u6307\u5357 \u66f4\u65b0\u8bb0\u5f55 \u00b6 2025-07-17\uff1a\u521d\u59cb\u7248\u672c\u521b\u5efa 2025-07-17\uff1a\u6dfb\u52a0\u6210\u529f\u6848\u4f8b\u9a8c\u8bc1\uff0c\u786e\u8ba432GB\u2192500GB\u6269\u5c55\u5b8c\u5168\u6210\u529f \u5305\u542b\u4ece32GB\u6269\u5c55\u5230500GB\u7684\u5b8c\u6574\u6b65\u9aa4\u548c\u5b9e\u9645\u9a8c\u8bc1\u7ed3\u679c \u6587\u6863\u4f5c\u8005 \uff1a\u6280\u672f\u56e2\u961f \u6700\u540e\u66f4\u65b0 \uff1a2025\u5e747\u670817\u65e5 \u9002\u7528\u7248\u672c \uff1aVMware ESXi 5.5+, Home Assistant OS \u6240\u6709\u7248\u672c","title":"VMware-ESXi\u6269\u5c55HomeAssistant\u786c\u76d8\u6307\u5357"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#vmware-esxihome-assistant-os","text":"","title":"VMware ESXi\u4e2d\u6269\u5c55Home Assistant OS\u786c\u76d8\u7a7a\u95f4\u6307\u5357"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_1","text":"\u672c\u6587\u6863\u4ecb\u7ecd\u5982\u4f55\u5728VMware ESXi\u73af\u5883\u4e2d\u5c06\u901a\u8fc7OVA\u65b9\u5f0f\u5b89\u88c5\u7684Home Assistant OS\u865a\u62df\u673a\u786c\u76d8\u4ece32GB\u6269\u5c55\u5230500GB\u3002","title":"\u6982\u8ff0"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_2","text":"VMware ESXi 5.5 \u6216\u66f4\u9ad8\u7248\u672c \u5df2\u5b89\u88c5\u7684Home Assistant OS\u865a\u62df\u673a ESXi\u4e3b\u673a\u6709\u8db3\u591f\u7684\u5b58\u50a8\u7a7a\u95f4\uff08\u81f3\u5c11500GB\u53ef\u7528\uff09 \u7ba1\u7406\u5458\u6743\u9650\u8bbf\u95eeESXi Web\u754c\u9762","title":"\u524d\u63d0\u6761\u4ef6"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_3","text":"","title":"\u64cd\u4f5c\u6b65\u9aa4"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#1","text":"\u521b\u5efa\u865a\u62df\u673a\u5feb\u7167 \uff08\u5f3a\u70c8\u5efa\u8bae\uff09 \u5728ESXi Web\u754c\u9762\u4e2d\u9009\u62e9Home Assistant\u865a\u62df\u673a \u70b9\u51fb\"\u64cd\u4f5c\" \u2192 \"\u521b\u5efa\u5feb\u7167\" \u8f93\u5165\u5feb\u7167\u540d\u79f0\uff1a \u6269\u5bb9\u524d\u5907\u4efd_YYYY-MM-DD \u70b9\u51fb\"\u521b\u5efa\u5feb\u7167\" \u5b8c\u5168\u5173\u95ed\u865a\u62df\u673a \u5728Home Assistant\u754c\u9762\u4e2d\u9009\u62e9\"\u7cfb\u7edf\" \u2192 \"\u91cd\u542f\u7cfb\u7edf\" \u9009\u62e9\"\u5173\u673a\"\u9009\u9879 \u6216\u5728ESXi\u754c\u9762\u4e2d\u9009\u62e9\u865a\u62df\u673a\uff0c\u70b9\u51fb\"\u5173\u95ed\u7535\u6e90\" \u26a0\ufe0f \u91cd\u8981 \uff1a\u786e\u4fdd\u662f\u5b8c\u5168\u5173\u95ed\uff0c\u4e0d\u662f\u6302\u8d77\u72b6\u6001","title":"\u6b65\u9aa41\uff1a\u51c6\u5907\u5de5\u4f5c"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#2esxi","text":"\u8fdb\u5165\u865a\u62df\u673a\u7f16\u8f91\u6a21\u5f0f \u5728ESXi Web\u754c\u9762\u4e2d\u53f3\u952e\u70b9\u51fbHome Assistant\u865a\u62df\u673a \u9009\u62e9\"\u7f16\u8f91\u8bbe\u7f6e\" \u4fee\u6539\u786c\u76d8\u5bb9\u91cf \u5728\u865a\u62df\u786c\u4ef6\u5217\u8868\u4e2d\u627e\u5230\"\u786c\u76d81\" \u5f53\u524d\u663e\u793a\u4e3a\"32 GB\" \u5c06\u6570\u503c\u6539\u4e3a\"500\"\uff0c\u5355\u4f4d\u4fdd\u6301\"GB\" \u70b9\u51fb\"\u4fdd\u5b58\" \u786e\u8ba4\u66f4\u6539 \u68c0\u67e5\u865a\u62df\u673a\u8bbe\u7f6e\u4e2d\u786c\u76d8\u5bb9\u91cf\u5df2\u663e\u793a\u4e3a500GB \u5173\u95ed\u7f16\u8f91\u7a97\u53e3","title":"\u6b65\u9aa42\uff1a\u5728ESXi\u4e2d\u6269\u5c55\u786c\u76d8"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#3","text":"\u542f\u52a8Home Assistant \u70b9\u51fb\u865a\u62df\u673a\u7684\"\u5f00\u542f\u7535\u6e90\"\u6309\u94ae \u7b49\u5f85Home Assistant\u5b8c\u5168\u542f\u52a8 \u901a\u8fc7Web\u754c\u9762\u786e\u8ba4\u7cfb\u7edf\u6b63\u5e38\u8fd0\u884c","title":"\u6b65\u9aa43\uff1a\u542f\u52a8\u865a\u62df\u673a"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#4","text":"\u865a\u62df\u786c\u76d8\u5df2\u6269\u5c55\uff0c\u4f46\u64cd\u4f5c\u7cfb\u7edf\u8fd8\u9700\u8981\u8bc6\u522b\u5e76\u4f7f\u7528\u65b0\u589e\u7a7a\u95f4\u3002","title":"\u6b65\u9aa44\uff1a\u6269\u5c55\u6587\u4ef6\u7cfb\u7edf"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#1home-assistant","text":"\u8bbf\u95eeHome Assistant\u7ec8\u7aef \u5728Home Assistant Web\u754c\u9762\u4e2d \u8fdb\u5165\"\u8bbe\u7f6e\" \u2192 \"\u9644\u52a0\u7ec4\u4ef6\" \u2192 \"Advanced SSH & Web Terminal\" \u5982\u679c\u6ca1\u6709\u5b89\u88c5\uff0c\u9700\u8981\u5148\u5b89\u88c5SSH\u9644\u52a0\u7ec4\u4ef6 \u6267\u884c\u6269\u5c55\u547d\u4ee4 ```bash # \u67e5\u770b\u5f53\u524d\u78c1\u76d8\u4f7f\u7528\u60c5\u51b5 df -h # \u6269\u5c55\u6839\u5206\u533a\uff08\u901a\u5e38\u662f/dev/sda8\uff09 resize2fs /dev/sda8 # \u518d\u6b21\u67e5\u770b\u78c1\u76d8\u4f7f\u7528\u60c5\u51b5\uff0c\u786e\u8ba4\u6269\u5c55\u6210\u529f df -h ```","title":"\u65b9\u6cd51\uff1a\u4f7f\u7528Home Assistant\u5185\u7f6e\u5de5\u5177\uff08\u63a8\u8350\uff09"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#2ssh","text":"\u542f\u7528SSH \u5728Home Assistant Web\u754c\u9762\u4e2d\u542f\u7528SSH\u529f\u80fd \u901a\u8fc7SSH\u8fde\u63a5 ```bash # \u8fde\u63a5\u5230Home Assistant ssh root@[Home_Assistant_IP] # \u67e5\u770b\u78c1\u76d8\u5206\u533a fdisk -l # \u6269\u5c55\u6587\u4ef6\u7cfb\u7edf resize2fs /dev/sda8 ```","title":"\u65b9\u6cd52\uff1a\u4f7f\u7528SSH\u8fde\u63a5\uff08\u5907\u9009\uff09"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#5","text":"\u68c0\u67e5\u5b58\u50a8\u7a7a\u95f4 \u901a\u8fc7SSH\u6216\u7ec8\u7aef\u6267\u884c\u547d\u4ee4\uff1a df -h \u6216\u5728Home Assistant Web\u754c\u9762\u4e2d\u8fdb\u5165\"\u8bbe\u7f6e\" \u2192 \"\u7cfb\u7edf\" \u2192 \"\u5b58\u50a8\" \u786e\u8ba4\u53ef\u7528\u7a7a\u95f4\u63a5\u8fd1500GB \u6210\u529f\u6848\u4f8b\u8f93\u51fa\u793a\u4f8b\uff1a bash \u279c ~ df -h Filesystem Size Used Available Use% Mounted on /dev/sda8 491.4G 5.4G 466.0G 1% /homeassistant /dev/sda8 491.4G 5.4G 466.0G 1% /data /dev/sda8 491.4G 5.4G 466.0G 1% /backup /dev/sda8 491.4G 5.4G 466.0G 1% /media /dev/sda8 491.4G 5.4G 466.0G 1% /share \u53ef\u4ee5\u770b\u5230 /dev/sda8 \u5206\u533a\u5df2\u6210\u529f\u6269\u5c55\u5230 491.4GB \uff0c\u53ef\u7528\u7a7a\u95f4 466.0GB \u3002 \u9a8c\u8bc1\u7cfb\u7edf\u7a33\u5b9a\u6027 \u91cd\u542fHome Assistant\u7cfb\u7edf \u786e\u8ba4\u6240\u6709\u529f\u80fd\u6b63\u5e38\u5de5\u4f5c \u68c0\u67e5\u65e5\u5fd7\u4e2d\u65e0\u9519\u8bef\u4fe1\u606f","title":"\u6b65\u9aa45\uff1a\u9a8c\u8bc1\u6269\u5c55\u7ed3\u679c"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_4","text":"","title":"\u6545\u969c\u6392\u9664"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#1_1","text":"\u89e3\u51b3\u65b9\u6848\uff1a - \u68c0\u67e5ESXi\u4e3b\u673a\u5b58\u50a8\u7a7a\u95f4\u662f\u5426\u5145\u8db3 - \u6062\u590d\u5230\u6269\u5bb9\u524d\u7684\u5feb\u7167 - \u91cd\u65b0\u6267\u884c\u6269\u5bb9\u6b65\u9aa4","title":"\u95ee\u98981\uff1a\u865a\u62df\u673a\u65e0\u6cd5\u542f\u52a8"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#2","text":"\u89e3\u51b3\u65b9\u6848\uff1a # \u68c0\u67e5\u6587\u4ef6\u7cfb\u7edf fsck /dev/sda8 # \u5f3a\u5236\u6269\u5c55 resize2fs -f /dev/sda8","title":"\u95ee\u98982\uff1a\u6587\u4ef6\u7cfb\u7edf\u6269\u5c55\u5931\u8d25"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#3_1","text":"\u89e3\u51b3\u65b9\u6848\uff1a - \u91cd\u542fHome Assistant\u7cfb\u7edf - \u68c0\u67e5\u5206\u533a\u8868\uff1a fdisk -l - \u624b\u52a8\u6269\u5c55\u5206\u533a\uff1a parted /dev/sda resizepart 8 100%","title":"\u95ee\u98983\uff1a\u6269\u5c55\u540e\u7a7a\u95f4\u672a\u663e\u793a"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_5","text":"","title":"\u6ce8\u610f\u4e8b\u9879"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_6","text":"\u5fc5\u987b \u5728\u64cd\u4f5c\u524d\u521b\u5efa\u865a\u62df\u673a\u5feb\u7167 \u786e\u4fdd\u5728\u7ef4\u62a4\u7a97\u53e3\u671f\u95f4\u6267\u884c\u6b64\u64cd\u4f5c \u5efa\u8bae\u5728\u6d4b\u8bd5\u73af\u5883\u4e2d\u5148\u9a8c\u8bc1\u6b65\u9aa4","title":"\u26a0\ufe0f \u5b89\u5168\u8b66\u544a"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_7","text":"\u5b9a\u671f\u5907\u4efdHome Assistant\u914d\u7f6e \u76d1\u63a7ESXi\u4e3b\u673a\u5b58\u50a8\u4f7f\u7528\u60c5\u51b5 \u8003\u8651\u4f7f\u7528\u7cbe\u7b80\u914d\u7f6e\u78c1\u76d8\u4ee5\u8282\u7701\u7a7a\u95f4","title":"\ud83d\udca1 \u6700\u4f73\u5b9e\u8df5"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_8","text":"\u521b\u5efa\u865a\u62df\u673a\u5feb\u7167 \u5b8c\u5168\u5173\u95ed\u865a\u62df\u673a \u4fee\u6539\u865a\u62df\u786c\u76d8\u5927\u5c0f\u4e3a500GB \u542f\u52a8\u865a\u62df\u673a\u5e76\u786e\u8ba4\u6b63\u5e38\u8fd0\u884c \u6267\u884c\u6587\u4ef6\u7cfb\u7edf\u6269\u5c55\u547d\u4ee4 \u9a8c\u8bc1\u5b58\u50a8\u7a7a\u95f4\u663e\u793a\u63a5\u8fd1500GB \u6d4b\u8bd5Home Assistant\u6240\u6709\u529f\u80fd \u5220\u9664\u4e0d\u9700\u8981\u7684\u5feb\u7167\uff08\u53ef\u9009\uff09","title":"\ud83d\udccb \u9a8c\u8bc1\u6e05\u5355"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_9","text":"Home Assistant\u5907\u4efd\u548c\u6062\u590d\u6307\u5357 VMware ESXi\u865a\u62df\u673a\u7ba1\u7406\u6307\u5357","title":"\u76f8\u5173\u6587\u6863"},{"location":"Usages/QA/VMware-ESXi%E6%89%A9%E5%B1%95HomeAssistant%E7%A1%AC%E7%9B%98%E6%8C%87%E5%8D%97/#_10","text":"2025-07-17\uff1a\u521d\u59cb\u7248\u672c\u521b\u5efa 2025-07-17\uff1a\u6dfb\u52a0\u6210\u529f\u6848\u4f8b\u9a8c\u8bc1\uff0c\u786e\u8ba432GB\u2192500GB\u6269\u5c55\u5b8c\u5168\u6210\u529f \u5305\u542b\u4ece32GB\u6269\u5c55\u5230500GB\u7684\u5b8c\u6574\u6b65\u9aa4\u548c\u5b9e\u9645\u9a8c\u8bc1\u7ed3\u679c \u6587\u6863\u4f5c\u8005 \uff1a\u6280\u672f\u56e2\u961f \u6700\u540e\u66f4\u65b0 \uff1a2025\u5e747\u670817\u65e5 \u9002\u7528\u7248\u672c \uff1aVMware ESXi 5.5+, Home Assistant OS \u6240\u6709\u7248\u672c","title":"\u66f4\u65b0\u8bb0\u5f55"},{"location":"Usages/QA/errorsQA/","text":"\u5e38\u89c1\u9519\u8bef \u00b6 \u914d\u7f6e\u6587\u4ef6\u51fa\u9519 \u00b6 \u5f53\u51fa\u73b0\u8fd9\u79cd\u56fe,\u4f30\u8ba1\u662f\u914d\u7f6e\u6587\u4ef6\u683c\u5f0f\u51fa\u9519,\u4e0d\u7b26\u5408yam\u683c\u5f0f,\u8bf7\u7528\u5171\u4eab\u76ee\u5f55smb\u6216ssh\u6253\u5f00\u914d\u7f6e\u6587\u4ef6\u4fee\u6b63\u683c\u5f0f\u540e,\u91cd\u542f\u518d\u8bd5","title":"errorsQA"},{"location":"Usages/QA/errorsQA/#_1","text":"","title":"\u5e38\u89c1\u9519\u8bef"},{"location":"Usages/QA/errorsQA/#_2","text":"\u5f53\u51fa\u73b0\u8fd9\u79cd\u56fe,\u4f30\u8ba1\u662f\u914d\u7f6e\u6587\u4ef6\u683c\u5f0f\u51fa\u9519,\u4e0d\u7b26\u5408yam\u683c\u5f0f,\u8bf7\u7528\u5171\u4eab\u76ee\u5f55smb\u6216ssh\u6253\u5f00\u914d\u7f6e\u6587\u4ef6\u4fee\u6b63\u683c\u5f0f\u540e,\u91cd\u542f\u518d\u8bd5","title":"\u914d\u7f6e\u6587\u4ef6\u51fa\u9519"},{"location":"Usages/QA/ubunte-desktop%E6%A1%8C%E9%9D%A2%E7%B3%BB%E7%BB%9F%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E5%BC%80%E5%90%AF%E8%BF%9C%E7%A8%8B%E5%8D%8F%E5%8A%A9/","text":"\u5b89\u88c5curl \u00b6 \u5148\u68c0\u67e5\u662f\u5426\u5b89\u88c5curl\u5982\u679c\u6ca1\u88c5\uff0c\u5219\u5148\u7528\u4ee5\u4e0b\u6307\u4ee4\u5b89\u88c5 sudo apt update sudo apt install curl \u914d\u7f6e\u8fdc\u7a0b\u534f\u52a9\u5f00\u673a\u52a8\u767b\u5f55\u4e0eedge\u81ea\u542f \u00b6 \u6253\u5f00\u7ec8\u7aef,\u590d\u5236\u4e0b\u9762\u547d\u4ee4\uff0c\u6267\u884c\uff0c\u5b8c\u6210\u540e\u91cd\u542f\u7535\u8111\u5373\u53ef\u3002 curl -fsSL http://datacdn.data-it.tech/HomeAssistant/tools/install-uds.sh | bash \u8fd9\u4e2a\u8fc7\u7a0b\u53ef\u80fd\u6bd4\u8f83\u4e45\uff0c\u8bf7\u8010\u5fc3\u7b49\u5f85\u3002 \u672c\u811a\u672c\u5b9e\u5b9e\u73b0\u7684\u529f\u80fd \u00b6 SSH\u670d\u52a1 - \u81ea\u52a8\u5b89\u88c5\u5e76\u542f\u7528SSH\u670d\u52a1 \u7cfb\u7edf\u66f4\u65b0 - \u66f4\u65b0\u7cfb\u7edf\u8f6f\u4ef6\u5305\u5230\u6700\u65b0\u7248\u672c \u7981\u7528\u81ea\u52a8\u5f85\u673a - \u963b\u6b62\u7cfb\u7edfAC\u7535\u6e90\u548c\u7535\u6c60\u6a21\u5f0f\u4e0b\u81ea\u52a8\u7761\u7720 \u7981\u7528\u5c4f\u5e55\u9501\u5b9a - \u53d6\u6d88\u5c4f\u5e55\u4fdd\u62a4\u7a0b\u5e8f\u9501\u5b9a\u529f\u80fd \u7981\u7528\u5c4f\u5e55\u81ea\u52a8\u5173\u95ed - \u9632\u6b62\u663e\u793a\u5668\u81ea\u52a8\u5173\u95ed \u7981\u7528\u81ea\u52a8\u66f4\u65b0 - \u914d\u7f6eAPT\u7b56\u7565\u963b\u6b62\u7cfb\u7edf\u81ea\u52a8\u66f4\u65b0 \u7981\u7528MOTD\u901a\u77e5 - \u5173\u95ed\u767b\u5f55\u65f6\u7684\u65b0\u95fb\u901a\u77e5 Microsoft Edge\u5b89\u88c5 - \u81ea\u52a8\u4e0b\u8f7d\u5b89\u88c5\u6700\u65b0\u7248Edge\u6d4f\u89c8\u5668 \u81ea\u52a8\u767b\u5f55\u914d\u7f6e - \u8bbe\u7f6eGDM\u81ea\u52a8\u767b\u5f55\uff0c\u91cd\u542f\u540e\u65e0\u9700\u5bc6\u7801 XRDP\u8fdc\u7a0b\u684c\u9762 - \u5b89\u88c5\u914d\u7f6eRDP\u8fdc\u7a0b\u684c\u9762\u670d\u52a1\uff08\u7aef\u53e33389\uff09 Polkit\u7b56\u7565\u914d\u7f6e - \u89e3\u51b3\u8fdc\u7a0b\u684c\u9762\u6743\u9650\u8ba4\u8bc1\u95ee\u9898 \u9632\u706b\u5899\u914d\u7f6e - \u667a\u80fd\u68c0\u6d4bUFW\u72b6\u6001\u5e76\u914d\u7f6e\u5fc5\u8981\u7aef\u53e3 \u4e2d\u6587\u8f93\u5165\u6cd5 - \u5b89\u88c5ibus-pinyin\u4e2d\u6587\u62fc\u97f3\u8f93\u5165\u6cd5 NoMachine\u8fdc\u7a0b\u8f6f\u4ef6 - \u667a\u80fd\u68c0\u6d4b\u5b89\u88c5NoMachine\uff08\u7aef\u53e34000\uff09 Edge Kiosk\u81ea\u542f\u52a8 - \u914d\u7f6eEdge\u5168\u5c4f\u6a21\u5f0f\u81ea\u52a8\u542f\u52a8\u6307\u5b9a\u7f51\u9875 \u5bc6\u94a5\u73af\u5904\u7406 - \u914d\u7f6e\u542f\u52a8\u53c2\u6570\u907f\u514d\u5bc6\u94a5\u73af\u5bc6\u7801\u63d0\u793a \u684c\u9762\u81ea\u542f\u52a8\u6587\u4ef6 - \u521b\u5efaautostart\u684c\u9762\u6587\u4ef6\u5b9e\u73b0\u81ea\u542f\u52a8 \u5907\u7528\u542f\u52a8\u811a\u672c - \u63d0\u4f9bbackup\u542f\u52a8\u811a\u672c\u4f5c\u4e3a\u5907\u7528\u65b9\u6848 \u670d\u52a1\u6e05\u7406 - \u81ea\u52a8\u6e05\u7406\u51b2\u7a81\u7684systemd\u670d\u52a1 \u5b8c\u6574\u65e5\u5fd7\u8bb0\u5f55 - \u8bb0\u5f55\u6240\u6709\u64cd\u4f5c\u5230\u65e5\u5fd7\u6587\u4ef6 \u9519\u8bef\u5904\u7406\u673a\u5236 - \u6bcf\u6b65\u9aa4\u5b8c\u5584\u7684\u9519\u8bef\u68c0\u6d4b\u5904\u7406 \u65e0\u4ea4\u4e92\u6a21\u5f0f - \u652f\u6301curl\u8fdc\u7a0b\u6267\u884c\u65e0\u9700\u7528\u6237\u8f93\u5165 \u73af\u5883\u53d8\u91cf\u652f\u6301 - \u53ef\u901a\u8fc7KIOSK_URL\u81ea\u5b9a\u4e49\u542f\u52a8\u9875\u9762 \u9632\u706b\u5899\u7aef\u53e3\u7ba1\u7406 - \u81ea\u52a8\u5f00\u653eSSH/RDP/NoMachine\u7aef\u53e3 \u5b89\u5168\u53c2\u6570\u914d\u7f6e - Edge\u542f\u52a8\u5305\u542b\u5b89\u5168\u548c\u517c\u5bb9\u6027\u53c2\u6570 \u4fee\u6539\u5927\u5c4f\u6253\u5f00\u7684\u5730\u5740 \u00b6 \u627e\u5230\u811a\u672c\u7684\u7b2c192\u884c\uff0c\u4fee\u6539\u5ba2\u6237\u4ee3\u7801\uff0c \u627e\u5230\u811a\u672c\u7684\u7b2c193\u884c\uff0c\u4fee\u6539\u7b2c\u9875\u663e\u793a\u6570\u91cf \u5982\u4e0b\u56fe\u6240\u793a","title":"Ubuntu-desktop\u684c\u9762\u7cfb\u7edf\u5982\u4f55\u914d\u7f6e\u5f00\u542f\u8fdc\u7a0b\u534f\u52a9"},{"location":"Usages/QA/ubunte-desktop%E6%A1%8C%E9%9D%A2%E7%B3%BB%E7%BB%9F%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E5%BC%80%E5%90%AF%E8%BF%9C%E7%A8%8B%E5%8D%8F%E5%8A%A9/#curl","text":"\u5148\u68c0\u67e5\u662f\u5426\u5b89\u88c5curl\u5982\u679c\u6ca1\u88c5\uff0c\u5219\u5148\u7528\u4ee5\u4e0b\u6307\u4ee4\u5b89\u88c5 sudo apt update sudo apt install curl","title":"\u5b89\u88c5curl"},{"location":"Usages/QA/ubunte-desktop%E6%A1%8C%E9%9D%A2%E7%B3%BB%E7%BB%9F%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E5%BC%80%E5%90%AF%E8%BF%9C%E7%A8%8B%E5%8D%8F%E5%8A%A9/#edge","text":"\u6253\u5f00\u7ec8\u7aef,\u590d\u5236\u4e0b\u9762\u547d\u4ee4\uff0c\u6267\u884c\uff0c\u5b8c\u6210\u540e\u91cd\u542f\u7535\u8111\u5373\u53ef\u3002 curl -fsSL http://datacdn.data-it.tech/HomeAssistant/tools/install-uds.sh | bash \u8fd9\u4e2a\u8fc7\u7a0b\u53ef\u80fd\u6bd4\u8f83\u4e45\uff0c\u8bf7\u8010\u5fc3\u7b49\u5f85\u3002","title":"\u914d\u7f6e\u8fdc\u7a0b\u534f\u52a9\u5f00\u673a\u52a8\u767b\u5f55\u4e0eedge\u81ea\u542f"},{"location":"Usages/QA/ubunte-desktop%E6%A1%8C%E9%9D%A2%E7%B3%BB%E7%BB%9F%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E5%BC%80%E5%90%AF%E8%BF%9C%E7%A8%8B%E5%8D%8F%E5%8A%A9/#_1","text":"SSH\u670d\u52a1 - \u81ea\u52a8\u5b89\u88c5\u5e76\u542f\u7528SSH\u670d\u52a1 \u7cfb\u7edf\u66f4\u65b0 - \u66f4\u65b0\u7cfb\u7edf\u8f6f\u4ef6\u5305\u5230\u6700\u65b0\u7248\u672c \u7981\u7528\u81ea\u52a8\u5f85\u673a - \u963b\u6b62\u7cfb\u7edfAC\u7535\u6e90\u548c\u7535\u6c60\u6a21\u5f0f\u4e0b\u81ea\u52a8\u7761\u7720 \u7981\u7528\u5c4f\u5e55\u9501\u5b9a - \u53d6\u6d88\u5c4f\u5e55\u4fdd\u62a4\u7a0b\u5e8f\u9501\u5b9a\u529f\u80fd \u7981\u7528\u5c4f\u5e55\u81ea\u52a8\u5173\u95ed - \u9632\u6b62\u663e\u793a\u5668\u81ea\u52a8\u5173\u95ed \u7981\u7528\u81ea\u52a8\u66f4\u65b0 - \u914d\u7f6eAPT\u7b56\u7565\u963b\u6b62\u7cfb\u7edf\u81ea\u52a8\u66f4\u65b0 \u7981\u7528MOTD\u901a\u77e5 - \u5173\u95ed\u767b\u5f55\u65f6\u7684\u65b0\u95fb\u901a\u77e5 Microsoft Edge\u5b89\u88c5 - \u81ea\u52a8\u4e0b\u8f7d\u5b89\u88c5\u6700\u65b0\u7248Edge\u6d4f\u89c8\u5668 \u81ea\u52a8\u767b\u5f55\u914d\u7f6e - \u8bbe\u7f6eGDM\u81ea\u52a8\u767b\u5f55\uff0c\u91cd\u542f\u540e\u65e0\u9700\u5bc6\u7801 XRDP\u8fdc\u7a0b\u684c\u9762 - \u5b89\u88c5\u914d\u7f6eRDP\u8fdc\u7a0b\u684c\u9762\u670d\u52a1\uff08\u7aef\u53e33389\uff09 Polkit\u7b56\u7565\u914d\u7f6e - \u89e3\u51b3\u8fdc\u7a0b\u684c\u9762\u6743\u9650\u8ba4\u8bc1\u95ee\u9898 \u9632\u706b\u5899\u914d\u7f6e - \u667a\u80fd\u68c0\u6d4bUFW\u72b6\u6001\u5e76\u914d\u7f6e\u5fc5\u8981\u7aef\u53e3 \u4e2d\u6587\u8f93\u5165\u6cd5 - \u5b89\u88c5ibus-pinyin\u4e2d\u6587\u62fc\u97f3\u8f93\u5165\u6cd5 NoMachine\u8fdc\u7a0b\u8f6f\u4ef6 - \u667a\u80fd\u68c0\u6d4b\u5b89\u88c5NoMachine\uff08\u7aef\u53e34000\uff09 Edge Kiosk\u81ea\u542f\u52a8 - \u914d\u7f6eEdge\u5168\u5c4f\u6a21\u5f0f\u81ea\u52a8\u542f\u52a8\u6307\u5b9a\u7f51\u9875 \u5bc6\u94a5\u73af\u5904\u7406 - \u914d\u7f6e\u542f\u52a8\u53c2\u6570\u907f\u514d\u5bc6\u94a5\u73af\u5bc6\u7801\u63d0\u793a \u684c\u9762\u81ea\u542f\u52a8\u6587\u4ef6 - \u521b\u5efaautostart\u684c\u9762\u6587\u4ef6\u5b9e\u73b0\u81ea\u542f\u52a8 \u5907\u7528\u542f\u52a8\u811a\u672c - \u63d0\u4f9bbackup\u542f\u52a8\u811a\u672c\u4f5c\u4e3a\u5907\u7528\u65b9\u6848 \u670d\u52a1\u6e05\u7406 - \u81ea\u52a8\u6e05\u7406\u51b2\u7a81\u7684systemd\u670d\u52a1 \u5b8c\u6574\u65e5\u5fd7\u8bb0\u5f55 - \u8bb0\u5f55\u6240\u6709\u64cd\u4f5c\u5230\u65e5\u5fd7\u6587\u4ef6 \u9519\u8bef\u5904\u7406\u673a\u5236 - \u6bcf\u6b65\u9aa4\u5b8c\u5584\u7684\u9519\u8bef\u68c0\u6d4b\u5904\u7406 \u65e0\u4ea4\u4e92\u6a21\u5f0f - \u652f\u6301curl\u8fdc\u7a0b\u6267\u884c\u65e0\u9700\u7528\u6237\u8f93\u5165 \u73af\u5883\u53d8\u91cf\u652f\u6301 - \u53ef\u901a\u8fc7KIOSK_URL\u81ea\u5b9a\u4e49\u542f\u52a8\u9875\u9762 \u9632\u706b\u5899\u7aef\u53e3\u7ba1\u7406 - \u81ea\u52a8\u5f00\u653eSSH/RDP/NoMachine\u7aef\u53e3 \u5b89\u5168\u53c2\u6570\u914d\u7f6e - Edge\u542f\u52a8\u5305\u542b\u5b89\u5168\u548c\u517c\u5bb9\u6027\u53c2\u6570","title":"\u672c\u811a\u672c\u5b9e\u5b9e\u73b0\u7684\u529f\u80fd"},{"location":"Usages/QA/ubunte-desktop%E6%A1%8C%E9%9D%A2%E7%B3%BB%E7%BB%9F%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E5%BC%80%E5%90%AF%E8%BF%9C%E7%A8%8B%E5%8D%8F%E5%8A%A9/#_2","text":"\u627e\u5230\u811a\u672c\u7684\u7b2c192\u884c\uff0c\u4fee\u6539\u5ba2\u6237\u4ee3\u7801\uff0c \u627e\u5230\u811a\u672c\u7684\u7b2c193\u884c\uff0c\u4fee\u6539\u7b2c\u9875\u663e\u793a\u6570\u91cf \u5982\u4e0b\u56fe\u6240\u793a","title":"\u4fee\u6539\u5927\u5c4f\u6253\u5f00\u7684\u5730\u5740"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/","text":"Win11/10\u8bbf\u95eeSamba\u5171\u4eab\u548cVSCode SSH\u8bbf\u95ee\u89e3\u51b3\u65b9\u6848 \u00b6 \u95ee\u9898\u63cf\u8ff0 \u00b6 Docker\u5b89\u88c5\u7684HomeAssistant\u4f7f\u7528Samba\u5171\u4eab\u914d\u7f6e\u76ee\u5f55\uff0c\u4f46Win11/10\u6709\u65f6\u65e0\u6cd5\u6b63\u5e38\u8bbf\u95ee\u65e0\u5bc6\u7801\u7684Samba\u5171\u4eab\u3002 \u89e3\u51b3\u65b9\u6848 \u00b6 \u65b9\u6848\u4e00\uff1a\u4fee\u590dWin11/10 Samba\u8bbf\u95ee\u95ee\u9898 \u00b6 1. \u542f\u7528SMB1.0\u534f\u8bae\uff08\u4e0d\u63a8\u8350\uff0c\u5b89\u5168\u6027\u8f83\u4f4e\uff09 \u00b6 # \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884cPowerShell Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol 2. \u4fee\u6539\u672c\u5730\u5b89\u5168\u7b56\u7565\uff08\u63a8\u8350\uff09 \u00b6 \u6309 Win+R \u6253\u5f00\u8fd0\u884c\u5bf9\u8bdd\u6846\uff0c\u8f93\u5165 gpedit.msc \u5bfc\u822a\u5230\uff1a \u8ba1\u7b97\u673a\u914d\u7f6e > Windows\u8bbe\u7f6e > \u5b89\u5168\u8bbe\u7f6e > \u672c\u5730\u7b56\u7565 > \u5b89\u5168\u9009\u9879 \u627e\u5230\u5e76\u4fee\u6539\u4ee5\u4e0b\u7b56\u7565\uff1a \u7f51\u7edc\u5b89\u5168: LAN Manager\u8eab\u4efd\u9a8c\u8bc1\u7ea7\u522b \u8bbe\u7f6e\u4e3a \u53d1\u9001LM\u548cNTLM\u54cd\u5e94 \u7f51\u7edc\u5b89\u5168: \u5bf9\u4e8eNTLM SSP(\u5305\u62ec\u5b89\u5168RPC)\u7684\u6700\u5c0f\u4f1a\u8bdd\u5b89\u5168 \u8bbe\u7f6e\u4e3a \u65e0\u8981\u6c42 3. \u4fee\u6539\u6ce8\u518c\u8868\uff08\u9ad8\u7ea7\u7528\u6237\uff09 \u00b6 # \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884ccmd reg add HKLM\\SYSTEM\\CurrentControlSet\\Services\\lanmanserver\\parameters /v RequireSecuritySignature /t REG_DWORD /d 0 /f reg add HKLM\\SYSTEM\\CurrentControlSet\\Services\\lanmanworkstation\\parameters /v RequireSecuritySignature /t REG_DWORD /d 0 /f reg add HKLM\\SYSTEM\\CurrentControlSet\\Services\\lanmanworkstation\\parameters /v EnableSecuritySignature /t REG_DWORD /d 0 /f 4. \u6dfb\u52a0\u7f51\u7edc\u51ed\u636e \u00b6 \u6253\u5f00 \u63a7\u5236\u9762\u677f > \u7528\u6237\u8d26\u6237 > \u51ed\u636e\u7ba1\u7406\u5668 \u9009\u62e9 Windows\u51ed\u636e \u70b9\u51fb \u6dfb\u52a0Windows\u51ed\u636e \u8f93\u5165\uff1a \u4e92\u8054\u7f51\u6216\u7f51\u7edc\u5730\u5740\uff1a \\\\\u4f60\u7684\u670d\u52a1\u5668IP \u7528\u6237\u540d\uff1a\u7559\u7a7a\u6216\u8f93\u5165 guest \u5bc6\u7801\uff1a\u7559\u7a7a 5. \u4f7f\u7528Windows\u5ba2\u6237\u7aef\u5f3a\u5236\u65e0\u5bc6\u7801\u8bbf\u95ee\uff08\u63a8\u8350\u89e3\u51b3\u65b9\u6848\uff09 \u00b6 \u7531\u4e8ecompose-all.yaml\u6587\u4ef6\u4e0d\u80fd\u4fee\u6539\uff0c\u6211\u4eec\u901a\u8fc7Windows\u5ba2\u6237\u7aef\u914d\u7f6e\u6765\u89e3\u51b3\u8bbf\u95ee\u95ee\u9898\uff1a \u65b9\u6cd5A\uff1a\u81ea\u52a8\u4fee\u590d\u811a\u672c\uff08\u6700\u63a8\u8350\uff09 \u6211\u4eec\u63d0\u4f9b\u4e86\u4e00\u4e2aPowerShell\u81ea\u52a8\u4fee\u590d\u811a\u672c\uff0c\u53ef\u4ee5\u4e00\u952e\u5b8c\u6210\u6240\u6709\u914d\u7f6e\uff1a \u89c2\u770b\u89c6\u9891\uff1a\u4fee\u590d Windows SMB \u9519\u8bef \u4fee\u590dWindows SMB \u9519\u8bef\u811a\u672c\u4e0b\u8f7d\u5730\u5740 \uff1a http://datacdn.data-it.tech/HomeAssistant/tools/fixwindows.ps1 \u4e0b\u8f7d\u811a\u672c\u6587\u4ef6 fixwindows.ps1 curl -o fixwindows.ps1 http://datacdn.data-it.tech/HomeAssistant/tools/fixwindows.ps1 \u5c06\u811a\u672c\u4fdd\u5b58\u5230\u672c\u5730\uff08\u5982c\u76d8\u7684\u6839\u76ee\u5f55\uff09 \u53f3\u952e\u70b9\u51fb\u811a\u672c\uff0c\u9009\u62e9\"\u4f7f\u7528PowerShell\u8fd0\u884c\" \u9009\u62e9\"\u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884c\" # \u5982\u679c\u63d0\u793a\u7981\u6b62\u8fd0\u884c\u811a\u672c\uff0c\u8bf7\u5148\u6267\u884c\u5982\u4e0b\u6307\u4ee4\u540e\uff0c\u518d\u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884c Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process #\u7136\u540e\u518d\u8fd0\u884c\u811a\u672c .\\fixwindows.ps1 \u6309\u63d0\u793a\u8f93\u5165\u670d\u52a1\u5668IP\u5730\u5740 \u4f7f\u7528\u65b9\u6cd5\uff1a # \u65b9\u5f0f1\uff1a\u76f4\u63a5\u8fd0\u884c\uff08\u4ea4\u4e92\u5f0f\u8f93\u5165IP\uff09 .\\ fixwindows . ps1 # \u65b9\u5f0f2\uff1a\u5e26\u53c2\u6570\u8fd0\u884c .\\ fixwindows . ps1 -ServerIP \"192.168.1.100\" # \u65b9\u5f0f3\uff1a\u5b8c\u6574\u53c2\u6570 .\\ fixwindows . ps1 -ServerIP \"192.168.1.100\" -ShareName \"HAConfig\" -DriveLetter \"Z\" \u811a\u672c\u529f\u80fd\uff1a \u81ea\u52a8\u4fee\u6539\u6ce8\u518c\u8868\u8bbe\u7f6e \u8c03\u6574Windows\u5b89\u5168\u7b56\u7565 \u5efa\u7acbSamba\u8fde\u63a5\u5e76\u6620\u5c04\u9a71\u52a8\u5668 \u6d4b\u8bd5\u8fde\u63a5\u72b6\u6001 \u53ef\u9009\u521b\u5efa\u684c\u9762\u5feb\u6377\u65b9\u5f0f \u65b9\u6cd5B\uff1a\u901a\u8fc7\u6620\u5c04\u7f51\u7edc\u9a71\u52a8\u5668 \u6253\u5f00\u6587\u4ef6\u8d44\u6e90\u7ba1\u7406\u5668 \u53f3\u952e\u70b9\u51fb\"\u6b64\u7535\u8111\"\uff0c\u9009\u62e9\"\u6620\u5c04\u7f51\u7edc\u9a71\u52a8\u5668\" \u9a71\u52a8\u5668\u9009\u62e9\u4e00\u4e2a\u53ef\u7528\u76d8\u7b26\uff08\u5982Z:\uff09 \u6587\u4ef6\u5939\u8f93\u5165\uff1a \\\\\u4f60\u7684\u670d\u52a1\u5668IP\\HAConfig \u53d6\u6d88\u52fe\u9009 \"\u767b\u5f55\u65f6\u91cd\u65b0\u8fde\u63a5\" \u70b9\u51fb\"\u4f7f\u7528\u5176\u4ed6\u51ed\u636e\u8fde\u63a5\" \u7528\u6237\u540d\u7559\u7a7a\u6216\u8f93\u5165 guest \uff0c\u5bc6\u7801\u7559\u7a7a \u52fe\u9009\"\u8bb0\u4f4f\u6211\u7684\u51ed\u636e\" \u65b9\u6cd5C\uff1a\u901a\u8fc7\u547d\u4ee4\u884c\u5f3a\u5236\u8fde\u63a5 \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884ccmd\uff0c\u6267\u884c\uff1a net use \\\\\u4f60\u7684\u670d\u52a1\u5668IP\\HAConfig \"\" /user:\"\" \u65b9\u6cd5D\uff1a\u4fee\u6539Windows\u672c\u5730\u7ec4\u7b56\u7565 \u8fd0\u884c gpedit.msc \u5bfc\u822a\u5230\uff1a \u8ba1\u7b97\u673a\u914d\u7f6e > Windows\u8bbe\u7f6e > \u5b89\u5168\u8bbe\u7f6e > \u672c\u5730\u7b56\u7565 > \u5b89\u5168\u9009\u9879 \u4fee\u6539\uff1a \u7f51\u7edc\u5b89\u5168: \u5bf9\u533f\u540dSID/\u540d\u79f0\u7ffb\u8bd1\u7684\u9650\u5236 \u8bbe\u7f6e\u4e3a \u65e0 \u4fee\u6539\uff1a \u7f51\u7edc\u8bbf\u95ee: \u4e0d\u5141\u8bb8SAM\u8d26\u6237\u7684\u533f\u540d\u679a\u4e3e \u8bbe\u7f6e\u4e3a \u5df2\u7981\u7528 \u65b9\u6848\u4e8c\uff1a\u4f7f\u7528VSCode SSH\u8bbf\u95eeHomeAssistant\u6302\u8f7d\u76ee\u5f55 \u00b6 1. \u786e\u4fddSSH\u670d\u52a1\u8fd0\u884c \u00b6 \u5728HomeAssistant\u4e3b\u673a\u4e0a\u786e\u4fddSSH\u670d\u52a1\u5df2\u542f\u52a8\uff1a # \u68c0\u67e5SSH\u670d\u52a1\u72b6\u6001 sudo systemctl status ssh # \u5982\u679c\u672a\u542f\u52a8\uff0c\u542f\u7528\u5e76\u542f\u52a8SSH sudo systemctl enable ssh sudo systemctl start ssh 2. \u5b89\u88c5VSCode\u6269\u5c55 \u00b6 \u5728VSCode\u4e2d\u5b89\u88c5\u4ee5\u4e0b\u6269\u5c55\uff1a - Remote - SSH - Remote - SSH: Editing Configuration Files 3. \u914d\u7f6eSSH\u8fde\u63a5 \u00b6 \u6309 Ctrl+Shift+P \u6253\u5f00\u547d\u4ee4\u9762\u677f \u8f93\u5165 Remote-SSH: Connect to Host \u9009\u62e9 Configure SSH Hosts \u9009\u62e9\u914d\u7f6e\u6587\u4ef6\uff08\u901a\u5e38\u662f C:\\Users\\\u7528\u6237\u540d\\.ssh\\config \uff09 \u6dfb\u52a0\u4ee5\u4e0b\u914d\u7f6e\uff1a Host homeassistant HostName \u4f60\u7684HomeAssistant\u670d\u52a1\u5668IP User dtuser Port 22 4. \u8fde\u63a5\u5230\u670d\u52a1\u5668 \u00b6 \u5728VSCode\u4e2d\u6309 Ctrl+Shift+P \u8f93\u5165 Remote-SSH: Connect to Host \u9009\u62e9 homeassistant \u8f93\u5165\u670d\u52a1\u5668\u5bc6\u7801\u8fdb\u884c\u767b\u5f55 \u8fde\u63a5\u6210\u529f\u540e\uff0c\u6253\u5f00\u6587\u4ef6\u5939\uff1a /home/dtuser/opt/ha/config \u65b9\u6848\u4e09\uff1a\u4f7f\u7528SFTP\u5ba2\u6237\u7aef \u00b6 \u5982\u679cVSCode SSH\u6709\u95ee\u9898\uff0c\u53ef\u4ee5\u4f7f\u7528SFTP\u5ba2\u6237\u7aef\uff1a WinSCP \uff1a\u56fe\u5f62\u754c\u9762SFTP\u5ba2\u6237\u7aef FileZilla \uff1a\u652f\u6301SFTP\u534f\u8bae PuTTY + PSFTP \uff1a\u547d\u4ee4\u884c\u5de5\u5177 \u8fde\u63a5\u4fe1\u606f\uff1a \u534f\u8bae\uff1aSFTP \u4e3b\u673a\uff1a\u4f60\u7684\u670d\u52a1\u5668IP \u7aef\u53e3\uff1a22 \u7528\u6237\u540d\uff1adtuser \u5bc6\u7801\uff1a\uff08\u4f60\u7684\u670d\u52a1\u5668\u5bc6\u7801\uff09 \u63a8\u8350\u65b9\u6848 \u00b6 \u6700\u4f73\u5b9e\u8df5\u7ec4\u5408 \uff1a \u4f7f\u7528\u81ea\u52a8\u4fee\u590d\u811a\u672c\uff08\u65b9\u6848\u4e00\u7b2c5\u70b9\u65b9\u6cd5A\uff09- \u6700\u7b80\u5355\u9ad8\u6548 \u914d\u7f6eVSCode SSH\u8bbf\u95ee\u4f5c\u4e3a\u5907\u7528\u65b9\u6848\uff08\u65b9\u6848\u4e8c\uff09 \u8fd9\u6837\u65e2\u4e0d\u9700\u8981\u4fee\u6539compose\u6587\u4ef6\uff0c\u53c8\u63d0\u4f9b\u4e86\u81ea\u52a8\u5316\u548c\u624b\u52a8\u7684\u591a\u79cd\u8bbf\u95ee\u65b9\u5f0f\u3002 \u6545\u969c\u6392\u9664 \u00b6 Samba\u8bbf\u95ee\u95ee\u9898 \u00b6 \u68c0\u67e5\u9632\u706b\u5899\u662f\u5426\u963b\u6b62\u4e86445\u548c139\u7aef\u53e3 \u786e\u8ba4\u670d\u52a1\u5668IP\u5730\u5740\u6b63\u786e \u5c1d\u8bd5\u91cd\u542fSamba\u5bb9\u5668\uff1a docker restart samba SSH\u8bbf\u95ee\u95ee\u9898 \u00b6 \u68c0\u67e5SSH\u670d\u52a1\u72b6\u6001\uff1a sudo systemctl status ssh \u786e\u8ba4\u9632\u706b\u5899\u5141\u8bb822\u7aef\u53e3 \u68c0\u67e5SSH\u5bc6\u94a5\u6743\u9650\uff1a chmod 600 ~/.ssh/id_rsa \u7f51\u7edc\u8fde\u901a\u6027\u6d4b\u8bd5 \u00b6 # \u6d4b\u8bd5\u7aef\u53e3\u8fde\u901a\u6027 telnet \u670d\u52a1\u5668IP 445 # Samba telnet \u670d\u52a1\u5668IP 22 # SSH \u91cd\u8981\u63d0\u9192 \u4efb\u4f55\u5bf9HomeAssistant\u4e2d\u7684\u914d\u7f6e\u6587\u4ef6\u7684\u66f4\u6539\uff0c\u90fd\u9700\u8981\u91cd\u542fHomeAssistant\u624d\u80fd\u751f\u6548\u3002","title":"windows\u4e0d\u80fd\u8bbf\u95eeHA\u7684\u5171\u4eab\u914d\u7f6e\u76ee\u5f55\u7684\u89e3\u51b3\u529e\u6cd5"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#win1110sambavscode-ssh","text":"","title":"Win11/10\u8bbf\u95eeSamba\u5171\u4eab\u548cVSCode SSH\u8bbf\u95ee\u89e3\u51b3\u65b9\u6848"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#_1","text":"Docker\u5b89\u88c5\u7684HomeAssistant\u4f7f\u7528Samba\u5171\u4eab\u914d\u7f6e\u76ee\u5f55\uff0c\u4f46Win11/10\u6709\u65f6\u65e0\u6cd5\u6b63\u5e38\u8bbf\u95ee\u65e0\u5bc6\u7801\u7684Samba\u5171\u4eab\u3002","title":"\u95ee\u9898\u63cf\u8ff0"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#_2","text":"","title":"\u89e3\u51b3\u65b9\u6848"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#win1110-samba","text":"","title":"\u65b9\u6848\u4e00\uff1a\u4fee\u590dWin11/10 Samba\u8bbf\u95ee\u95ee\u9898"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#1-smb10","text":"# \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884cPowerShell Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol","title":"1. \u542f\u7528SMB1.0\u534f\u8bae\uff08\u4e0d\u63a8\u8350\uff0c\u5b89\u5168\u6027\u8f83\u4f4e\uff09"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#2","text":"\u6309 Win+R \u6253\u5f00\u8fd0\u884c\u5bf9\u8bdd\u6846\uff0c\u8f93\u5165 gpedit.msc \u5bfc\u822a\u5230\uff1a \u8ba1\u7b97\u673a\u914d\u7f6e > Windows\u8bbe\u7f6e > \u5b89\u5168\u8bbe\u7f6e > \u672c\u5730\u7b56\u7565 > \u5b89\u5168\u9009\u9879 \u627e\u5230\u5e76\u4fee\u6539\u4ee5\u4e0b\u7b56\u7565\uff1a \u7f51\u7edc\u5b89\u5168: LAN Manager\u8eab\u4efd\u9a8c\u8bc1\u7ea7\u522b \u8bbe\u7f6e\u4e3a \u53d1\u9001LM\u548cNTLM\u54cd\u5e94 \u7f51\u7edc\u5b89\u5168: \u5bf9\u4e8eNTLM SSP(\u5305\u62ec\u5b89\u5168RPC)\u7684\u6700\u5c0f\u4f1a\u8bdd\u5b89\u5168 \u8bbe\u7f6e\u4e3a \u65e0\u8981\u6c42","title":"2. \u4fee\u6539\u672c\u5730\u5b89\u5168\u7b56\u7565\uff08\u63a8\u8350\uff09"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#3","text":"# \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884ccmd reg add HKLM\\SYSTEM\\CurrentControlSet\\Services\\lanmanserver\\parameters /v RequireSecuritySignature /t REG_DWORD /d 0 /f reg add HKLM\\SYSTEM\\CurrentControlSet\\Services\\lanmanworkstation\\parameters /v RequireSecuritySignature /t REG_DWORD /d 0 /f reg add HKLM\\SYSTEM\\CurrentControlSet\\Services\\lanmanworkstation\\parameters /v EnableSecuritySignature /t REG_DWORD /d 0 /f","title":"3. \u4fee\u6539\u6ce8\u518c\u8868\uff08\u9ad8\u7ea7\u7528\u6237\uff09"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#4","text":"\u6253\u5f00 \u63a7\u5236\u9762\u677f > \u7528\u6237\u8d26\u6237 > \u51ed\u636e\u7ba1\u7406\u5668 \u9009\u62e9 Windows\u51ed\u636e \u70b9\u51fb \u6dfb\u52a0Windows\u51ed\u636e \u8f93\u5165\uff1a \u4e92\u8054\u7f51\u6216\u7f51\u7edc\u5730\u5740\uff1a \\\\\u4f60\u7684\u670d\u52a1\u5668IP \u7528\u6237\u540d\uff1a\u7559\u7a7a\u6216\u8f93\u5165 guest \u5bc6\u7801\uff1a\u7559\u7a7a","title":"4. \u6dfb\u52a0\u7f51\u7edc\u51ed\u636e"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#5-windows","text":"\u7531\u4e8ecompose-all.yaml\u6587\u4ef6\u4e0d\u80fd\u4fee\u6539\uff0c\u6211\u4eec\u901a\u8fc7Windows\u5ba2\u6237\u7aef\u914d\u7f6e\u6765\u89e3\u51b3\u8bbf\u95ee\u95ee\u9898\uff1a \u65b9\u6cd5A\uff1a\u81ea\u52a8\u4fee\u590d\u811a\u672c\uff08\u6700\u63a8\u8350\uff09 \u6211\u4eec\u63d0\u4f9b\u4e86\u4e00\u4e2aPowerShell\u81ea\u52a8\u4fee\u590d\u811a\u672c\uff0c\u53ef\u4ee5\u4e00\u952e\u5b8c\u6210\u6240\u6709\u914d\u7f6e\uff1a \u89c2\u770b\u89c6\u9891\uff1a\u4fee\u590d Windows SMB \u9519\u8bef \u4fee\u590dWindows SMB \u9519\u8bef\u811a\u672c\u4e0b\u8f7d\u5730\u5740 \uff1a http://datacdn.data-it.tech/HomeAssistant/tools/fixwindows.ps1 \u4e0b\u8f7d\u811a\u672c\u6587\u4ef6 fixwindows.ps1 curl -o fixwindows.ps1 http://datacdn.data-it.tech/HomeAssistant/tools/fixwindows.ps1 \u5c06\u811a\u672c\u4fdd\u5b58\u5230\u672c\u5730\uff08\u5982c\u76d8\u7684\u6839\u76ee\u5f55\uff09 \u53f3\u952e\u70b9\u51fb\u811a\u672c\uff0c\u9009\u62e9\"\u4f7f\u7528PowerShell\u8fd0\u884c\" \u9009\u62e9\"\u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884c\" # \u5982\u679c\u63d0\u793a\u7981\u6b62\u8fd0\u884c\u811a\u672c\uff0c\u8bf7\u5148\u6267\u884c\u5982\u4e0b\u6307\u4ee4\u540e\uff0c\u518d\u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884c Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process #\u7136\u540e\u518d\u8fd0\u884c\u811a\u672c .\\fixwindows.ps1 \u6309\u63d0\u793a\u8f93\u5165\u670d\u52a1\u5668IP\u5730\u5740 \u4f7f\u7528\u65b9\u6cd5\uff1a # \u65b9\u5f0f1\uff1a\u76f4\u63a5\u8fd0\u884c\uff08\u4ea4\u4e92\u5f0f\u8f93\u5165IP\uff09 .\\ fixwindows . ps1 # \u65b9\u5f0f2\uff1a\u5e26\u53c2\u6570\u8fd0\u884c .\\ fixwindows . ps1 -ServerIP \"192.168.1.100\" # \u65b9\u5f0f3\uff1a\u5b8c\u6574\u53c2\u6570 .\\ fixwindows . ps1 -ServerIP \"192.168.1.100\" -ShareName \"HAConfig\" -DriveLetter \"Z\" \u811a\u672c\u529f\u80fd\uff1a \u81ea\u52a8\u4fee\u6539\u6ce8\u518c\u8868\u8bbe\u7f6e \u8c03\u6574Windows\u5b89\u5168\u7b56\u7565 \u5efa\u7acbSamba\u8fde\u63a5\u5e76\u6620\u5c04\u9a71\u52a8\u5668 \u6d4b\u8bd5\u8fde\u63a5\u72b6\u6001 \u53ef\u9009\u521b\u5efa\u684c\u9762\u5feb\u6377\u65b9\u5f0f \u65b9\u6cd5B\uff1a\u901a\u8fc7\u6620\u5c04\u7f51\u7edc\u9a71\u52a8\u5668 \u6253\u5f00\u6587\u4ef6\u8d44\u6e90\u7ba1\u7406\u5668 \u53f3\u952e\u70b9\u51fb\"\u6b64\u7535\u8111\"\uff0c\u9009\u62e9\"\u6620\u5c04\u7f51\u7edc\u9a71\u52a8\u5668\" \u9a71\u52a8\u5668\u9009\u62e9\u4e00\u4e2a\u53ef\u7528\u76d8\u7b26\uff08\u5982Z:\uff09 \u6587\u4ef6\u5939\u8f93\u5165\uff1a \\\\\u4f60\u7684\u670d\u52a1\u5668IP\\HAConfig \u53d6\u6d88\u52fe\u9009 \"\u767b\u5f55\u65f6\u91cd\u65b0\u8fde\u63a5\" \u70b9\u51fb\"\u4f7f\u7528\u5176\u4ed6\u51ed\u636e\u8fde\u63a5\" \u7528\u6237\u540d\u7559\u7a7a\u6216\u8f93\u5165 guest \uff0c\u5bc6\u7801\u7559\u7a7a \u52fe\u9009\"\u8bb0\u4f4f\u6211\u7684\u51ed\u636e\" \u65b9\u6cd5C\uff1a\u901a\u8fc7\u547d\u4ee4\u884c\u5f3a\u5236\u8fde\u63a5 \u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884ccmd\uff0c\u6267\u884c\uff1a net use \\\\\u4f60\u7684\u670d\u52a1\u5668IP\\HAConfig \"\" /user:\"\" \u65b9\u6cd5D\uff1a\u4fee\u6539Windows\u672c\u5730\u7ec4\u7b56\u7565 \u8fd0\u884c gpedit.msc \u5bfc\u822a\u5230\uff1a \u8ba1\u7b97\u673a\u914d\u7f6e > Windows\u8bbe\u7f6e > \u5b89\u5168\u8bbe\u7f6e > \u672c\u5730\u7b56\u7565 > \u5b89\u5168\u9009\u9879 \u4fee\u6539\uff1a \u7f51\u7edc\u5b89\u5168: \u5bf9\u533f\u540dSID/\u540d\u79f0\u7ffb\u8bd1\u7684\u9650\u5236 \u8bbe\u7f6e\u4e3a \u65e0 \u4fee\u6539\uff1a \u7f51\u7edc\u8bbf\u95ee: \u4e0d\u5141\u8bb8SAM\u8d26\u6237\u7684\u533f\u540d\u679a\u4e3e \u8bbe\u7f6e\u4e3a \u5df2\u7981\u7528","title":"5. \u4f7f\u7528Windows\u5ba2\u6237\u7aef\u5f3a\u5236\u65e0\u5bc6\u7801\u8bbf\u95ee\uff08\u63a8\u8350\u89e3\u51b3\u65b9\u6848\uff09"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#vscode-sshhomeassistant","text":"","title":"\u65b9\u6848\u4e8c\uff1a\u4f7f\u7528VSCode SSH\u8bbf\u95eeHomeAssistant\u6302\u8f7d\u76ee\u5f55"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#1-ssh","text":"\u5728HomeAssistant\u4e3b\u673a\u4e0a\u786e\u4fddSSH\u670d\u52a1\u5df2\u542f\u52a8\uff1a # \u68c0\u67e5SSH\u670d\u52a1\u72b6\u6001 sudo systemctl status ssh # \u5982\u679c\u672a\u542f\u52a8\uff0c\u542f\u7528\u5e76\u542f\u52a8SSH sudo systemctl enable ssh sudo systemctl start ssh","title":"1. \u786e\u4fddSSH\u670d\u52a1\u8fd0\u884c"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#2-vscode","text":"\u5728VSCode\u4e2d\u5b89\u88c5\u4ee5\u4e0b\u6269\u5c55\uff1a - Remote - SSH - Remote - SSH: Editing Configuration Files","title":"2. \u5b89\u88c5VSCode\u6269\u5c55"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#3-ssh","text":"\u6309 Ctrl+Shift+P \u6253\u5f00\u547d\u4ee4\u9762\u677f \u8f93\u5165 Remote-SSH: Connect to Host \u9009\u62e9 Configure SSH Hosts \u9009\u62e9\u914d\u7f6e\u6587\u4ef6\uff08\u901a\u5e38\u662f C:\\Users\\\u7528\u6237\u540d\\.ssh\\config \uff09 \u6dfb\u52a0\u4ee5\u4e0b\u914d\u7f6e\uff1a Host homeassistant HostName \u4f60\u7684HomeAssistant\u670d\u52a1\u5668IP User dtuser Port 22","title":"3. \u914d\u7f6eSSH\u8fde\u63a5"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#4_1","text":"\u5728VSCode\u4e2d\u6309 Ctrl+Shift+P \u8f93\u5165 Remote-SSH: Connect to Host \u9009\u62e9 homeassistant \u8f93\u5165\u670d\u52a1\u5668\u5bc6\u7801\u8fdb\u884c\u767b\u5f55 \u8fde\u63a5\u6210\u529f\u540e\uff0c\u6253\u5f00\u6587\u4ef6\u5939\uff1a /home/dtuser/opt/ha/config","title":"4. \u8fde\u63a5\u5230\u670d\u52a1\u5668"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#sftp","text":"\u5982\u679cVSCode SSH\u6709\u95ee\u9898\uff0c\u53ef\u4ee5\u4f7f\u7528SFTP\u5ba2\u6237\u7aef\uff1a WinSCP \uff1a\u56fe\u5f62\u754c\u9762SFTP\u5ba2\u6237\u7aef FileZilla \uff1a\u652f\u6301SFTP\u534f\u8bae PuTTY + PSFTP \uff1a\u547d\u4ee4\u884c\u5de5\u5177 \u8fde\u63a5\u4fe1\u606f\uff1a \u534f\u8bae\uff1aSFTP \u4e3b\u673a\uff1a\u4f60\u7684\u670d\u52a1\u5668IP \u7aef\u53e3\uff1a22 \u7528\u6237\u540d\uff1adtuser \u5bc6\u7801\uff1a\uff08\u4f60\u7684\u670d\u52a1\u5668\u5bc6\u7801\uff09","title":"\u65b9\u6848\u4e09\uff1a\u4f7f\u7528SFTP\u5ba2\u6237\u7aef"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#_3","text":"\u6700\u4f73\u5b9e\u8df5\u7ec4\u5408 \uff1a \u4f7f\u7528\u81ea\u52a8\u4fee\u590d\u811a\u672c\uff08\u65b9\u6848\u4e00\u7b2c5\u70b9\u65b9\u6cd5A\uff09- \u6700\u7b80\u5355\u9ad8\u6548 \u914d\u7f6eVSCode SSH\u8bbf\u95ee\u4f5c\u4e3a\u5907\u7528\u65b9\u6848\uff08\u65b9\u6848\u4e8c\uff09 \u8fd9\u6837\u65e2\u4e0d\u9700\u8981\u4fee\u6539compose\u6587\u4ef6\uff0c\u53c8\u63d0\u4f9b\u4e86\u81ea\u52a8\u5316\u548c\u624b\u52a8\u7684\u591a\u79cd\u8bbf\u95ee\u65b9\u5f0f\u3002","title":"\u63a8\u8350\u65b9\u6848"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#_4","text":"","title":"\u6545\u969c\u6392\u9664"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#samba","text":"\u68c0\u67e5\u9632\u706b\u5899\u662f\u5426\u963b\u6b62\u4e86445\u548c139\u7aef\u53e3 \u786e\u8ba4\u670d\u52a1\u5668IP\u5730\u5740\u6b63\u786e \u5c1d\u8bd5\u91cd\u542fSamba\u5bb9\u5668\uff1a docker restart samba","title":"Samba\u8bbf\u95ee\u95ee\u9898"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#ssh","text":"\u68c0\u67e5SSH\u670d\u52a1\u72b6\u6001\uff1a sudo systemctl status ssh \u786e\u8ba4\u9632\u706b\u5899\u5141\u8bb822\u7aef\u53e3 \u68c0\u67e5SSH\u5bc6\u94a5\u6743\u9650\uff1a chmod 600 ~/.ssh/id_rsa","title":"SSH\u8bbf\u95ee\u95ee\u9898"},{"location":"Usages/QA/windows%E4%B8%8D%E8%83%BD%E8%AE%BF%E9%97%AEHA%E7%9A%84%E5%85%B1%E4%BA%AB%E9%85%8D%E7%BD%AE%E7%9B%AE%E5%BD%95%E7%9A%84%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95/#_5","text":"# \u6d4b\u8bd5\u7aef\u53e3\u8fde\u901a\u6027 telnet \u670d\u52a1\u5668IP 445 # Samba telnet \u670d\u52a1\u5668IP 22 # SSH \u91cd\u8981\u63d0\u9192 \u4efb\u4f55\u5bf9HomeAssistant\u4e2d\u7684\u914d\u7f6e\u6587\u4ef6\u7684\u66f4\u6539\uff0c\u90fd\u9700\u8981\u91cd\u542fHomeAssistant\u624d\u80fd\u751f\u6548\u3002","title":"\u7f51\u7edc\u8fde\u901a\u6027\u6d4b\u8bd5"},{"location":"Usages/QA/%E5%9F%BA%E4%BA%8EDocker%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85HomeAssistant/","text":"\u57fa\u4e8eDocker\u7684\u65b9\u5f0f\u5b89\u88c5HomeAssistant \u00b6 HomeAssistant\u57fa\u4e8eDocker\u5bb9\u5668\u6280\u672f\uff0c\u53ef\u4ee5\u5feb\u901f\u90e8\u7f72\u548c\u7ba1\u7406.\u5e76\u53ef\u4e0e\u5176\u5b83\u4e3b\u673a\u6216\u670d\u52a1\u5668\u5171\u7528\uff0c\u6709\u6548\u8282\u7701\u8d44\u6e90\u3002 \u4f46Docker\u5bb9\u5668\u6280\u672f\u5bf9\u7cfb\u7edf\u8d44\u6e90\u6709\u4e00\u5b9a\u8981\u6c42\uff0c\u4e14\u5bf9\u7f51\u7edc\u73af\u5883\u6709\u4f9d\u8d56\u3002\u5e76\u4e14\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u5728\u5168\u65ad\u7f51\u5b8c\u5168\u5168\u79bb\u7ebf\u7684\u60c5\u51b5\u4e0b\u90e8\u7f72\u3002 \u56e0\u6b64\uff0c\u624d\u6709\u4e86\u672c\u6587\u6863\u3002 \u5b89\u88c5\u51c6\u5907 \u00b6 \u4e3a\u4e86\u80fd\u5728\u4efb\u610f\u4e3b\u673a\u4e0a\u7528Docker\u5feb\u901f\u5b89\u88c5HomeAssistant\uff0c\u5efa\u8bae\u63d0\u524d\u51c6\u5907\u597dDocker\u73af\u5883\uff0c\u4f46Docker\u5b98\u7f51\u88ab\u5c01\u9501\uff0c\u5bfc\u81f4Docker\u7684\u5b89\u88c5\uff0c\u53ca\u955c\u50cf\u7684\u62c9\u53d6\u90fd\u6781\u4e3a\u56f0\u96be\u3002\u56e0\u6b64\uff0c\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u65b9\u5f0f\u5b89\u88c5Docker\u53caDocker Compose\uff1a \u5b89\u88c5Docker\u57fa\u7840\u73af\u5883-\u652f\u6301\u79bb\u7ebf\u5b89\u88c5 \u5b89\u88c5\u65b9\u5f0f \u00b6 HKO \u5728\u7ebf\u5b89\u88c5 \u79bb\u7ebf\u5b89\u88c5 \u670d\u52a1\u8bbf\u95ee\u5730\u5740\uff1a \u00b6 Home Assistant: http://$(\u4e3b\u673aIP):8123 Node-RED: http://$(\u4e3b\u673aIP):1880 Mosquitto MQTT: http://$(\u4e3b\u673aIP):1883 PostgreSQL: http://$(\u4e3b\u673aIP):5432 Samba: //$(\u4e3b\u673aIP)/HAConfig portainer: http://$(\u4e3b\u673aIP):9000 \u4f7f\u7528\u8bf4\u660e \u00b6 \u56e0\u4e3a\u4f7f\u7528\u4e86Docker\u5bb9\u5668\u6280\u672f\uff0c\u6240\u4ee5HomeAssistant\u7684\u52a0\u8f7d\u9879\u662f\u6ca1\u6709\u7684\uff0c\u5b98\u65b9\u5bf9Docker\u4e0d\u63d0\u4f9b\u52a0\u8f7d\u9879\u529f\u80fd\uff0c\u4e5f\u6ca1\u529e\u5b89\u88c5\u4e0b\u3002 \u6240\u4ee5\u4f5c\u4e3a\u66ff\u4ee3\uff0c\u6211\u4eec\u628a\u52a0\u8f7d\u9879\u4e2d\u6700\u91cd\u8981\u8981\u7684\u51e0\u4e2a\u63d2\u4ef6\u90fd\u4ee5docker\u7684\u65b9\u5f0f\u5355\u72ec\u63d0\u4f9b\uff0c\u5e76\u80fd\u4e0eHomeAssistant\u76f8\u4e92\u914d\u5408\u5de5\u4f5c\uff0c\u5b83\u4eec\u662f Node-RED, Mosquitto MQTT, PostgreSQL, Samba\u7b49\u3002 \u672c\u6587\u63d0\u4f9b\u7684HomeAssistant\u662f\u81ea\u5df2\u91cd\u65b0\u6253\u5305\u7684docker\u96c6\u6210\u4e86HACS\uff0c\u53ca\u4e00\u4e9b\u65b0\u5b89\u5e38\u7528\u7684\u4e3b\u9898UI\u98ce\u683c\uff0c\u548c\u5c0f\u7c73HOME\u96c6\u6210\u7b49\u3002\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u65e0\u9700\u518d\u5b89\u88c5\u6b64\u7c7b\u63d2\u4ef6\u3002 HomeAssistant\u5df2\u914d\u7f6e\u9ed8\u8ba4\u4f7f\u7528\u5bb9\u5668\u63d0\u4f9b\u7684pgsql\u6570\u636e\u5e93\u6765\u5b58\u50a8\u6570\u636e\uff0c\u5e76\u8bbe\u5b9a\u4e865\u5929\u53ef\u80fd\u81ea\u52a8\u6e05\u9664\u6570\u636e\uff0c\u5bb9\u5668\u5185\u7684\u65e5\u5fd7\uff0c\u4fdd\u7559\u7f6e\u4e09\u5929\u3002 \u56e0\u4e3a\u4f7f\u4f7f\u7528\u4e86Docker\u5bb9\u5668\u6280\u672f\uff0c\u6240\u4ee5HomeAssistant\u7684\u914d\u7f6e\u6587\u4ef6\u662f\u5b58\u653e\u5728\u4e3b\u673a\u7684 /dt_opt/ha/config \u76ee\u5f55\u4e0b\uff0c\u53ef\u4ee5\u901a\u8fc7Samba\u5171\u4eab\u8bbf\u95ee\u6b64\u76ee\u5f55\uff0c\u6216\u76f4\u63a5\u5728\u4e3b\u673a\u4e0a\u8bbf\u95ee\u6b64\u76ee\u5f55\u6765\u7ba1\u7406\u914d\u7f6e\u6587\u4ef6\u3002\u5728HomeAssistant\u4e2d\uff0c\u4e0d\u5728\u6709FileEditor\u63d2\u4ef6\u4e86,\u56e0\u6b64\u53ea\u80fd\u4f7f\u7528\u5171\u4eab\u6587\u4ef6\u5939\u6765\u7ba1\u7406\u914d\u7f6e\u6587\u4ef6\u3002 \u767b\u5f55\u4fe1\u606f \u00b6 Home Assistant: http://$(\u4e3b\u673aIP):8123 \u7528\u6237\u540d:admin \u5bc6\u7801:Dtuse1r Node-RED: http://$(\u4e3b\u673aIP):1880 \u65e0\u7528\u6237\u540d Mosquitto MQTT: http://$(\u4e3b\u673aIP):1883 \u7528\u6237\u540d:dtuser \u5bc6\u7801:Dtuse1r PostgreSQL: http://$(\u4e3b\u673aIP):5432 \u6570\u636e\u5e93\u540d:dtha \u7528\u6237\u540d:dtuser \u5bc6\u7801:Dtuse1r Samba: //$(\u4e3b\u673aIP)/HAConfig \u65e0\u9700\u8981\u5bc6\u7801\u5373\u53ef\u8bbf\u95ee portainer: http://$(\u4e3b\u673aIP):9000 \u7528\u6237\u540d:admin \u5bc6\u7801:Dtuse1r_abcd \u8bf4\u660e \u00b6 \u5173\u4e8eSamba(\u5171\u4eab\u76ee\u5f55\u8bbf\u95ee\u914d\u7f6e\u76ee\u5f55) Windows \u7aef\u8bbf\u95ee\u65f6\uff0c\u8f93\u5165\u6b63\u786e\u7684\u7528\u6237\u540d\u548c\u5bc6\u7801\u3002\u56e0\u672c\u670d\u52a1\u914d\u7f6e\u4e86\u5141\u8bb8guest\u8bbf\u95ee\uff0c\u6240\u4ee5\u53ef\u76f4\u63a5\u8bbf\u95ee,\u800c\u65e0\u987b\u7528\u6237\u540d\u4e0e\u5bc6\u7801\u3002\u4f46\u662f\u5bf9\u4e8ewindows10/11,\u6709\u53ef\u80fd\u4f1a\u53cd\u590d\u8981\u6c42\u8f93\u5165\u5bc6\u7801\u800c\u65e0\u6cd5\u8bbf\u95ee\uff0c\u662f\u56e0\u4e3a\u5b89\u5168\u7b56\u7565\u95ee\u9898\uff0c\u53ef\u5728 Windows \u672c\u5730\u7ec4\u7b56\u7565\u4e2d\u8c03\u6574\uff1a \u6253\u5f00\u201c\u672c\u5730\u7ec4\u7b56\u7565\u7f16\u8f91\u5668\u201d\uff08gpedit.msc\uff09\uff0c\u8ba1\u7b97\u673a\u914d\u7f6e \u2192 \u7ba1\u7406\u6a21\u677f \u2192 \u7f51\u7edc \u2192 Lanman\u5de5\u4f5c\u7ad9\uff0c\u542f\u7528\u201c\u542f\u7528\u4e0d\u5b89\u5168\u7684\u6765\u5bbe\u767b\u5f55\u201d\u3002\u542f\u7528\u540e\uff0c\u5373\u53ef\u6b63\u5e38\u8bbf\u95ee\u6b64\u5171\u4eab\u7684\u914d\u7f6e\u76ee\u5f55\u3002 \u5982\u4e0b\u56fe\u662f\u4ee5\u5171\u4eab\u7684\u65b9\u5f0f\u8bbf\u95ee\u914d\u7f6e\u76ee\u5f55\uff1a \u5171\u4eab\u76ee\u5f55\u8bbf\u95ee\u5931\u8d25\u7684\u89e3\u51b3\u529e\u6cd5 windows\u4e0d\u80fd\u8bbf\u95eeHA\u7684\u5171\u4eab\u914d\u7f6e\u76ee\u5f55\u7684\u89e3\u51b3\u529e\u6cd5 \u5173\u4e8eportainer(\u56fe\u578b\u5316Docker\u7ba1\u7406\u5de5\u5177) Portainer \u662f\u4e00\u4e2a\u8f7b\u91cf\u7ea7\u7684\u7ba1\u7406UI\uff0c\u53ef\u4ee5\u8ba9\u4f60\u66f4\u5bb9\u6613\u5730\u7ba1\u7406Docker\u5bb9\u5668\u3002\u901a\u8fc7Portainer\uff0c\u4f60\u53ef\u4ee5\u8f7b\u677e\u5730\u521b\u5efa\u3001\u7ba1\u7406\u548c\u76d1\u63a7Docker\u5bb9\u5668\uff0c\u67e5\u770b\u5bb9\u5668\u65e5\u5fd7\uff0c\u7ba1\u7406Docker\u955c\u50cf\u7b49\u3002Portainer\u7684Web\u754c\u9762\u53cb\u597d\uff0c\u9002\u5408Docker\u65b0\u624b\u548c\u9700\u8981\u5feb\u901f\u7ba1\u7406Docker\u73af\u5883\u7684\u7528\u6237\u3002 \u5982\u4e0b\u56fe\u6240\u793a\uff1a","title":"\u57fa\u4e8eDocker\u7684\u65b9\u5f0f\u5b89\u88c5HomeAssistant"},{"location":"Usages/QA/%E5%9F%BA%E4%BA%8EDocker%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85HomeAssistant/#dockerhomeassistant","text":"HomeAssistant\u57fa\u4e8eDocker\u5bb9\u5668\u6280\u672f\uff0c\u53ef\u4ee5\u5feb\u901f\u90e8\u7f72\u548c\u7ba1\u7406.\u5e76\u53ef\u4e0e\u5176\u5b83\u4e3b\u673a\u6216\u670d\u52a1\u5668\u5171\u7528\uff0c\u6709\u6548\u8282\u7701\u8d44\u6e90\u3002 \u4f46Docker\u5bb9\u5668\u6280\u672f\u5bf9\u7cfb\u7edf\u8d44\u6e90\u6709\u4e00\u5b9a\u8981\u6c42\uff0c\u4e14\u5bf9\u7f51\u7edc\u73af\u5883\u6709\u4f9d\u8d56\u3002\u5e76\u4e14\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u5728\u5168\u65ad\u7f51\u5b8c\u5168\u5168\u79bb\u7ebf\u7684\u60c5\u51b5\u4e0b\u90e8\u7f72\u3002 \u56e0\u6b64\uff0c\u624d\u6709\u4e86\u672c\u6587\u6863\u3002","title":"\u57fa\u4e8eDocker\u7684\u65b9\u5f0f\u5b89\u88c5HomeAssistant"},{"location":"Usages/QA/%E5%9F%BA%E4%BA%8EDocker%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85HomeAssistant/#_1","text":"\u4e3a\u4e86\u80fd\u5728\u4efb\u610f\u4e3b\u673a\u4e0a\u7528Docker\u5feb\u901f\u5b89\u88c5HomeAssistant\uff0c\u5efa\u8bae\u63d0\u524d\u51c6\u5907\u597dDocker\u73af\u5883\uff0c\u4f46Docker\u5b98\u7f51\u88ab\u5c01\u9501\uff0c\u5bfc\u81f4Docker\u7684\u5b89\u88c5\uff0c\u53ca\u955c\u50cf\u7684\u62c9\u53d6\u90fd\u6781\u4e3a\u56f0\u96be\u3002\u56e0\u6b64\uff0c\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u65b9\u5f0f\u5b89\u88c5Docker\u53caDocker Compose\uff1a \u5b89\u88c5Docker\u57fa\u7840\u73af\u5883-\u652f\u6301\u79bb\u7ebf\u5b89\u88c5","title":"\u5b89\u88c5\u51c6\u5907"},{"location":"Usages/QA/%E5%9F%BA%E4%BA%8EDocker%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85HomeAssistant/#_2","text":"HKO \u5728\u7ebf\u5b89\u88c5 \u79bb\u7ebf\u5b89\u88c5","title":"\u5b89\u88c5\u65b9\u5f0f"},{"location":"Usages/QA/%E5%9F%BA%E4%BA%8EDocker%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85HomeAssistant/#_3","text":"Home Assistant: http://$(\u4e3b\u673aIP):8123 Node-RED: http://$(\u4e3b\u673aIP):1880 Mosquitto MQTT: http://$(\u4e3b\u673aIP):1883 PostgreSQL: http://$(\u4e3b\u673aIP):5432 Samba: //$(\u4e3b\u673aIP)/HAConfig portainer: http://$(\u4e3b\u673aIP):9000","title":"\u670d\u52a1\u8bbf\u95ee\u5730\u5740\uff1a"},{"location":"Usages/QA/%E5%9F%BA%E4%BA%8EDocker%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85HomeAssistant/#_4","text":"\u56e0\u4e3a\u4f7f\u7528\u4e86Docker\u5bb9\u5668\u6280\u672f\uff0c\u6240\u4ee5HomeAssistant\u7684\u52a0\u8f7d\u9879\u662f\u6ca1\u6709\u7684\uff0c\u5b98\u65b9\u5bf9Docker\u4e0d\u63d0\u4f9b\u52a0\u8f7d\u9879\u529f\u80fd\uff0c\u4e5f\u6ca1\u529e\u5b89\u88c5\u4e0b\u3002 \u6240\u4ee5\u4f5c\u4e3a\u66ff\u4ee3\uff0c\u6211\u4eec\u628a\u52a0\u8f7d\u9879\u4e2d\u6700\u91cd\u8981\u8981\u7684\u51e0\u4e2a\u63d2\u4ef6\u90fd\u4ee5docker\u7684\u65b9\u5f0f\u5355\u72ec\u63d0\u4f9b\uff0c\u5e76\u80fd\u4e0eHomeAssistant\u76f8\u4e92\u914d\u5408\u5de5\u4f5c\uff0c\u5b83\u4eec\u662f Node-RED, Mosquitto MQTT, PostgreSQL, Samba\u7b49\u3002 \u672c\u6587\u63d0\u4f9b\u7684HomeAssistant\u662f\u81ea\u5df2\u91cd\u65b0\u6253\u5305\u7684docker\u96c6\u6210\u4e86HACS\uff0c\u53ca\u4e00\u4e9b\u65b0\u5b89\u5e38\u7528\u7684\u4e3b\u9898UI\u98ce\u683c\uff0c\u548c\u5c0f\u7c73HOME\u96c6\u6210\u7b49\u3002\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u65e0\u9700\u518d\u5b89\u88c5\u6b64\u7c7b\u63d2\u4ef6\u3002 HomeAssistant\u5df2\u914d\u7f6e\u9ed8\u8ba4\u4f7f\u7528\u5bb9\u5668\u63d0\u4f9b\u7684pgsql\u6570\u636e\u5e93\u6765\u5b58\u50a8\u6570\u636e\uff0c\u5e76\u8bbe\u5b9a\u4e865\u5929\u53ef\u80fd\u81ea\u52a8\u6e05\u9664\u6570\u636e\uff0c\u5bb9\u5668\u5185\u7684\u65e5\u5fd7\uff0c\u4fdd\u7559\u7f6e\u4e09\u5929\u3002 \u56e0\u4e3a\u4f7f\u4f7f\u7528\u4e86Docker\u5bb9\u5668\u6280\u672f\uff0c\u6240\u4ee5HomeAssistant\u7684\u914d\u7f6e\u6587\u4ef6\u662f\u5b58\u653e\u5728\u4e3b\u673a\u7684 /dt_opt/ha/config \u76ee\u5f55\u4e0b\uff0c\u53ef\u4ee5\u901a\u8fc7Samba\u5171\u4eab\u8bbf\u95ee\u6b64\u76ee\u5f55\uff0c\u6216\u76f4\u63a5\u5728\u4e3b\u673a\u4e0a\u8bbf\u95ee\u6b64\u76ee\u5f55\u6765\u7ba1\u7406\u914d\u7f6e\u6587\u4ef6\u3002\u5728HomeAssistant\u4e2d\uff0c\u4e0d\u5728\u6709FileEditor\u63d2\u4ef6\u4e86,\u56e0\u6b64\u53ea\u80fd\u4f7f\u7528\u5171\u4eab\u6587\u4ef6\u5939\u6765\u7ba1\u7406\u914d\u7f6e\u6587\u4ef6\u3002","title":"\u4f7f\u7528\u8bf4\u660e"},{"location":"Usages/QA/%E5%9F%BA%E4%BA%8EDocker%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85HomeAssistant/#_5","text":"Home Assistant: http://$(\u4e3b\u673aIP):8123 \u7528\u6237\u540d:admin \u5bc6\u7801:Dtuse1r Node-RED: http://$(\u4e3b\u673aIP):1880 \u65e0\u7528\u6237\u540d Mosquitto MQTT: http://$(\u4e3b\u673aIP):1883 \u7528\u6237\u540d:dtuser \u5bc6\u7801:Dtuse1r PostgreSQL: http://$(\u4e3b\u673aIP):5432 \u6570\u636e\u5e93\u540d:dtha \u7528\u6237\u540d:dtuser \u5bc6\u7801:Dtuse1r Samba: //$(\u4e3b\u673aIP)/HAConfig \u65e0\u9700\u8981\u5bc6\u7801\u5373\u53ef\u8bbf\u95ee portainer: http://$(\u4e3b\u673aIP):9000 \u7528\u6237\u540d:admin \u5bc6\u7801:Dtuse1r_abcd","title":"\u767b\u5f55\u4fe1\u606f"},{"location":"Usages/QA/%E5%9F%BA%E4%BA%8EDocker%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85HomeAssistant/#_6","text":"\u5173\u4e8eSamba(\u5171\u4eab\u76ee\u5f55\u8bbf\u95ee\u914d\u7f6e\u76ee\u5f55) Windows \u7aef\u8bbf\u95ee\u65f6\uff0c\u8f93\u5165\u6b63\u786e\u7684\u7528\u6237\u540d\u548c\u5bc6\u7801\u3002\u56e0\u672c\u670d\u52a1\u914d\u7f6e\u4e86\u5141\u8bb8guest\u8bbf\u95ee\uff0c\u6240\u4ee5\u53ef\u76f4\u63a5\u8bbf\u95ee,\u800c\u65e0\u987b\u7528\u6237\u540d\u4e0e\u5bc6\u7801\u3002\u4f46\u662f\u5bf9\u4e8ewindows10/11,\u6709\u53ef\u80fd\u4f1a\u53cd\u590d\u8981\u6c42\u8f93\u5165\u5bc6\u7801\u800c\u65e0\u6cd5\u8bbf\u95ee\uff0c\u662f\u56e0\u4e3a\u5b89\u5168\u7b56\u7565\u95ee\u9898\uff0c\u53ef\u5728 Windows \u672c\u5730\u7ec4\u7b56\u7565\u4e2d\u8c03\u6574\uff1a \u6253\u5f00\u201c\u672c\u5730\u7ec4\u7b56\u7565\u7f16\u8f91\u5668\u201d\uff08gpedit.msc\uff09\uff0c\u8ba1\u7b97\u673a\u914d\u7f6e \u2192 \u7ba1\u7406\u6a21\u677f \u2192 \u7f51\u7edc \u2192 Lanman\u5de5\u4f5c\u7ad9\uff0c\u542f\u7528\u201c\u542f\u7528\u4e0d\u5b89\u5168\u7684\u6765\u5bbe\u767b\u5f55\u201d\u3002\u542f\u7528\u540e\uff0c\u5373\u53ef\u6b63\u5e38\u8bbf\u95ee\u6b64\u5171\u4eab\u7684\u914d\u7f6e\u76ee\u5f55\u3002 \u5982\u4e0b\u56fe\u662f\u4ee5\u5171\u4eab\u7684\u65b9\u5f0f\u8bbf\u95ee\u914d\u7f6e\u76ee\u5f55\uff1a \u5171\u4eab\u76ee\u5f55\u8bbf\u95ee\u5931\u8d25\u7684\u89e3\u51b3\u529e\u6cd5 windows\u4e0d\u80fd\u8bbf\u95eeHA\u7684\u5171\u4eab\u914d\u7f6e\u76ee\u5f55\u7684\u89e3\u51b3\u529e\u6cd5 \u5173\u4e8eportainer(\u56fe\u578b\u5316Docker\u7ba1\u7406\u5de5\u5177) Portainer \u662f\u4e00\u4e2a\u8f7b\u91cf\u7ea7\u7684\u7ba1\u7406UI\uff0c\u53ef\u4ee5\u8ba9\u4f60\u66f4\u5bb9\u6613\u5730\u7ba1\u7406Docker\u5bb9\u5668\u3002\u901a\u8fc7Portainer\uff0c\u4f60\u53ef\u4ee5\u8f7b\u677e\u5730\u521b\u5efa\u3001\u7ba1\u7406\u548c\u76d1\u63a7Docker\u5bb9\u5668\uff0c\u67e5\u770b\u5bb9\u5668\u65e5\u5fd7\uff0c\u7ba1\u7406Docker\u955c\u50cf\u7b49\u3002Portainer\u7684Web\u754c\u9762\u53cb\u597d\uff0c\u9002\u5408Docker\u65b0\u624b\u548c\u9700\u8981\u5feb\u901f\u7ba1\u7406Docker\u73af\u5883\u7684\u7528\u6237\u3002 \u5982\u4e0b\u56fe\u6240\u793a\uff1a","title":"\u8bf4\u660e"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%9C%A8%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E8%A3%85HomeAssistant/","text":"\u5982\u4f55\u5728\u7ebfDocker\u4e00\u952e\u5b89\u88c5HomeAssistant \u00b6 \u4e00\u952e\u5b89\u88c5\u811a\u672c\u5730\u5740 \u00b6 http://datacdn.data-it.tech/HomeAssistant/dokerimages/ha-images1.1/install-ha.sh \u4f7f\u7528\u8bf4\u660e \u00b6 \u6267\u884c\u4e00\u952e\u5b89\u88c5\u811a\u672c \u00b6 curl -fsSL http://datacdn.data-it.tech/HomeAssistant/dokerimages/ha-images1.1/install-ha.sh | sudo bash \u5982\u4e0b\u6240\u793a \u00b6","title":"\u5982\u4f55\u5728\u7ebfDocker\u4e00\u952e\u5b89\u88c5HomeAssistant"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%9C%A8%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E8%A3%85HomeAssistant/#dockerhomeassistant","text":"","title":"\u5982\u4f55\u5728\u7ebfDocker\u4e00\u952e\u5b89\u88c5HomeAssistant"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%9C%A8%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E8%A3%85HomeAssistant/#_1","text":"http://datacdn.data-it.tech/HomeAssistant/dokerimages/ha-images1.1/install-ha.sh","title":"\u4e00\u952e\u5b89\u88c5\u811a\u672c\u5730\u5740"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%9C%A8%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E8%A3%85HomeAssistant/#_2","text":"","title":"\u4f7f\u7528\u8bf4\u660e"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%9C%A8%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E8%A3%85HomeAssistant/#_3","text":"curl -fsSL http://datacdn.data-it.tech/HomeAssistant/dokerimages/ha-images1.1/install-ha.sh | sudo bash","title":"\u6267\u884c\u4e00\u952e\u5b89\u88c5\u811a\u672c"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%9C%A8%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E8%A3%85HomeAssistant/#_4","text":"","title":"\u5982\u4e0b\u6240\u793a"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%BF%AB%E9%80%9F%E9%83%A8%E7%BD%B2frpc%E6%9C%8D%E5%8A%A1/","text":"\u5982\u4f55\u5feb\u901f\u90e8\u7f72frpc\u670d\u52a1 \u00b6 frpc\u5ba2\u6237\u7aef\u90e8\u7f72\u4e3a\u975e\u5e38\u7b80\u5355\uff0c\u672c\u6587\u6863\u5c06\u6307\u5bfc\u4f60\u5982\u4f55\u5feb\u901f\u90e8\u7f72frpc\u670d\u52a1\u3002 \u5feb\u901f\u5b89\u88c5 \u00b6 # x86_64_amd curl -fsSL http://datacdn.data-it.tech/HomeAssistant/tools/frpc/install-frp-x86_64.sh | sudo bash # arm64 curl -fsSL http://datacdn.data-it.tech/HomeAssistant/tools/frpc/install-frp-arm.sh | sudo bash \u7136\u540e\u6839\u636e\u63d0\u793a\u8fdb\u884c\u914d\u7f6e\u5373\u53ef\u3002 \u8bf7\u8f93\u5165 frp \u670d\u52a1\u7aef\u5730\u5740: 115.190.**.101 <--\u5728\u6b64\u5904\u8f93\u5165\u4f60\u7684\u670d\u52a1\u7aef\u5730\u5740-> \u8bf7\u8f93\u5165 frp \u670d\u52a1\u7aef\u7aef\u53e3: 0000 <- \u5728\u6b64\u5904\u8f93\u5165\u4f60\u7684\u670d\u52a1\u7aef\u53e3-> \u662f\u5426\u4f7f\u7528 token \u9a8c\u8bc1? (y/n): y <- \u670d\u52a1\u7aef\u662f\u5426\u5f00\u542f\u4e86token\u9a8c\u8bc1\uff0c\u5982\u679c\u8f93\u5165Y\uff0c\u5426\u5219\u8f93\u5165N-> \u8bf7\u8f93\u5165 token: **** <- \u5728\u6b64\u5904\u8f93\u5165\u4f60\u7684 token-> \u8bf7\u8f93\u5165\u672c\u5730\u670d\u52a1\u540d\u79f0(\u5982 myservice)\uff0c\u4e3a\u7a7a\u5219\u7ed3\u675f: no_machine_test <- \u5728\u6b64\u5904\u8f93\u5165\u4f60\u7684\u670d\u52a1\u540d\u79f0-> \u8bf7\u8f93\u5165\u672c\u5730 IP: 192.168.6.222 \u8bf7\u8f93\u5165\u672c\u5730\u7aef\u53e3: 4000 \u8bf7\u8f93\u5165\u8fdc\u7a0b\u7aef\u53e3: 60009 \u8bf7\u8f93\u5165\u672c\u5730\u670d\u52a1\u540d\u79f0(\u5982 myservice)\uff0c\u4e3a\u7a7a\u5219\u7ed3\u675f: \u6b63\u5728\u4e0b\u8f7d\u5e76\u5b89\u88c5 frpClient... --2025-09-02 09:50:08-- http://datacdn.data-it.tech/HomeAssistant/tools/frpc/frp_0.64.0_linux_amd64.tar.gz Resolving datacdn.data-it.tech (datacdn.data-it.tech)... 122.228.207.55, 36.25.240.217, 36.25.240.218, ... Connecting to datacdn.data-it.tech (datacdn.data-it.tech)|122.228.207.55|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 13332918 (13M) [application/x-compressed] Saving to: \u2018/tmp/frpc.tar.gz\u2019 /tmp/frpc.tar.gz 100%[========================================================>] 12.71M 4.72MB/s in 2.7s 2025-09-02 09:50:12 (4.72 MB/s) - \u2018/tmp/frpc.tar.gz\u2019 saved [13332918/13332918] Created symlink /etc/systemd/system/multi-user.target.wants/frpc.service \u2192 /etc/systemd/system/frpc.service. frpClient \u5b89\u88c5\u5b8c\u6210\u5e76\u5df2\u542f\u52a8\u3002 \u5982\u9700\u5378\u8f7d\uff0c\u8bf7\u8fd0\u884c: sudo bash ./install-frp-x86_64.sh uninstall /etc/systemd/system/frpc.service [Unit] Description=frp Client Service After=network-online.target Wants=network-online.target [Service] Type=simple User=orangepi WorkingDirectory=/opt/frpc ExecStartPre=/bin/sleep 20 ExecStart=/opt/frpc/frpc -c /opt/frpc/frpc.toml Restart=on-failure [Install] WantedBy=multi-user.target","title":"\u5982\u4f55\u5feb\u901f\u90e8\u7f72frpc\u670d\u52a1"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%BF%AB%E9%80%9F%E9%83%A8%E7%BD%B2frpc%E6%9C%8D%E5%8A%A1/#frpc","text":"frpc\u5ba2\u6237\u7aef\u90e8\u7f72\u4e3a\u975e\u5e38\u7b80\u5355\uff0c\u672c\u6587\u6863\u5c06\u6307\u5bfc\u4f60\u5982\u4f55\u5feb\u901f\u90e8\u7f72frpc\u670d\u52a1\u3002","title":"\u5982\u4f55\u5feb\u901f\u90e8\u7f72frpc\u670d\u52a1"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E5%BF%AB%E9%80%9F%E9%83%A8%E7%BD%B2frpc%E6%9C%8D%E5%8A%A1/#_1","text":"# x86_64_amd curl -fsSL http://datacdn.data-it.tech/HomeAssistant/tools/frpc/install-frp-x86_64.sh | sudo bash # arm64 curl -fsSL http://datacdn.data-it.tech/HomeAssistant/tools/frpc/install-frp-arm.sh | sudo bash \u7136\u540e\u6839\u636e\u63d0\u793a\u8fdb\u884c\u914d\u7f6e\u5373\u53ef\u3002 \u8bf7\u8f93\u5165 frp \u670d\u52a1\u7aef\u5730\u5740: 115.190.**.101 <--\u5728\u6b64\u5904\u8f93\u5165\u4f60\u7684\u670d\u52a1\u7aef\u5730\u5740-> \u8bf7\u8f93\u5165 frp \u670d\u52a1\u7aef\u7aef\u53e3: 0000 <- \u5728\u6b64\u5904\u8f93\u5165\u4f60\u7684\u670d\u52a1\u7aef\u53e3-> \u662f\u5426\u4f7f\u7528 token \u9a8c\u8bc1? (y/n): y <- \u670d\u52a1\u7aef\u662f\u5426\u5f00\u542f\u4e86token\u9a8c\u8bc1\uff0c\u5982\u679c\u8f93\u5165Y\uff0c\u5426\u5219\u8f93\u5165N-> \u8bf7\u8f93\u5165 token: **** <- \u5728\u6b64\u5904\u8f93\u5165\u4f60\u7684 token-> \u8bf7\u8f93\u5165\u672c\u5730\u670d\u52a1\u540d\u79f0(\u5982 myservice)\uff0c\u4e3a\u7a7a\u5219\u7ed3\u675f: no_machine_test <- \u5728\u6b64\u5904\u8f93\u5165\u4f60\u7684\u670d\u52a1\u540d\u79f0-> \u8bf7\u8f93\u5165\u672c\u5730 IP: 192.168.6.222 \u8bf7\u8f93\u5165\u672c\u5730\u7aef\u53e3: 4000 \u8bf7\u8f93\u5165\u8fdc\u7a0b\u7aef\u53e3: 60009 \u8bf7\u8f93\u5165\u672c\u5730\u670d\u52a1\u540d\u79f0(\u5982 myservice)\uff0c\u4e3a\u7a7a\u5219\u7ed3\u675f: \u6b63\u5728\u4e0b\u8f7d\u5e76\u5b89\u88c5 frpClient... --2025-09-02 09:50:08-- http://datacdn.data-it.tech/HomeAssistant/tools/frpc/frp_0.64.0_linux_amd64.tar.gz Resolving datacdn.data-it.tech (datacdn.data-it.tech)... 122.228.207.55, 36.25.240.217, 36.25.240.218, ... Connecting to datacdn.data-it.tech (datacdn.data-it.tech)|122.228.207.55|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 13332918 (13M) [application/x-compressed] Saving to: \u2018/tmp/frpc.tar.gz\u2019 /tmp/frpc.tar.gz 100%[========================================================>] 12.71M 4.72MB/s in 2.7s 2025-09-02 09:50:12 (4.72 MB/s) - \u2018/tmp/frpc.tar.gz\u2019 saved [13332918/13332918] Created symlink /etc/systemd/system/multi-user.target.wants/frpc.service \u2192 /etc/systemd/system/frpc.service. frpClient \u5b89\u88c5\u5b8c\u6210\u5e76\u5df2\u542f\u52a8\u3002 \u5982\u9700\u5378\u8f7d\uff0c\u8bf7\u8fd0\u884c: sudo bash ./install-frp-x86_64.sh uninstall /etc/systemd/system/frpc.service [Unit] Description=frp Client Service After=network-online.target Wants=network-online.target [Service] Type=simple User=orangepi WorkingDirectory=/opt/frpc ExecStartPre=/bin/sleep 20 ExecStart=/opt/frpc/frpc -c /opt/frpc/frpc.toml Restart=on-failure [Install] WantedBy=multi-user.target","title":"\u5feb\u901f\u5b89\u88c5"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E6%8A%8AHAos%E7%9A%84%E6%BA%90%E6%8D%A2%E6%88%90%E5%9B%BD%E5%86%85%E6%BA%90/","text":"\u8981\u66f4\u6539haos\uff08\u53ef\u80fd\u662f\u6307HaOS\uff0c\u4e00\u4e2a\u57fa\u4e8eLinux\u7684\u64cd\u4f5c\u7cfb\u7edf\uff09\u7684\u8f6f\u4ef6\u6e90\u4e3a\u56fd\u5185\u6e90\uff0c \u9700\u8981\u7f16\u8f91 /etc/apk/repositories \u6587\u4ef6\uff0c\u7136\u540e\u66ff\u6362\u73b0\u6709\u7684\u6e90\u4e3a\u56fd\u5185\u955c\u50cf\u6e90\u3002\u5177\u4f53\u6b65\u9aa4\u5982\u4e0b\uff1a \u5907\u4efd\u539f\u59cb\u6587\u4ef6:\u786e\u4fdd\u5728\u4fee\u6539\u4e4b\u524d\u5907\u4efd\u539f\u59cb\u7684 /etc/apk/repositories \u6587\u4ef6\uff0c\u4ee5\u9632\u4fee\u6539\u9519\u8bef\u5bfc\u81f4\u95ee\u9898\u3002 sudo cp /etc/apk/repositories /etc/apk/repositories.bak \u7f16\u8f91\u6587\u4ef6:\u4f7f\u7528\u6587\u672c\u7f16\u8f91\u5668\uff08\u5982vi\u3001nano\u7b49\uff09\u6253\u5f00 /etc/apk/repositories \u6587\u4ef6\u3002 sudo vi /etc/apk/repositories \u66ff\u6362\u6e90:\u5c06\u6587\u4ef6\u4e2d\u7684\u5185\u5bb9\u66ff\u6362\u4e3a\u56fd\u5185\u955c\u50cf\u6e90\uff0c\u4f8b\u5982\u963f\u91cc\u4e91\u6216\u6e05\u534e\u5927\u5b66\u7684\u6e90\u3002\\ \u4e0b\u662f\u963f\u91cc\u4e91\u7684\u793a\u4f8b\uff1a https://mirrors.aliyun.com/alpine/latest-stable/main https://mirrors.aliyun.com/alpine/latest-stable/community \u6e05\u534e\u5927\u5b66\u7684\u6e90\u793a\u4f8b\uff1a https://mirrors.tuna.tsinghua.edu.cn/alpine/latest-stable/main https://mirrors.tuna.tsinghua.edu.cn/alpine/latest-stable/community \u6839\u636e\u5b9e\u9645\u60c5\u51b5\u9009\u62e9\u4e00\u4e2a\u6e90\uff0c\u5e76\u5c06\u539f\u6587\u4ef6\u5185\u5bb9\u66ff\u6362\u3002 \u4fdd\u5b58\u5e76\u9000\u51fa:\u5982\u679c\u4f7f\u7528vi\uff0c\u6309\u4e0bEsc\uff0c\u7136\u540e\u8f93\u5165 :wq \u4fdd\u5b58\u5e76\u9000\u51fa\u3002 \u66f4\u65b0\u8f6f\u4ef6\u5305\u5217\u8868:\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u66f4\u65b0\u8f6f\u4ef6\u5305\u5217\u8868\uff0c\u4f7f\u66f4\u6539\u751f\u6548\u3002 sudo apk update \u5b8c\u6210\u4ee5\u4e0a\u6b65\u9aa4\u540e\uff0chaos\u7684\u8f6f\u4ef6\u6e90\u5c31\u6210\u529f\u66f4\u6362\u4e3a\u56fd\u5185\u955c\u50cf\u6e90\u4e86\u3002","title":"\u5982\u4f55\u628aHAos\u7684\u6e90\u6362\u6210\u56fd\u5185\u6e90"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85HomeAssistant/","text":"\u5982\u4f55\u79bb\u7ebfDocker\u4e00\u952e\u5b89\u88c5HomeAssistant \u00b6 \u4e0b\u8f7d\u79bb\u7ebf\u5b89\u88c5\u5305\u5230\u672c\u5730 \u00b6 \u5730\u5740\uff1a wget http://datacdn.data-it.tech/HomeAssistant/dokerimages/ha-images1.1/ha-images1.1.zip \u8bf4\u660e\uff1a\u672c\u79bb\u7ebf\u5305\u5305\u542b\u4e86Home Assistant\u7684\u6240\u6709\u4f9d\u8d56\u548c\u914d\u7f6e\u6587\u4ef6\uff0c\u53ef\u4ee5\u5728\u6ca1\u6709\u7f51\u7edc\u7684\u73af\u5883\u4e0b\u8fdb\u884c\u5b89\u88c5\u3002\u5927\u7ea6 1.1 GB\u3002 \u89e3\u538b\u5230\u6307\u5b9a\u76ee\u5f55 \u00b6 sudo apt update sudo mkdir /dt_opt/ sudo unzip ha-images1.1.zip -d /dt_opt/ \u5982\u4e0b\u56fe\u793a\u793a\uff1a \u7ed9\u89e3\u538b\u540e\u7684\u6587\u4ef6\u8d4b\u4e88\u6b63\u786e\u7684\u6743\u9650 \u00b6 sudo chown -R $USER:$USER /dt_opt/ cd /dt_opt/ sudo chmod +x install-ha-local.sh \u5982\u4e0b\u56fe\u6240\u793a\uff1a \u6267\u884c\u5b89\u88c5\u811a\u672c \u00b6 cd /dt_opt/ sudo ./install-ha-local.sh \u5982\u4e0b\u56fe\u6240\u793a: \u670d\u52a1\u8bbf\u95ee\u5730\u5740\uff1a \u00b6 Home Assistant: http://192.168.50.170:8123 Node-RED: http://192.168.50.170:1880 Mosquitto MQTT: 192.168.50.170:1883 PostgreSQL: 192.168.50.170:5432 Samba: //192.168.50.170/HAConfig portainer: http://192.168.50.170:9000","title":"\u5982\u4f55\u79bb\u7ebfDocker\u4e00\u952e\u5b89\u88c5HomeAssistant"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85HomeAssistant/#dockerhomeassistant","text":"","title":"\u5982\u4f55\u79bb\u7ebfDocker\u4e00\u952e\u5b89\u88c5HomeAssistant"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85HomeAssistant/#_1","text":"\u5730\u5740\uff1a wget http://datacdn.data-it.tech/HomeAssistant/dokerimages/ha-images1.1/ha-images1.1.zip \u8bf4\u660e\uff1a\u672c\u79bb\u7ebf\u5305\u5305\u542b\u4e86Home Assistant\u7684\u6240\u6709\u4f9d\u8d56\u548c\u914d\u7f6e\u6587\u4ef6\uff0c\u53ef\u4ee5\u5728\u6ca1\u6709\u7f51\u7edc\u7684\u73af\u5883\u4e0b\u8fdb\u884c\u5b89\u88c5\u3002\u5927\u7ea6 1.1 GB\u3002","title":"\u4e0b\u8f7d\u79bb\u7ebf\u5b89\u88c5\u5305\u5230\u672c\u5730"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85HomeAssistant/#_2","text":"sudo apt update sudo mkdir /dt_opt/ sudo unzip ha-images1.1.zip -d /dt_opt/ \u5982\u4e0b\u56fe\u793a\u793a\uff1a","title":"\u89e3\u538b\u5230\u6307\u5b9a\u76ee\u5f55"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85HomeAssistant/#_3","text":"sudo chown -R $USER:$USER /dt_opt/ cd /dt_opt/ sudo chmod +x install-ha-local.sh \u5982\u4e0b\u56fe\u6240\u793a\uff1a","title":"\u7ed9\u89e3\u538b\u540e\u7684\u6587\u4ef6\u8d4b\u4e88\u6b63\u786e\u7684\u6743\u9650"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85HomeAssistant/#_4","text":"cd /dt_opt/ sudo ./install-ha-local.sh \u5982\u4e0b\u56fe\u6240\u793a:","title":"\u6267\u884c\u5b89\u88c5\u811a\u672c"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BFDocker%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85HomeAssistant/#_5","text":"Home Assistant: http://192.168.50.170:8123 Node-RED: http://192.168.50.170:1880 Mosquitto MQTT: 192.168.50.170:1883 PostgreSQL: 192.168.50.170:5432 Samba: //192.168.50.170/HAConfig portainer: http://192.168.50.170:9000","title":"\u670d\u52a1\u8bbf\u95ee\u5730\u5740\uff1a"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/","text":"\u5982\u4f55\u79bb\u7ebf\u5b89\u88c5Docker(ubuntu 24.04) \u00b6 \u672c\u6587\u6863\u4ecb\u7ecd\u5982\u4f55\u5728\u6ca1\u6709\u7f51\u7edc\u8fde\u63a5\u7684Ubuntu 24.04\u7cfb\u7edf\u4e0a\u79bb\u7ebf\u5b89\u88c5Docker\u3002 - \u57fa\u4e8e\u73b0\u5728\u56fd\u5185\u7f51\u7edc\u73af\u5883\uff0c\u5efa\u8bae\u4f7f\u7528\u79bb\u7ebf\u5b89\u88c5\u65b9\u5f0f\u6765\u907f\u514d\u7f51\u7edc\u95ee\u9898\u3002 - \u57fa\u4e8e\u9700\u8981\u5185\u7f51\u90e8\u7f72\u7684\u573a\u666f\uff0c\u672c\u6587\u6863\u4e5f\u9002\u7528\u3002 \u79bb\u7ebf\u5b89\u88c5\u6b65\u9aa4 \u00b6 \u51c6\u5907\u5de5\u4f5c \u00b6 \u5728\u6709\u7f51\u7edc\u7684\u73af\u5883\u4e2d\u4e0b\u8f7dDocker\u7684deb\u5305\u53ca\u5176\u4f9d\u8d56\u5305\u3002 \u5c06\u4e0b\u8f7d\u597d\u7684deb\u5305\u62f7\u8d1d\u5230\u76ee\u6807Ubuntu 24.04\u7cfb\u7edf\u4e2d\u3002 \u4e0b\u8f7dDocker\u53ca\u5176\u4f9d\u8d56\u5305 \u00b6 http://datacdn.data-it.tech/HomeAssistant/tools/docker_offline/docker-offline-packages.tar.gz \u5c06\u4e0b\u8f7d\u5230\u7684docker-offline-packages.tar.gz\u4f20\u8f93\u5230\u76ee\u6807\u7cfb\u7edf \u00b6 \u6bd4\u5982\u4e0b\u8f7d\u5230\u5982\u4e0b\u76ee\u5f55 tst@tst-VMware-Virtual-Platform:~/down$ pwd /home/tst/down tst@tst-VMware-Virtual-Platform:~/down$ ls docker-offline-packages.tar.gz tst@tst-VMware-Virtual-Platform:~/down$ \u89e3\u538b\u5b89\u88c5\u5305 \u00b6 tar -zxvf docker-offline-packages.tar.gz \u5982\u4e0b\uff1a tst@tst-VMware-Virtual-Platform:~/down$ tar -zxvf docker-offline-packages.tar.gz install-docker.sh offline/ offline/docker-compose/ offline/docker-compose/docker-compose-linux-x86_64 ls offline/deb-packages/ offline/deb-packages/docker-ce-cli_5%3a28.3.3-1~ubuntu.24.04~noble_amd64.deb offline/deb-packages/containerd.io_1.7.27-1_amd64.deb offline/deb-packages/docker-ce_5%3a28.3.3-1~ubuntu.24.04~noble_amd64.deb offline/deb-packages/docker-buildx-plugin_0.26.1-1~ubuntu.24.04~noble_amd64.deb offline/scripts/ offline/scripts/offline-install.sh tst@tst-VMware-Virtual-Platform:~/down$ ls docker-offline-packages.tar.gz install-docker.sh offline \u79bb\u7ebf\u5b89\u88c5 \u00b6 \u5728\u76ee\u5f55\u4e2d\u6267\u884c\u79bb\u7ebf\u5b89\u88c5 ./install-docker.sh --install ./offline \u9a8c\u8bc1\u5b89\u88c5 \u00b6 \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u53ef\u4ee5\u901a\u8fc7\u4ee5\u4e0b\u547d\u4ee4\u9a8c\u8bc1Docker\u662f\u5426\u5b89\u88c5\u6210\u529f\uff1a docker --version \u5982\u679c\u770b\u5230Docker\u7684\u7248\u672c\u4fe1\u606f\uff0c\u8bf4\u660e\u5b89\u88c5\u6210\u529f\u3002 \u9a8c\u8bc1Docker Compose\u662f\u5426\u5b89\u88c5\u6210\u529f\uff1a docker-compose --version \u5982\u679c\u770b\u5230Docker Compose\u7684\u7248\u672c\u4fe1\u606f\uff0c\u8bf4\u660e\u5b89\u88c5\u6210\u529f\u3002 \u5e38\u7528\u6307\u4ee4 \u00b6 # \u4e0b\u8f7d ./install-docker.sh --download ./offline # \u4e3b\u811a\u672c\u79bb\u7ebf\u5b89\u88c5 ./install-docker.sh --install ./offline # \u6253\u5305 tar -czvf docker-offline-packages.tar.gz install-docker.sh offline ## \u9a8c\u8bc1 tar -tzvf docker-offline-packages.tar.gz","title":"\u5982\u4f55\u79bb\u7ebf\u5b89\u88c5Docker(ubuntu24.04)"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#dockerubuntu-2404","text":"\u672c\u6587\u6863\u4ecb\u7ecd\u5982\u4f55\u5728\u6ca1\u6709\u7f51\u7edc\u8fde\u63a5\u7684Ubuntu 24.04\u7cfb\u7edf\u4e0a\u79bb\u7ebf\u5b89\u88c5Docker\u3002 - \u57fa\u4e8e\u73b0\u5728\u56fd\u5185\u7f51\u7edc\u73af\u5883\uff0c\u5efa\u8bae\u4f7f\u7528\u79bb\u7ebf\u5b89\u88c5\u65b9\u5f0f\u6765\u907f\u514d\u7f51\u7edc\u95ee\u9898\u3002 - \u57fa\u4e8e\u9700\u8981\u5185\u7f51\u90e8\u7f72\u7684\u573a\u666f\uff0c\u672c\u6587\u6863\u4e5f\u9002\u7528\u3002","title":"\u5982\u4f55\u79bb\u7ebf\u5b89\u88c5Docker(ubuntu 24.04)"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#_1","text":"","title":"\u79bb\u7ebf\u5b89\u88c5\u6b65\u9aa4"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#_2","text":"\u5728\u6709\u7f51\u7edc\u7684\u73af\u5883\u4e2d\u4e0b\u8f7dDocker\u7684deb\u5305\u53ca\u5176\u4f9d\u8d56\u5305\u3002 \u5c06\u4e0b\u8f7d\u597d\u7684deb\u5305\u62f7\u8d1d\u5230\u76ee\u6807Ubuntu 24.04\u7cfb\u7edf\u4e2d\u3002","title":"\u51c6\u5907\u5de5\u4f5c"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#docker","text":"http://datacdn.data-it.tech/HomeAssistant/tools/docker_offline/docker-offline-packages.tar.gz","title":"\u4e0b\u8f7dDocker\u53ca\u5176\u4f9d\u8d56\u5305"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#docker-offline-packagestargz","text":"\u6bd4\u5982\u4e0b\u8f7d\u5230\u5982\u4e0b\u76ee\u5f55 tst@tst-VMware-Virtual-Platform:~/down$ pwd /home/tst/down tst@tst-VMware-Virtual-Platform:~/down$ ls docker-offline-packages.tar.gz tst@tst-VMware-Virtual-Platform:~/down$","title":"\u5c06\u4e0b\u8f7d\u5230\u7684docker-offline-packages.tar.gz\u4f20\u8f93\u5230\u76ee\u6807\u7cfb\u7edf"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#_3","text":"tar -zxvf docker-offline-packages.tar.gz \u5982\u4e0b\uff1a tst@tst-VMware-Virtual-Platform:~/down$ tar -zxvf docker-offline-packages.tar.gz install-docker.sh offline/ offline/docker-compose/ offline/docker-compose/docker-compose-linux-x86_64 ls offline/deb-packages/ offline/deb-packages/docker-ce-cli_5%3a28.3.3-1~ubuntu.24.04~noble_amd64.deb offline/deb-packages/containerd.io_1.7.27-1_amd64.deb offline/deb-packages/docker-ce_5%3a28.3.3-1~ubuntu.24.04~noble_amd64.deb offline/deb-packages/docker-buildx-plugin_0.26.1-1~ubuntu.24.04~noble_amd64.deb offline/scripts/ offline/scripts/offline-install.sh tst@tst-VMware-Virtual-Platform:~/down$ ls docker-offline-packages.tar.gz install-docker.sh offline","title":"\u89e3\u538b\u5b89\u88c5\u5305"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#_4","text":"\u5728\u76ee\u5f55\u4e2d\u6267\u884c\u79bb\u7ebf\u5b89\u88c5 ./install-docker.sh --install ./offline","title":"\u79bb\u7ebf\u5b89\u88c5"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#_5","text":"\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u53ef\u4ee5\u901a\u8fc7\u4ee5\u4e0b\u547d\u4ee4\u9a8c\u8bc1Docker\u662f\u5426\u5b89\u88c5\u6210\u529f\uff1a docker --version \u5982\u679c\u770b\u5230Docker\u7684\u7248\u672c\u4fe1\u606f\uff0c\u8bf4\u660e\u5b89\u88c5\u6210\u529f\u3002 \u9a8c\u8bc1Docker Compose\u662f\u5426\u5b89\u88c5\u6210\u529f\uff1a docker-compose --version \u5982\u679c\u770b\u5230Docker Compose\u7684\u7248\u672c\u4fe1\u606f\uff0c\u8bf4\u660e\u5b89\u88c5\u6210\u529f\u3002","title":"\u9a8c\u8bc1\u5b89\u88c5"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E7%A6%BB%E7%BA%BF%E5%AE%89%E8%A3%85Docker%28ubunt24.04%29/#_6","text":"# \u4e0b\u8f7d ./install-docker.sh --download ./offline # \u4e3b\u811a\u672c\u79bb\u7ebf\u5b89\u88c5 ./install-docker.sh --install ./offline # \u6253\u5305 tar -czvf docker-offline-packages.tar.gz install-docker.sh offline ## \u9a8c\u8bc1 tar -tzvf docker-offline-packages.tar.gz","title":"\u5e38\u7528\u6307\u4ee4"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E9%9B%86%E6%88%90%E5%92%8C%E9%A3%8E%E5%A4%A9%E6%B0%94%E7%BB%84%E4%BB%B6%E5%88%B0HA/","text":"\u5982\u4f55\u96c6\u6210\u548c\u98ce\u5929\u6c14\u7ec4\u4ef6\u5230HA \u00b6 \u548c\u98ce\u5929\u6c14\u7b80\u4ecb \u00b6 \u548c\u98ce\u5929\u6c14\u662f\u4e00\u4e2a\u63d0\u4f9b\u5929\u6c14\u4fe1\u606f\u7684API\uff0c\u53ef\u4ee5\u65b9\u4fbf\u5730\u96c6\u6210\u5230Home Assistant\u4e2d\u3002 \u96c6\u6210\u6b65\u9aa4 \u00b6 \u5728Home Assistant\u4e2d\u5b89\u88c5\u548c\u98ce\u5929\u6c14\u7ec4\u4ef6\u3002 \u914d\u7f6e\u548c\u98ce\u5929\u6c14API\u5bc6\u94a5\u3002 \u5728\u81ea\u52a8\u5316\u4e2d\u4f7f\u7528\u548c\u98ce\u5929\u6c14\u63d0\u4f9b\u7684\u5929\u6c14\u6570\u636e\u3002 \u793a\u4f8b \u00b6 \u767b\u5f55\u548c\u98ce\u5929\u6c14\u63a7\u5236\u53f0\uff0chttps://console.qweather.com/project?lang=zh \u5982\u4e0b\u56fe\u6240\u793a\uff0c\u5148\u4e3a\u6b64\u4e2d\u5fc3\u521b\u5efa\u4e00\u4e2a\u9879\u76ee\uff0c\u4e3a\u7684\u662f\u4e3a\u6bcf\u4e2a\u4e2d\u5fc3\u4f7f\u7528\u7684api\u8c03\u7528\u6b21\u6570\u7684\u7edf\u8ba1 \u8bb0\u5f55\u4e0b\u6765\u76f8\u5173\u4fe1\u606f \u9879\u76ee\u540d\u79f0\uff1a\u6e56\u5357\u65fa\u65fa \u9879\u76eeID:2HKR2MC5WM API-KEY:885d8b06871b445fbc1beb2eda11cd6c \u5f00\u53d1\u8005ID:Q137B51456 API-Host\uff1and4up3fy3t.re.qweatherapi.com \u67e5\u8be2\u57ce\u5e02\u533a\u57df\u4ee3\u7801\u7684\u7684\u5740\uff1a git clone https://github.com/qwd/LocationList.git.com/docs/api/geoapi/ \u914d\u7f6e\u53c2\u8003 \u00b6 \u6253\u5f00\u7684\u914d\u7f6e\u6587\u4ef6 configuration.yaml \uff0c\u6dfb\u52a0\u4ee5\u4e0b\u5185\u5bb9\uff1a weather: - platform: heweather location: 101210301 # \u4f60\u7684\u533a\u57df\u4ee3\u7801\u57ce\u5e02id host: nd4up3fy3t.re.qweatherapi.com # API Host key: 885d8b06871b445fbc1beb2eda11cd6c # \u4f60\u7684API KEY \u5176\u4e2d\uff0c\u8981\u66f4\u6362\u7684\u5185\u5bb9\u4e3b\u8981\u6709\uff0c\u533a\u57df\u4ee3\u7801\u57ce\u5e02id\u3001API Host\u548cAPI KEY\u3002 \u5982\u4e0b\u56fe \u83b7\u53d6\u57ce\u5e02id\u533a\u57df\u4ee3\u7801\u7684\u65b9\u6cd5 \u00b6 \u8fd9\u91cc\u4e00\u5b9a\u8981\u914d\u5bf9\u6b63\u786e\u7684\u57ce\u5e02id\u533a\u57df\u4ee3\u7801\uff0c\u5426\u5219\u4f1a\u62a5\u7684\u5929\u6c14\u4e0d\u51c6\u3002 \u53ef\u4ee5\u901a\u8fc7\u6b64\u6587\u6863\u63d0\u4f9b\u7684API\uff0c\u67e5\u8be2 https://github.com/qwd/LocationList.git.com/docs/api/geoapi/ \u5176\u4e2d: X-QW-Api-Key \u4e3a\u4f60\u7684API\u5bc6\u94a5\u3002 location \u4e3a\u4f60\u8981\u67e5\u8be2\u7684\u57ce\u5e02\u540d\u79f0\u62fc\u97f3. curl -H \"X-QW-Api-Key: 885d8b06871b445fbc1beb2eda11cd6c\" --compressed \\ 'https://nd4up3fy3t.re.qweatherapi.com/geo/v2/city/lookup?location=changsha' \u5982\u4e0b\u56fe\u6240\u793a","title":"\u5982\u4f55\u96c6\u6210\u548c\u98ce\u5929\u6c14\u7ec4\u4ef6\u5230HA"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E9%9B%86%E6%88%90%E5%92%8C%E9%A3%8E%E5%A4%A9%E6%B0%94%E7%BB%84%E4%BB%B6%E5%88%B0HA/#ha","text":"","title":"\u5982\u4f55\u96c6\u6210\u548c\u98ce\u5929\u6c14\u7ec4\u4ef6\u5230HA"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E9%9B%86%E6%88%90%E5%92%8C%E9%A3%8E%E5%A4%A9%E6%B0%94%E7%BB%84%E4%BB%B6%E5%88%B0HA/#_1","text":"\u548c\u98ce\u5929\u6c14\u662f\u4e00\u4e2a\u63d0\u4f9b\u5929\u6c14\u4fe1\u606f\u7684API\uff0c\u53ef\u4ee5\u65b9\u4fbf\u5730\u96c6\u6210\u5230Home Assistant\u4e2d\u3002","title":"\u548c\u98ce\u5929\u6c14\u7b80\u4ecb"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E9%9B%86%E6%88%90%E5%92%8C%E9%A3%8E%E5%A4%A9%E6%B0%94%E7%BB%84%E4%BB%B6%E5%88%B0HA/#_2","text":"\u5728Home Assistant\u4e2d\u5b89\u88c5\u548c\u98ce\u5929\u6c14\u7ec4\u4ef6\u3002 \u914d\u7f6e\u548c\u98ce\u5929\u6c14API\u5bc6\u94a5\u3002 \u5728\u81ea\u52a8\u5316\u4e2d\u4f7f\u7528\u548c\u98ce\u5929\u6c14\u63d0\u4f9b\u7684\u5929\u6c14\u6570\u636e\u3002","title":"\u96c6\u6210\u6b65\u9aa4"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E9%9B%86%E6%88%90%E5%92%8C%E9%A3%8E%E5%A4%A9%E6%B0%94%E7%BB%84%E4%BB%B6%E5%88%B0HA/#_3","text":"\u767b\u5f55\u548c\u98ce\u5929\u6c14\u63a7\u5236\u53f0\uff0chttps://console.qweather.com/project?lang=zh \u5982\u4e0b\u56fe\u6240\u793a\uff0c\u5148\u4e3a\u6b64\u4e2d\u5fc3\u521b\u5efa\u4e00\u4e2a\u9879\u76ee\uff0c\u4e3a\u7684\u662f\u4e3a\u6bcf\u4e2a\u4e2d\u5fc3\u4f7f\u7528\u7684api\u8c03\u7528\u6b21\u6570\u7684\u7edf\u8ba1 \u8bb0\u5f55\u4e0b\u6765\u76f8\u5173\u4fe1\u606f \u9879\u76ee\u540d\u79f0\uff1a\u6e56\u5357\u65fa\u65fa \u9879\u76eeID:2HKR2MC5WM API-KEY:885d8b06871b445fbc1beb2eda11cd6c \u5f00\u53d1\u8005ID:Q137B51456 API-Host\uff1and4up3fy3t.re.qweatherapi.com \u67e5\u8be2\u57ce\u5e02\u533a\u57df\u4ee3\u7801\u7684\u7684\u5740\uff1a git clone https://github.com/qwd/LocationList.git.com/docs/api/geoapi/","title":"\u793a\u4f8b"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E9%9B%86%E6%88%90%E5%92%8C%E9%A3%8E%E5%A4%A9%E6%B0%94%E7%BB%84%E4%BB%B6%E5%88%B0HA/#_4","text":"\u6253\u5f00\u7684\u914d\u7f6e\u6587\u4ef6 configuration.yaml \uff0c\u6dfb\u52a0\u4ee5\u4e0b\u5185\u5bb9\uff1a weather: - platform: heweather location: 101210301 # \u4f60\u7684\u533a\u57df\u4ee3\u7801\u57ce\u5e02id host: nd4up3fy3t.re.qweatherapi.com # API Host key: 885d8b06871b445fbc1beb2eda11cd6c # \u4f60\u7684API KEY \u5176\u4e2d\uff0c\u8981\u66f4\u6362\u7684\u5185\u5bb9\u4e3b\u8981\u6709\uff0c\u533a\u57df\u4ee3\u7801\u57ce\u5e02id\u3001API Host\u548cAPI KEY\u3002 \u5982\u4e0b\u56fe","title":"\u914d\u7f6e\u53c2\u8003"},{"location":"Usages/QA/%E5%A6%82%E4%BD%95%E9%9B%86%E6%88%90%E5%92%8C%E9%A3%8E%E5%A4%A9%E6%B0%94%E7%BB%84%E4%BB%B6%E5%88%B0HA/#id","text":"\u8fd9\u91cc\u4e00\u5b9a\u8981\u914d\u5bf9\u6b63\u786e\u7684\u57ce\u5e02id\u533a\u57df\u4ee3\u7801\uff0c\u5426\u5219\u4f1a\u62a5\u7684\u5929\u6c14\u4e0d\u51c6\u3002 \u53ef\u4ee5\u901a\u8fc7\u6b64\u6587\u6863\u63d0\u4f9b\u7684API\uff0c\u67e5\u8be2 https://github.com/qwd/LocationList.git.com/docs/api/geoapi/ \u5176\u4e2d: X-QW-Api-Key \u4e3a\u4f60\u7684API\u5bc6\u94a5\u3002 location \u4e3a\u4f60\u8981\u67e5\u8be2\u7684\u57ce\u5e02\u540d\u79f0\u62fc\u97f3. curl -H \"X-QW-Api-Key: 885d8b06871b445fbc1beb2eda11cd6c\" --compressed \\ 'https://nd4up3fy3t.re.qweatherapi.com/geo/v2/city/lookup?location=changsha' \u5982\u4e0b\u56fe\u6240\u793a","title":"\u83b7\u53d6\u57ce\u5e02id\u533a\u57df\u4ee3\u7801\u7684\u65b9\u6cd5"},{"location":"Usages/QA/%E5%A6%82%E5%8E%95%E9%A3%8E%E9%99%A9-%E4%BA%BA%E5%AD%98%E5%9C%A8%E4%BC%A0%E6%84%9F%E5%99%A8%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95/","text":"\u4eba\u5b58\u5728\u4f20\u611f\u5668-\u5982\u5395\u98ce\u9669\u63d0\u793a\u914d\u7f6e\u65b9\u6cd5 \u00b6 \u4eba\u5458\u611f\u5e94\u5668\u5361\u7247\u4ee3\u7801\u751f\u6210\u5668 \u5148\u627e\u51fa\u8981\u914d\u7f6e\u7684\u4f20\u611f\u5668\u7684\u5b9e\u4f53ID \u00b6 \u4e0b\u9762\u4ee5\u5927\u8fde\u7684\u8fd9\u4e2a\u4eba\u5b58\u5728\u4f20\u611f\u566801\u4e3a\u4f8b\uff1a \u4eba\u5b58\u5728\u4f20\u611f\u566801 \u5149\u7167\u5ea6\uff1a sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_illumination_p_2_1005 \u65e0\u4eba\u6301\u7eed\u65f6\u957f\uff1a sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_no_one_duration_p_2_1082 \u6709\u4eba\u6301\u7eed\u65f6\u957f\uff1a sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_has_someone_duration_p_2_1081 \u5b58\u5728\u4f20\u611f\u5668 \u6709\u4eba\u65e0\u4eba \u72b6\u6001\u662f\u5426\u89e6\u53d1 sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_occupancy_status_p_2_1078 \u4eea\u8868\u76d8\u914d\u7f6e \u00b6 \u5728\u4eea\u8868\u76d8\uff0c\u76f8\u5e94\u4f4d\u7f6e\uff0c\u65b0\u5efa\u7ec4\u4ef6\uff0c\u8fdb\u5165\u4ee3\u7801\u7f16\u8f91\uff0c\u8d34\u5165\u5982\u4e0b\u683c\u5f0f\u7684YAML\u5185\u5bb9: type : markdown content : > 1\u53f7{% if is_state('binary_sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_occupancy_status_p_2_1078', 'on') %} # \ud83d\udd34 \u6709\u4eba-\u4e0d\u53ef\u7528 {% else %} # \ud83d\udfe2 \u65e0\u4eba-\u53ef\u7528 {% endif %} **\u5149\u7167\u5ea6:** {{ states('sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_illumination_p_2_1005') |default('\u672a\u77e5') }} lx {% if is_state('binary_sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_occupancy_status_p_2_1078', 'on') %} **\u6709\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_has_someone_duration_p_2_1081') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% else %} **\u65e0\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_no_one_duration_p_2_1082') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% endif %} card_mod : style : | ha-card { text-align: center; } ha-card h1 { font-size: 48px !important; margin: 10px 0 !important; } ha-card p { font-size: 18px !important; margin: 5px 0 !important; } grid_options : columns : 6 rows : 3 \u533b\u7528\u536b\u751f\u95f4 type : markdown content : > \u533b\u62a4\u536b\u751f\u95f4{% if is_state('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_occupancy_status_p_2_1078', 'on') or is_state('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_occupancy_status_p_2_1078', '\u6709\u4eba') %} # \ud83d\udd34 \u6709\u4eba-\u4e0d\u53ef\u7528 {% else %} # \ud83d\udfe2 \u65e0\u4eba-\u53ef\u7528 {% endif %} **\u5149\u7167\u5ea6:** {{ states('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_illumination_p_2_1005') | default('\u672a\u77e5') }} lx {% if is_state('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_occupancy_status_p_2_1078', 'on') or is_state('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_occupancy_status_p_2_1078', '\u6709\u4eba') %} **\u6709\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_has_someone_duration_p_2_1081') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% else %} **\u65e0\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_no_one_duration_p_2_1082') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% endif %} card_mod : style : | ha-card { text-align: center; } ha-card h1 { font-size: 48px !important; margin: 10px 0 !important; } ha-card p { font-size: 18px !important; margin: 5px 0 !important; } grid_options : columns : 6 rows : 3 \u4e8c\u53f7\u536b\u751f\u95f4 type : markdown content : > 2\u53f7{% if is_state('binary_sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_occupancy_status_p_2_1078', 'on') %} # \ud83d\udd34 \u6709\u4eba-\u4e0d\u53ef\u7528 {% else %} # \ud83d\udfe2 \u65e0\u4eba-\u53ef\u7528 {% endif %} **\u5149\u7167\u5ea6:** {{ states('sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_illumination_p_2_1005') |default('\u672a\u77e5') }} lx {% if is_state('binary_sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_occupancy_status_p_2_1078', 'on') %} **\u6709\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_has_someone_duration_p_2_1081') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% else %} **\u65e0\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_no_one_duration_p_2_1082') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% endif %} card_mod : style : | ha-card { text-align: center; } ha-card h1 { font-size: 48px !important; margin: 10px 0 !important; } ha-card p { font-size: 18px !important; margin: 5px 0 !important; } grid_options : columns : 6 rows : 3 \u4e09\u53f7\u536b\u751f\u95f4 type : markdown content : > \u7537\u536b{% if is_state('binary_sensor.xiaomi_cn_blt_3_1magboil90c01_03_occupancy_status_p_2_1078', 'on') or is_state('binary_sensor.xiaomi_cn_blt_3_1magboil90c01_03_occupancy_status_p_2_1078', '\u6709\u4eba') %} # \ud83d\udd34 \u6709\u4eba-\u4e0d\u53ef\u7528 {% else %} # \ud83d\udfe2 \u65e0\u4eba-\u53ef\u7528 {% endif %} **\u5149\u7167\u5ea6:** {{ states('sensor.xiaomi_cn_blt_3_1magboil90c01_03_illumination_p_2_1005') | default('\u672a\u77e5') }} lx {% if is_state('binary_sensor.xiaomi_cn_blt_3_1magboil90c01_03_occupancy_status_p_2_1078', 'on') or is_state('binary_sensor.xiaomi_cn_blt_3_1magboil90c01_03_occupancy_status_p_2_1078', '\u6709\u4eba') %} **\u6709\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1magboil90c01_03_has_someone_duration_p_2_1081') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% else %} **\u65e0\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1magboil90c01_03_no_one_duration_p_2_1082') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% endif %} card_mod : style : | ha-card { text-align: center; } ha-card h1 { font-size: 48px !important; margin: 10px 0 !important; } ha-card p { font-size: 18px !important; margin: 5px 0 !important; } grid_options : columns : 6 rows : 3","title":"\u5982\u5395\u98ce\u9669-\u4eba\u5b58\u5728\u4f20\u611f\u5668\u914d\u7f6e\u65b9\u6cd5"},{"location":"Usages/QA/%E5%A6%82%E5%8E%95%E9%A3%8E%E9%99%A9-%E4%BA%BA%E5%AD%98%E5%9C%A8%E4%BC%A0%E6%84%9F%E5%99%A8%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95/#-","text":"\u4eba\u5458\u611f\u5e94\u5668\u5361\u7247\u4ee3\u7801\u751f\u6210\u5668","title":"\u4eba\u5b58\u5728\u4f20\u611f\u5668-\u5982\u5395\u98ce\u9669\u63d0\u793a\u914d\u7f6e\u65b9\u6cd5"},{"location":"Usages/QA/%E5%A6%82%E5%8E%95%E9%A3%8E%E9%99%A9-%E4%BA%BA%E5%AD%98%E5%9C%A8%E4%BC%A0%E6%84%9F%E5%99%A8%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95/#id","text":"\u4e0b\u9762\u4ee5\u5927\u8fde\u7684\u8fd9\u4e2a\u4eba\u5b58\u5728\u4f20\u611f\u566801\u4e3a\u4f8b\uff1a \u4eba\u5b58\u5728\u4f20\u611f\u566801 \u5149\u7167\u5ea6\uff1a sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_illumination_p_2_1005 \u65e0\u4eba\u6301\u7eed\u65f6\u957f\uff1a sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_no_one_duration_p_2_1082 \u6709\u4eba\u6301\u7eed\u65f6\u957f\uff1a sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_has_someone_duration_p_2_1081 \u5b58\u5728\u4f20\u611f\u5668 \u6709\u4eba\u65e0\u4eba \u72b6\u6001\u662f\u5426\u89e6\u53d1 sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_occupancy_status_p_2_1078","title":"\u5148\u627e\u51fa\u8981\u914d\u7f6e\u7684\u4f20\u611f\u5668\u7684\u5b9e\u4f53ID"},{"location":"Usages/QA/%E5%A6%82%E5%8E%95%E9%A3%8E%E9%99%A9-%E4%BA%BA%E5%AD%98%E5%9C%A8%E4%BC%A0%E6%84%9F%E5%99%A8%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95/#_1","text":"\u5728\u4eea\u8868\u76d8\uff0c\u76f8\u5e94\u4f4d\u7f6e\uff0c\u65b0\u5efa\u7ec4\u4ef6\uff0c\u8fdb\u5165\u4ee3\u7801\u7f16\u8f91\uff0c\u8d34\u5165\u5982\u4e0b\u683c\u5f0f\u7684YAML\u5185\u5bb9: type : markdown content : > 1\u53f7{% if is_state('binary_sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_occupancy_status_p_2_1078', 'on') %} # \ud83d\udd34 \u6709\u4eba-\u4e0d\u53ef\u7528 {% else %} # \ud83d\udfe2 \u65e0\u4eba-\u53ef\u7528 {% endif %} **\u5149\u7167\u5ea6:** {{ states('sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_illumination_p_2_1005') |default('\u672a\u77e5') }} lx {% if is_state('binary_sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_occupancy_status_p_2_1078', 'on') %} **\u6709\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_has_someone_duration_p_2_1081') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% else %} **\u65e0\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqavn130ck00_03_no_one_duration_p_2_1082') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% endif %} card_mod : style : | ha-card { text-align: center; } ha-card h1 { font-size: 48px !important; margin: 10px 0 !important; } ha-card p { font-size: 18px !important; margin: 5px 0 !important; } grid_options : columns : 6 rows : 3 \u533b\u7528\u536b\u751f\u95f4 type : markdown content : > \u533b\u62a4\u536b\u751f\u95f4{% if is_state('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_occupancy_status_p_2_1078', 'on') or is_state('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_occupancy_status_p_2_1078', '\u6709\u4eba') %} # \ud83d\udd34 \u6709\u4eba-\u4e0d\u53ef\u7528 {% else %} # \ud83d\udfe2 \u65e0\u4eba-\u53ef\u7528 {% endif %} **\u5149\u7167\u5ea6:** {{ states('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_illumination_p_2_1005') | default('\u672a\u77e5') }} lx {% if is_state('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_occupancy_status_p_2_1078', 'on') or is_state('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_occupancy_status_p_2_1078', '\u6709\u4eba') %} **\u6709\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_has_someone_duration_p_2_1081') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% else %} **\u65e0\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqll06fp0c00_03_no_one_duration_p_2_1082') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% endif %} card_mod : style : | ha-card { text-align: center; } ha-card h1 { font-size: 48px !important; margin: 10px 0 !important; } ha-card p { font-size: 18px !important; margin: 5px 0 !important; } grid_options : columns : 6 rows : 3 \u4e8c\u53f7\u536b\u751f\u95f4 type : markdown content : > 2\u53f7{% if is_state('binary_sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_occupancy_status_p_2_1078', 'on') %} # \ud83d\udd34 \u6709\u4eba-\u4e0d\u53ef\u7528 {% else %} # \ud83d\udfe2 \u65e0\u4eba-\u53ef\u7528 {% endif %} **\u5149\u7167\u5ea6:** {{ states('sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_illumination_p_2_1005') |default('\u672a\u77e5') }} lx {% if is_state('binary_sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_occupancy_status_p_2_1078', 'on') %} **\u6709\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_has_someone_duration_p_2_1081') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% else %} **\u65e0\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1lqb1cfugcc00_03_no_one_duration_p_2_1082') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% endif %} card_mod : style : | ha-card { text-align: center; } ha-card h1 { font-size: 48px !important; margin: 10px 0 !important; } ha-card p { font-size: 18px !important; margin: 5px 0 !important; } grid_options : columns : 6 rows : 3 \u4e09\u53f7\u536b\u751f\u95f4 type : markdown content : > \u7537\u536b{% if is_state('binary_sensor.xiaomi_cn_blt_3_1magboil90c01_03_occupancy_status_p_2_1078', 'on') or is_state('binary_sensor.xiaomi_cn_blt_3_1magboil90c01_03_occupancy_status_p_2_1078', '\u6709\u4eba') %} # \ud83d\udd34 \u6709\u4eba-\u4e0d\u53ef\u7528 {% else %} # \ud83d\udfe2 \u65e0\u4eba-\u53ef\u7528 {% endif %} **\u5149\u7167\u5ea6:** {{ states('sensor.xiaomi_cn_blt_3_1magboil90c01_03_illumination_p_2_1005') | default('\u672a\u77e5') }} lx {% if is_state('binary_sensor.xiaomi_cn_blt_3_1magboil90c01_03_occupancy_status_p_2_1078', 'on') or is_state('binary_sensor.xiaomi_cn_blt_3_1magboil90c01_03_occupancy_status_p_2_1078', '\u6709\u4eba') %} **\u6709\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1magboil90c01_03_has_someone_duration_p_2_1081') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% else %} **\u65e0\u4eba\u6301\u7eed:** {% set duration = states('sensor.xiaomi_cn_blt_3_1magboil90c01_03_no_one_duration_p_2_1082') %}{{ '\u672a\u77e5' if duration in ['unknown', 'unavailable', ''] else duration }} {% endif %} card_mod : style : | ha-card { text-align: center; } ha-card h1 { font-size: 48px !important; margin: 10px 0 !important; } ha-card p { font-size: 18px !important; margin: 5px 0 !important; } grid_options : columns : 6 rows : 3","title":"\u4eea\u8868\u76d8\u914d\u7f6e"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/","text":"\u8bed\u97f3\u5408\u6210\u4e0e\u8bc6\u522b\u670d\u52a1Docker-\u90e8\u7f72\u8bf4\u660e \u00b6 pre, code { white-space: pre-wrap; word-break: break-all; } \u4e00\u3001\u7b80\u4ecb \u00b6 \u8bed\u97f3\u5408\u6210\u4e0e\u8bc6\u522b\u670d\u52a1\uff08\u4ee5\u4e0b\u7b80\u79f0\u201c\u670d\u52a1\u201d\uff09\u63d0\u4f9b\u9ad8\u8d28\u91cf\u7684\u6587\u672c\u8f6c\u8bed\u97f3\uff08TTS\uff09\u548c\u8bed\u97f3\u8f6c\u6587\u672c\uff08ASR\uff09\u529f\u80fd\u3002\u4e3a\u4e86\u65b9\u4fbf\u7528\u6237\u5feb\u901f\u90e8\u7f72\u548c\u4f7f\u7528\u8be5\u670d\u52a1\uff0c\u6211\u4eec\u63d0\u4f9b\u4e86\u57fa\u4e8eDocker\u7684\u90e8\u7f72\u65b9\u6848\u3002\u672c\u6587\u6863\u5c06\u8be6\u7ec6\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528Docker\u90e8\u7f72\u8be5\u670d\u52a1\u3002 \u672c\u6587\u63d0\u4f9b\u7684\u8bed\u97f3\u5408\u6210\u4e0e\u8bc6\u522b\u670d\u52a1\uff0c\u662f\u57fa\u4e8epaddlespeech\u5f00\u53d1\u7684TTS\u548cASR\u670d\u52a1(\u7eafCPU\u670d\u52a1)\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7Docker\u5feb\u901f\u90e8\u7f72\u5e76\u4f7f\u7528\u8be5\u670d\u52a1\u3002 \u4e8c\u3001\u73af\u5883\u51c6\u5907 \u00b6 \u5728\u5f00\u59cb\u90e8\u7f72\u4e4b\u524d\uff0c\u8bf7\u786e\u4fdd\u60a8\u7684\u73af\u5883\u6ee1\u8db3\u4ee5\u4e0b\u8981\u6c42\uff1a 1. \u5df2\u5b89\u88c5Docker\u548cDocker Compose\u3002 2. \u5177\u5907\u4e00\u5b9a\u7684Linux\u547d\u4ee4\u884c\u64cd\u4f5c\u57fa\u7840\u3002 3. \u786e\u4fdd\u60a8\u7684\u670d\u52a1\u5668\u5177\u5907\u8db3\u591f\u7684\u8ba1\u7b97\u8d44\u6e90\uff08CPU\u3001\u5185\u5b58\u3001GPU\u7b49\uff09\u3002 \u4e09\u3001\u83b7\u53d6Docker\u955c\u50cf \u00b6 \u6211\u4eec\u63d0\u4f9b\u4e86\u9884\u6784\u5efa\u7684Docker\u955c\u50cf\uff0c\u5730\u5740\u4f4d\u4e8e\u4e03\u725b\u4e91\uff0c \u4e0b\u8f7d\u5730\u5740 \u4e3a\uff1a https://datacdn.data-it.tech/HomeAssistant/dokerimages/paddlespeech1.1/paddlespeech.tar \u56db\u3001\u5728\u7ebf\u90e8\u7f72\u6b65\u9aa4 \u00b6 \u6267\u884c\u4e00\u952e\u5b89\u88c5\u811a\u672c \u00b6 curl -fsSL https://datacdn.data-it.tech/HomeAssistant/dokerimages/paddlespeech1.1/install-paddlespeech.sh | sudo bash \u5982\u4e0b\u56fe\u6240\u793a: \u00b6 \u9996\u6b21\u8fd0\u884c \u00b6 \u4f7f\u7528TTS\u6216asr\u670d\u52a1\uff0c\u9996\u6b21\u8fd0\u884c\u4f1a\u81ea\u52a8\u4e0b\u8f7d\u6a21\u578b\u6587\u4ef6\uff0c\u6a21\u578b\u6587\u4ef6\u8f83\u5927, \u4e0b\u8f7d\u8fc7\u7a0b\u7ea6\u970010\u5206\u949f \uff0c\u8bf7\u8010\u5fc3\u7b49\u5f85\u3002 \u5982\u4e0b\u6240\u793a \u00b6 \u6211\u4eec\u53ef\u4ee5\u5982\u7528\u4e0b\u547d\u4ee4\u5b9e\u65f6\u67e5\u770b\u8fd0\u884c\u65e5\u5fd7: docker logs -f paddlespeech TTS\u6a21\u578b\u9996\u6b21\u4f7f\u7528\u65f6\u4f8d\u81ea\u52a8\u4ece\u7f51\u7edc\u4e0b\u8f7d\u7ea62G\u7684\u6a21\u578b\u6587\u4ef6\uff0c\u4e0b\u8f7d\u5b8c\u6210\u540e\u4f1a\u81ea\u52a8\u542f\u52a8\u670d\u52a1\u3002\u540e\u7eed\u518d\u6b21\u4f7f\u7528\u65f6\uff0c\u4e0d\u4f1a\u91cd\u590d\u4e0b\u8f7d\u6a21\u578b\u6587\u4ef6\u3002 Asr\u6a21\u578b\u9996\u6b21\u4f7f\u7528\u65f6\u4f8d\u81ea\u52a8\u4ece\u7f51\u7edc\u4e0b\u8f7d\u7ea61G\u7684\u6a21\u578b\u6587\u4ef6\uff0c\u4e0b\u8f7d\u5b8c\u6210\u540e\u4f1a\u81ea\u52a8\u542f\u52a8\u670d\u52a1\u3002\u540e\u7eed\u518d\u6b21\u4f7f\u7528\u65f6\uff0c\u4e0d\u4f1a\u91cd\u590d\u4e0b\u8f7d\u6a21\u578b\u6587\u4ef6\u3002 \u4e94\u3001\u79bb\u7ebf\u90e8\u7f72\u6b65\u9aa4 \u00b6 \u79bb\u7ebf\u90e8\u7f72\u7684\u76f8\u5173\u6587\u4ef6\u4e0b\u8f7d\u5730\u5740 \u00b6 Docker\u955c\u50cf\u6587\u4ef6: \u4e0b\u8f7d\u5730\u5740 \u6570\u636e\u5377\u6587\u4ef6: \u4ee5\u4e0b\u6587\u4ef6\u8981\u4e0b\u8f7d\u5e76\u590d\u5236\u5230\u76ee\u6807\u673a\u5668\u4e34\u65f6\u8ba4\u7f6e\u7684\u76ee\u5f55,\u4e0einstall-paddlespeech-localh.sh\u6240\u5728\u76ee\u5f55\u540c\u7ea7\u7684\u5b50\u76ee\u5f55data\u76ee\u5f55\u4e0b home_dtuser_opt_paddlespeech_data_logs.tar.gz home_dtuser_opt_paddlespeech_data_nltk_data.tar.gz home_dtuser_opt_paddlespeech_data_output.tar.gz home_dtuser_opt_paddlespeech_data_paddlenlp_models.tar.gz home_dtuser_opt_paddlespeech_data_paddlespeech_models.tar.gz \u79bb\u7ebf\u5b89\u88c5\u811a\u672c: \u4e0b\u8f7d\u5730\u5740 \u6d4b\u8bd5\u6f14\u793a\u4f7f\u7528\u7f51\u9875: \u4e0b\u8f7d\u5730\u5740 \u79bb\u7ebf\u5b89\u88c5\u5305\u5206\u4e24\u90e8\u4efd\uff0c\u4e00\u90e8\u4efd\u662f\u5bb9\u5668\u955c\u50cf\uff0c\u4e00\u90e8\u4efd\u662f\u6570\u636e\u5377\u6587\u4ef6\uff0c\u5b89\u88c5\u542f\u52a8\u5bb9\u5668\u524d\u5148\u66ff\u6362\u5bf9\u636e\u5377\u7ed1\u5b9a\u7684\u76ee\u5f55\uff0c\u8fd9\u6837\u5bb9\u5668\u542f\u52a8\u540e\u65e0\u987b\u4e0b\u8f7d\u6a21\u578b\uff0c\u53ef\u4ee5\u5728\u65e0\u4e92\u8054\u7f51\u7684\u60c5\u51b5\u4e0b\u76f4\u63a5\u4f7f\u7528 1. \u4e0b\u8f7dDocker\u955c\u50cf\u4e0e\u6570\u636e\u5377\u6587\u4ef6 \u00b6 \u5982\u4e0b\u793a\u4f8b\uff0c\u6211\u4eec\u5c06\u6587\u4ef6\u653e\u5230\u7528\u6237\u76ee\u5f55\u7684down\u4e0b,\u8bf7\u4fdd\u6301\u76f8\u5e94\u7684\u76ee\u5f55\u7ed3\u6784\uff0c\u5982\u4e0b\u6240\u793a\uff1a tst@tst-VMware-Virtual-Platform:~/down$ pwd /home/tst/down tst@tst-VMware-Virtual-Platform:~/down$ ls data install-paddlespeech-localh.sh tst@tst-VMware-Virtual-Platform:~/down$ tree . \u251c\u2500\u2500 data \u2502 \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_logs.tar.gz \u2502 \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_nltk_data.tar.gz \u2502 \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_output.tar.gz \u2502 \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_paddlenlp_models.tar.gz \u2502 \u2514\u2500\u2500 home_dtuser_opt_paddlespeech_data_paddlespeech_models.tar.gz \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_paddlespeech_models.tar.gz \u2514\u2500\u2500 install-paddlespeech-localh.sh 2 directories, 7 files 2. \u7ed9\u8fd0\u884c\u811a\u672c\u6dfb\u52a0\u6267\u884c\u6743\u9650 \u00b6 chmod +x install-paddlespeech-localh.sh 3. \u6267\u884c\u5b89\u88c5\u811a\u672c \u00b6 sudo ./install-paddlespeech-localh.sh \u6309\u88c5\u811a\u672c\u5c06\u4f1a\u5148\u89e3\u538b\u6587\u4ef6\uff0c\u5e76\u52a0\u8f7ddocker\u955c\u50cf\uff0c\u7136\u540e\u542f\u52a8\u5bb9\u5668\uff0c\u542f\u52a8\u5b8c\u6210\u540e\uff0c\u53ef\u4ee5\u4f7f\u7528docker ps\u547d\u4ee4\u67e5\u770b\u8fd0\u884c\u72b6\u6001\uff0c\u5982\u4e0b\u6240\u793a\uff1a tst@tst-VMware-Virtual-Platform:~/down$ sudo ./install-paddlespeech-localh.sh [ INFO ] \u5f00\u59cb PaddleSpeech \u79bb\u7ebf\u5b89\u88c5... [ SUCCESS ] \u78c1\u76d8\u7a7a\u95f4\u68c0\u67e5\u901a\u8fc7\uff0855GB\uff09 [ INFO ] \u68c0\u6d4b\u7f51\u7edc\u8fde\u63a5... [ SUCCESS ] \u7f51\u7edc\u8fde\u63a5\u6b63\u5e38 [ INFO ] \u521b\u5efa\u76ee\u5f55\u7ed3\u6784... [ SUCCESS ] \u76ee\u5f55\u7ed3\u6784\u521b\u5efa\u5b8c\u6210 [ INFO ] \u89e3\u538b\u6570\u636e\u5377... [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_logs.tar.gz \u5230 /dt_opt/paddlespeech/data/logs ./ [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_nltk_data.tar.gz \u5230 /dt_opt/paddlespeech/data/nltk_data ./ ./taggers/ ./taggers/averaged_perceptron_tagger/ ./taggers/averaged_perceptron_tagger/averaged_perceptron_tagger.pickle ./taggers/averaged_perceptron_tagger.zip ./corpora/ ./corpora/cmudict/ ./corpora/cmudict/cmudict ./corpora/cmudict/README ./corpora/cmudict.zip [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_output.tar.gz \u5230 /dt_opt/paddlespeech/data/output ./ ./2753d658-b228-4ae6-94fc-3404a41f4526.wav ./9f24d71e-9f29-4d60-aa13-677fd19bba46.wav ./38ea94c6-e19b-4e41-8cca-454d8e374a15.wav ./d44aa891-c36b-473f-aef3-44484f0cd74b.wav ./c5ef53d3-502b-4f81-9fdd-583836ba7096.wav ./3931cd47-e022-4385-b588-4a61e64e5eed.wav ./1d213380-eee6-43ba-88db-99ba9b5609df.wav ./c85f65de-a4c1-43aa-a251-52ce4e9df271.wav ./7cd5fc65-665b-444c-9c9f-41f1ce8036f8.wav ./f74dbda7-1cf8-4056-bd30-523b74af8b0e.wav [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_paddlenlp_models.tar.gz \u5230 /dt_opt/paddlespeech/data/paddlenlp_models ./ ./packages/ ./models/ ./models/bert-base-chinese/ ./models/bert-base-chinese/bert-base-chinese-vocab.txt ./models/bert-base-chinese/tokenizer_config.json ./models/bert-base-chinese/vocab.txt ./models/bert-base-chinese/special_tokens_map.json ./models/embeddings/ ./models/.locks/ ./models/.locks/bert-base-chinese/ ./datasets/ [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_paddlespeech_models.tar.gz \u5230 /dt_opt/paddlespeech/data/paddlespeech_models ./ ./conf/ ./conf/cache.yaml ./models/ ./models/G2PWModel_1.1/ ./models/G2PWModel_1.1/config.py ./models/G2PWModel_1.1/MONOPHONIC_CHARS.txt ./models/G2PWModel_1.1/__pycache__/ ./models/G2PWModel_1.1/__pycache__/config.cpython-39.pyc ./models/G2PWModel_1.1/__pycache__/config.cpython-310.pyc ./models/G2PWModel_1.1/record.log ./models/G2PWModel_1.1/bopomofo_to_pinyin_wo_tune_dict.json ./models/G2PWModel_1.1/POLYPHONIC_CHARS.txt ./models/G2PWModel_1.1/char_bopomofo_dict.json ./models/G2PWModel_1.1/g2pW.onnx ./models/G2PWModel_1.1/version ./models/G2PWModel_1.1.zip ./models/conformer_wenetspeech-zh-16k/ ./models/conformer_wenetspeech-zh-16k/1.0/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/preprocess.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/tuning/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/tuning/decode.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/conformer.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/conformer_infer.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/data/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/data/lang_char/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/data/lang_char/vocab.txt ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/data/mean_std.json ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/model.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/exp/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/exp/conformer/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/exp/conformer/checkpoints/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/exp/conformer/checkpoints/wenetspeech.pdparams ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar.gz ./models/fastspeech2_csmsc-zh/ ./models/fastspeech2_csmsc-zh/1.0/ ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4.zip ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/ ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/snapshot_iter_76000.pdz ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/phone_id_map.txt ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/default.yaml ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/speech_stats.npy ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/pitch_stats.npy ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/energy_stats.npy ./models/hifigan_csmsc-zh/ ./models/hifigan_csmsc-zh/1.0/ ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1.zip ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1/ ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1/default.yaml ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1/snapshot_iter_2500000.pdz ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1/feats_stats.npy ./datasets/ [ SUCCESS ] \u6570\u636e\u5377\u89e3\u538b\u5b8c\u6210 [ INFO ] \u89e3\u538b\u955c\u50cf\u5305... [ SUCCESS ] \u955c\u50cf\u5305\u5df2\u79fb\u52a8\u5230 /dt_opt/paddlespeech/images [ INFO ] \u52a0\u8f7dDocker\u955c\u50cf... daf557c4f08e: Loading layer [================================================== > ] 81 .04MB/81.04MB d593918d433d: Loading layer [================================================== > ] 4 .123MB/4.123MB 7c4cff21e743: Loading layer [================================================== > ] 41 .36MB/41.36MB 25f6bb353e99: Loading layer [================================================== > ] 5 .12kB/5.12kB bc3a46414f17: Loading layer [================================================== > ] 1 .536kB/1.536kB 8fc7185920f1: Loading layer [================================================== > ] 3 .584kB/3.584kB bac2a7f893df: Loading layer [================================================== > ] 847MB/847MB 092bab498a3d: Loading layer [================================================== > ] 13 .31MB/13.31MB 19db93cce63e: Loading layer [================================================== > ] 2 .56kB/2.56kB 2fc7499dded4: Loading layer [================================================== > ] 3 .042GB/3.042GB 7da6b60d7eb7: Loading layer [================================================== > ] 2 .53MB/2.53MB 057242764992 : Loading layer [================================================== > ] 8 .704kB/8.704kB 9a996f3d539d: Loading layer [================================================== > ] 3 .072kB/3.072kB 4cdf0570391d: Loading layer [================================================== > ] 104 .2MB/104.2MB Loaded image: dt_iot/paddlespeech:latest [ SUCCESS ] \u955c\u50cf\u52a0\u8f7d\u6210\u529f [ INFO ] \u751f\u6210docker-compose.yaml... [ SUCCESS ] docker-compose.yaml\u521b\u5efa\u5b8c\u6210 [ INFO ] \u542f\u52a8\u5bb9\u5668... [ + ] Running 2 /2 \u2714 Network dtnet Created 0 .5s \u2714 Container paddlespeech Started 4 .6s [ SUCCESS ] \u5bb9\u5668\u542f\u52a8\u6210\u529f [ SUCCESS ] PaddleSpeech \u79bb\u7ebf\u5b89\u88c5\u5b8c\u6210\uff01 4. \u67e5\u770b\u5bb9\u5668\u8fd0\u884c\u72b6\u6001 \u00b6 docker ps 5. \u5b9e\u65f6\u67e5\u770b\u5bb9\u5668\u65e5\u5fd7 \u00b6 docker logs -f paddlespeech 6. \u7ba1\u7406\u5bb9\u5668 \u00b6 \u8fdb\u5165\u5bb9\u5668\u5668\u7684\u90e8\u7f72\u76ee\u5f55\uff1a /dt_opt/paddlespeech docker ps up -d # \u542f\u52a8\u5bb9\u5668 docker ps down # \u505c\u6b62\u5bb9\u5668 docker ps restart # \u91cd\u542f\u5bb9\u5668 docker ps logs -f paddlespeech # \u5b9e\u65f6\u67e5\u770b\u65e5\u5fd7 docker ps exec -it paddlespeech /bin/bash # \u8fdb\u5165\u5bb9\u5668 docker ps rm -f paddlespeech # \u5220\u9664\u5bb9\u5668 docker rmi dt_iot/paddlespeech:latest # \u5220\u9664\u955c\u50cf docker volume rm paddlespeech_data # \u5220\u9664\u6570\u636e\u5377 docker network rm dtnet # \u5220\u9664\u7f51\u7edc docker system prune -a # \u6e05\u7406\u65e0\u7528\u7684\u955c\u50cf\u3001\u5bb9\u5668\u3001\u6570\u636e\u5377\u3001\u7f51\u7edc\u7b49 \u4ee5\u4e0a\u662f\u5e38\u7528\u547d\u4ee4\uff0c\u4f7f\u7528\u65f6\u6839\u636e\u9700\u8981\u7075\u6d3b\u4f7f\u7528\u3002 7. \u8c03\u6574\u7aef\u53e3 \u00b6 \u627e\u5230\u6587\u4ef6 /dt_opt/paddlespeech/docker-compose.yaml \u4fee\u6539\u5bf9\u5e94\u7684\u7aef\u53e3\u53f7\uff0c\u5982\u4e0b\u6240\u793a\uff1a \u66f4\u6539\u7b2c\u4e00\u4e2a\u7aef\u53e3\u4e3a\u9700\u8981\u7684\u7aef\u53e3\u53f7\u5373\u53ef\uff0c\u5982\u4e0b\u6240\u793a: docker-compse down sudo nano ./docker-compose.yaml # \u4fee\u6539\u5bf9\u5e94\u7684\u7aef\u53e3\u53f7\uff0c\u7b2c6\u884c # - \"8001:8001\" # \u4fdd\u5b58\u9000\u51fa\uff0c\u91cd\u542f\u5bb9\u5668\u5373\u53ef\u751f\u6548 docker-compose up -d \u516d\u3001\u4f7f\u7528\u8bf4\u660e \u00b6 \u4e3a\u4e86\u65b9\u4fbf\u7684\u6f14\u793a\u5982\u4f55\u8c03\u7528\u8fd9\u4e2aapi\uff0c\u6211\u4eec\u63d0\u4f9b\u4e86\u4e00\u4e2a\u6d4b\u8bd5\u7f51\u9875, \u4e0b\u8f7d\u5730\u5740 \u4e3a: https://datacdn.data-it.tech/HomeAssistant/dokerimages/paddlespeech1.1/tts_demo.zip 1. \u8bed\u97f3\u5408\u6210\uff08TTS\uff09\u670d\u52a1 \u00b6 curl\u793a\u4f8b \u00b6 curl --request POST \\ --url http://ikuai.m-iot.tech:58150/tts \\ --header 'content-type: application/x-www-form-urlencoded' \\ --data 'text=\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5' \\ --data lang=zh \\ --data spk_id=0 HTTTP API\u8bf4\u660e \u00b6 POST /tts HTTP / 1.1 Content-Type : application/x-www-form-urlencoded Host : ikuai.m-iot.tech:58150 Content-Length : 103 text = %E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5 & lang = zh & spk_id = 0 Java \u793a\u4f8b \u00b6 //asynchttp AsyncHttpClient client = new DefaultAsyncHttpClient (); client . prepare ( \"POST\" , \"http://ikuai.m-iot.tech:58150/tts\" ) . setHeader ( \"content-type\" , \"application/x-www-form-urlencoded\" ) . setBody ( \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" ) . execute () . toCompletableFuture () . thenAccept ( System . out :: println ) . join (); client . close (); //nethttp HttpRequest request = HttpRequest . newBuilder () . uri ( URI . create ( \"http://ikuai.m-iot.tech:58150/tts\" )) . header ( \"content-type\" , \"application/x-www-form-urlencoded\" ) . method ( \"POST\" , HttpRequest . BodyPublishers . ofString ( \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" )) . build (); HttpResponse < String > response = HttpClient . newHttpClient (). send ( request , HttpResponse . BodyHandlers . ofString ()); System . out . println ( response . body ()); //okhttp OkHttpClient client = new OkHttpClient (); MediaType mediaType = MediaType . parse ( \"application/x-www-form-urlencoded\" ); RequestBody body = RequestBody . create ( mediaType , \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" ); Request request = new Request . Builder () . url ( \"http://ikuai.m-iot.tech:58150/tts\" ) . post ( body ) . addHeader ( \"content-type\" , \"application/x-www-form-urlencoded\" ) . build (); Response response = client . newCall ( request ). execute (); //unirest HttpResponse < String > response = Unirest . post ( \"http://ikuai.m-iot.tech:58150/tts\" ) . header ( \"content-type\" , \"application/x-www-form-urlencoded\" ) . body ( \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" ) . asString (); javaScript \u793a\u4f8b \u00b6 //Xhr const data = 'text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0' ; const xhr = new XMLHttpRequest (); xhr . withCredentials = true ; xhr . addEventListener ( 'readystatechange' , function () { if ( this . readyState === this . DONE ) { console . log ( this . responseText ); } }); xhr . open ( 'POST' , 'http://ikuai.m-iot.tech:58150/tts' ); xhr . setRequestHeader ( 'content-type' , 'application/x-www-form-urlencoded' ); xhr . send ( data ); //Axios import axios from 'axios' ; const encodedParams = new URLSearchParams (); encodedParams . set ( 'text' , '\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5' ); encodedParams . set ( 'lang' , 'zh' ); encodedParams . set ( 'spk_id' , '0' ); const options = { method : 'POST' , url : 'http://ikuai.m-iot.tech:58150/tts' , headers : { 'content-type' : 'application/x-www-form-urlencoded' }, data : encodedParams , }; try { const { data } = await axios . request ( options ); console . log ( data ); } catch ( error ) { console . error ( error ); } //Fetch const url = 'http://ikuai.m-iot.tech:58150/tts' ; const options = { method : 'POST' , headers : { 'content-type' : 'application/x-www-form-urlencoded' }, body : new URLSearchParams ({ text : '\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5' , lang : 'zh' , spk_id : '0' }) }; try { const response = await fetch ( url , options ); const data = await response . json (); console . log ( data ); } catch ( error ) { console . error ( error ); } //JQuery const settings = { async : true , crossDomain : true , url : 'http://ikuai.m-iot.tech:58150/tts' , method : 'POST' , headers : { 'content-type' : 'application/x-www-form-urlencoded' }, data : { text : '\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5' , lang : 'zh' , spk_id : '0' } }; $ . ajax ( settings ). done ( function ( response ) { console . log ( response ); }); C# \u793a\u4f8b \u00b6 //httpclient using System.Net.Http.Headers ; var client = new HttpClient (); var request = new HttpRequestMessage { Method = HttpMethod . Post , RequestUri = new Uri ( \"http://ikuai.m-iot.tech:58150/tts\" ), Content = new FormUrlEncodedContent ( new Dictionary < string , string > { { \"text\" , \"\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5\" }, { \"lang\" , \"zh\" }, { \"spk_id\" , \"0\" }, }), }; using ( var response = await client . SendAsync ( request )) { response . EnsureSuccessStatusCode (); var body = await response . Content . ReadAsStringAsync (); Console . WriteLine ( body ); } //restsharp var client = new RestClient ( \"http://ikuai.m-iot.tech:58150/tts\" ); var request = new RestRequest ( \"\" , Method . Post ); request . AddHeader ( \"content-type\" , \"application/x-www-form-urlencoded\" ); request . AddParameter ( \"application/x-www-form-urlencoded\" , \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" , ParameterType . RequestBody ); var response = client . Execute ( request ); go \u793a\u4f8b \u00b6 package main import ( \"fmt\" \"strings\" \"net/http\" \"io\" ) func main () { url := \"http://ikuai.m-iot.tech:58150/tts\" payload := strings . NewReader ( \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" ) req , _ := http . NewRequest ( \"POST\" , url , payload ) req . Header . Add ( \"content-type\" , \"application/x-www-form-urlencoded\" ) res , _ := http . DefaultClient . Do ( req ) defer res . Body . Close () body , _ := io . ReadAll ( res . Body ) fmt . Println ( res ) fmt . Println ( string ( body )) } \u8fd4\u56de\u7ed3\u679c \u00b6 Preparing request to http://ikuai.m-iot.tech:58150/tts Current time is 2025-09-21T07:49:17.236Z POST http://ikuai.m-iot.tech:58150/tts Accept: application/json, text/plain, */* Content-Type: application/x-www-form-urlencoded User-Agent: bruno-runtime/2.3.0 text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0 SSL validation: enabled HTTP/1.1 200 OK date: Sun, 21 Sep 2025 07:49:18 GMT server: uvicorn content-type: audio/wav content-disposition: attachment; filename=\"7b41c15b-e0a4-4ba5-aeb1-ceff058c90e6.wav\" content-length: 89444 last-modified: Sun, 21 Sep 2025 07:49:20 GMT etag: d85eaa2cadf7182ac9b54763e6a97e2c request-duration: 2224 Request completed in 2224 ms 2. \u8bed\u97f3\u8bc6\u522b\uff08ASR\uff09\u670d\u52a1 \u00b6 \u4e0a\u4f20\u6587\u4ef6\u8c03\u7528\u793a\u4f8b \u00b6 curl\u793a\u4f8b \u00b6 curl --request POST \\ --url http://ikuai.m-iot.tech:58150/asr \\ --header 'content-type: multipart/form-data' \\ --form 'file=@C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' \\ --form lang=zh \\ --form format=wav \\ --form sample_rate=16000 \u76f4\u63a5\u4e0a\u4f20\u6587\u4ef6\uff0c\u6587\u4ef6\u683c\u5f0f\u652f\u6301wav\u3001m4a\u3001mp3\u7b49\u5e38\u89c1\u97f3\u9891\u683c\u5f0f\uff0c\u670d\u52a1\u7aef\u4f1a\u81ea\u52a8\u8f6c\u6362\u4e3awav\u683c\u5f0f\u8fdb\u884c\u8bc6\u522b\u3002 curl --request POST \\ --url http://ikuai.m-iot.tech:58150/asr \\ --header 'content-type: multipart/form-data' \\ --form 'file=@C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' \\ --form lang=zh \u4f20\u5165\u53c2\u6570\u53ef\u4ee5\u53ea\u6709file\u4e0elang\u8fd9\u4e24\u4e2a\u53c2\u6570\uff0c\u5176\u5b83\u53c2\u6570\uff0c\u53ef\u4ee5\u5ffd\u7565\uff0c\u5982\u4e0b\u56fe\u6240\u793a HTTP \u793a\u4f8b\u8bf4\u660e \u00b6 POST /asr HTTP / 1.1 Content-Type : multipart/form-data; boundary=---011000010111000001101001 Host : ikuai.m-iot.tech:58150 Content-Length : 239 -----011000010111000001101001 Content-Disposition: form-data; name=\"file\" C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a -----011000010111000001101001 Content-Disposition: form-data; name=\"lang\" zh -----011000010111000001101001-- java \u793a\u4f8b \u00b6 // asynchttp AsyncHttpClient client = new DefaultAsyncHttpClient (); client . prepare ( \"POST\" , \"http://ikuai.m-iot.tech:58150/asr\" ) . setHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . setBody ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) . execute () . toCompletableFuture () . thenAccept ( System . out :: println ) . join (); client . close (); // nethttp HttpRequest request = HttpRequest . newBuilder () . uri ( URI . create ( \"http://ikuai.m-iot.tech:58150/asr\" )) . header ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . method ( \"POST\" , HttpRequest . BodyPublishers . ofString ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" )) . build (); HttpResponse < String > response = HttpClient . newHttpClient (). send ( request , HttpResponse . BodyHandlers . ofString ()); System . out . println ( response . body ()); // okhttp OkHttpClient client = new OkHttpClient (); MediaType mediaType = MediaType . parse ( \"multipart/form-data; boundary=---011000010111000001101001\" ); RequestBody body = RequestBody . create ( mediaType , \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ); Request request = new Request . Builder () . url ( \"http://ikuai.m-iot.tech:58150/asr\" ) . post ( body ) . addHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . build (); Response response = client . newCall ( request ). execute (); // unirest HttpResponse < String > response = Unirest . post ( \"http://ikuai.m-iot.tech:58150/asr\" ) . header ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . body ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) . asString (); javascript \u793a\u4f8b \u00b6 //xhr const data = new FormData (); data . append ( 'file' , 'C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' ); data . append ( 'lang' , 'zh' ); const xhr = new XMLHttpRequest (); xhr . withCredentials = true ; xhr . addEventListener ( 'readystatechange' , function () { if ( this . readyState === this . DONE ) { console . log ( this . responseText ); } }); xhr . open ( 'POST' , 'http://ikuai.m-iot.tech:58150/asr' ); xhr . send ( data ); // Axios import axios from 'axios' ; const form = new FormData (); form . append ( 'file' , 'C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' ); form . append ( 'lang' , 'zh' ); const options = { method : 'POST' , url : 'http://ikuai.m-iot.tech:58150/asr' , headers : { 'content-type' : 'multipart/form-data; boundary=---011000010111000001101001' }, data : '[form]' }; try { const { data } = await axios . request ( options ); console . log ( data ); } catch ( error ) { console . error ( error ); } // fetch const url = 'http://ikuai.m-iot.tech:58150/asr' ; const form = new FormData (); form . append ( 'file' , 'C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' ); form . append ( 'lang' , 'zh' ); const options = { method : 'POST' }; options . body = form ; try { const response = await fetch ( url , options ); const data = await response . json (); console . log ( data ); } catch ( error ) { console . error ( error ); } //jquery const form = new FormData (); form . append ( 'file' , 'C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' ); form . append ( 'lang' , 'zh' ); const settings = { async : true , crossDomain : true , url : 'http://ikuai.m-iot.tech:58150/asr' , method : 'POST' , headers : {}, processData : false , contentType : false , mimeType : 'multipart/form-data' , data : form }; $ . ajax ( settings ). done ( function ( response ) { console . log ( response ); }); C# \u793a\u4f8b \u00b6 //httpclient using System.Net.Http.Headers ; var client = new HttpClient (); var request = new HttpRequestMessage { Method = HttpMethod . Post , RequestUri = new Uri ( \"http://ikuai.m-iot.tech:58150/asr\" ), Content = new MultipartFormDataContent { new StringContent ([ \"C:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\" ]) { Headers = { ContentDisposition = new ContentDispositionHeaderValue ( \"form-data\" ) { Name = \"file\" , FileName = \"C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a\" , } } }, new StringContent ( \"zh\" ) { Headers = { ContentDisposition = new ContentDispositionHeaderValue ( \"form-data\" ) { Name = \"lang\" , } } }, }, }; using ( var response = await client . SendAsync ( request )) { response . EnsureSuccessStatusCode (); var body = await response . Content . ReadAsStringAsync (); Console . WriteLine ( body ); } //Restsharp var client = new RestClient ( \"http://ikuai.m-iot.tech:58150/asr\" ); var request = new RestRequest ( \"\" , Method . Post ); request . AddHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ); request . AddParameter ( \"multipart/form-data; boundary=---011000010111000001101001\" , \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" , ParameterType . RequestBody ); var response = client . Execute ( request ); go \u793a\u4f8b \u00b6 package main import ( \"fmt\" \"strings\" \"net/http\" \"io\" ) func main () { url := \"http://ikuai.m-iot.tech:58150/asr\" payload := strings . NewReader ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) req , _ := http . NewRequest ( \"POST\" , url , payload ) req . Header . Add ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) res , _ := http . DefaultClient . Do ( req ) defer res . Body . Close () body , _ := io . ReadAll ( res . Body ) fmt . Println ( res ) fmt . Println ( string ( body )) } java \u793a\u4f8b \u00b6 // asynchttp AsyncHttpClient client = new DefaultAsyncHttpClient (); client . prepare ( \"POST\" , \"http://ikuai.m-iot.tech:58150/asr\" ) . setHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . setBody ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) . execute () . toCompletableFuture () . thenAccept ( System . out :: println ) . join (); client . close (); // nethttp HttpRequest request = HttpRequest . newBuilder () . uri ( URI . create ( \"http://ikuai.m-iot.tech:58150/asr\" )) . header ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . method ( \"POST\" , HttpRequest . BodyPublishers . ofString ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" )) . build (); HttpResponse < String > response = HttpClient . newHttpClient (). send ( request , HttpResponse . BodyHandlers . ofString ()); System . out . println ( response . body ()); // okhttp OkHttpClient client = new OkHttpClient (); MediaType mediaType = MediaType . parse ( \"multipart/form-data; boundary=---011000010111000001101001\" ); RequestBody body = RequestBody . create ( mediaType , \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ); Request request = new Request . Builder () . url ( \"http://ikuai.m-iot.tech:58150/asr\" ) . post ( body ) . addHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . build (); Response response = client . newCall ( request ). execute (); // unirest HttpResponse < String > response = Unirest . post ( \"http://ikuai.m-iot.tech:58150/asr\" ) . header ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . body ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) . asString (); \u8fd4\u56de\u7ed3\u679c \u00b6 { \"result\" : \"\u5582\u8bed\u97f3\u6d4b\u8bd5\u8bed\u97f3\u6d4b\u8bd5\u5f55\u97f3\u6d4b\u8bd5\u5f55\u97f3\u6d4b\u8bd5\" , \"file_size\" : 185334 , \"wav_info\" : { \"n_channels\" : 1 , \"sample_width\" : 2 , \"framerate\" : 16000 , \"n_frames\" : 115029 , \"duration\" : 7.1893125 }, \"ffmpeg_log\" : \"\" } body { \"_overheadLength\" : 252 , \"_valueLength\" : 2 , \"_valuesToMeasure\" : [ { \"fd\" : null , \"path\" : \"C:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\" , \"flags\" : \"r\" , \"mode\" : 438 , \"end\" : null , \"bytesRead\" : 0 , \"_events\" : {}, \"_readableState\" : { \"highWaterMark\" : 65536 , \"buffer\" : [], \"bufferIndex\" : 0 , \"length\" : 0 , \"pipes\" : [], \"awaitDrainWriters\" : null }, \"_eventsCount\" : 3 } ], \"writable\" : false , \"readable\" : true , \"dataSize\" : 0 , \"maxDataSize\" : 2097152 , \"pauseStreams\" : true , \"_released\" : false , \"_streams\" : [ \"----------------------------147555471668548578107544\\r\\nContent-Disposition: form-data; name=\\\"file\\\"; filename=\\\"\u5f55\u97f3 (6).m4a\\\"\\r\\nContent-Type: wav\\r\\n\\r\\n\" , { \"source\" : \"[Circular]\" , \"dataSize\" : 0 , \"maxDataSize\" : null , \"pauseStream\" : true , \"_maxDataSizeExceeded\" : false , \"_released\" : false , \"_bufferedEvents\" : [ { \"0\" : \"pause\" } ], \"_events\" : {}, \"_eventsCount\" : 1 }, null , \"----------------------------147555471668548578107544\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\n\" , \"zh\" , null ], \"_currentStream\" : null , \"_insideLoop\" : false , \"_pendingNext\" : false , \"_boundary\" : \"--------------------------147555471668548578107544\" } ***Network Logs *** Preparing request to http://ikuai.m-iot.tech:58150/asr Current time is 2025-09-21T08:22:20.590Z POST http://ikuai.m-iot.tech:58150/asr Accept: application/json, text/plain, */* Content-Type: multipart/form-data; boundary=--------------------------147555471668548578107544 User-Agent: bruno-runtime/2.3.0 { \"_overheadLength\": 252, \"_valueLength\": 2, \"_valuesToMeasure\": [ { \"fd\": null, \"path\": \"C:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\", \"flags\": \"r\", \"mode\": 438, \"end\": null, \"bytesRead\": 0, \"_events\": {}, \"_readableState\": { \"highWaterMark\": 65536, \"buffer\": [], \"bufferIndex\": 0, \"length\": 0, \"pipes\": [], \"awaitDrainWriters\": null }, \"_eventsCount\": 3 } ], \"writable\": false, \"readable\": true, \"dataSize\": 0, \"maxDataSize\": 2097152, \"pauseStreams\": true, \"_released\": false, \"_streams\": [ \"----------------------------147555471668548578107544\\r\\nContent-Disposition: form-data; name=\\\"file\\\"; filename=\\\"\u5f55\u97f3 (6).m4a\\\"\\r\\nContent-Type: wav\\r\\n\\r\\n\", { \"source\": { \"fd\": null, \"path\": \"C:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\", \"flags\": \"r\", \"mode\": 438, \"end\": null, \"bytesRead\": 0, \"_events\": {}, \"_readableState\": { \"highWaterMark\": 65536, \"buffer\": [], \"bufferIndex\": 0, \"length\": 0, \"pipes\": [], \"awaitDrainWriters\": null }, \"_eventsCount\": 3 }, \"dataSize\": 0, \"maxDataSize\": null, \"pauseStream\": true, \"_maxDataSizeExceeded\": false, \"_released\": false, \"_bufferedEvents\": [ { \"0\": \"pause\" } ], \"_events\": {}, \"_eventsCount\": 1 }, null, \"----------------------------147555471668548578107544\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\n\", \"zh\", null ], \"_currentStream\": null, \"_insideLoop\": false, \"_pendingNext\": false, \"_boundary\": \"--------------------------147555471668548578107544\" } SSL validation: enabled HTTP/1.1 200 OK date: Sun, 21 Sep 2025 08:22:21 GMT server: uvicorn content-length: 201 content-type: application/json request-duration: 6989 Request completed in 6989 ms \u6d4f\u89c8\u5668\u5f55\u97f3\u8bc6\u522b\u793a\u4f8b \u00b6 \u8bf4\u660e paddlespeech\u4e2d\u7528\u7684\u4e00\u4e2a\u5e93\u6709\u53ef\u80fd\u662f\u5355\u7ebf\u7a0b\u7684\uff0c\u6240\u4ee5\u5728\u9ad8\u5e76\u53d1\u573a\u666f\u4e0b\uff0c\u53ef\u80fd\u4f1a\u51fa\u73b0\u54cd\u5e94\u53d8\u6162\u7684\u60c5\u51b5\uff0c\u8fd9\u4e2a\u65f6\u5019\uff0c\u53ef\u4ee5\u8003\u8651\u589e\u52a0\u5b9e\u4f8b\u6765\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\u3002 \u5b9e\u9645\u4f7f\u7528\u65f6,\u5982\u679c\u60f3\u63d0\u9ad8\u5e76\u53d1\u80fd\u529b\uff0c\u53ef\u4ee5\u5c1d\u8bd5\u66f4\u6539\u73af\u5883\u53d8\u91cf\u4e2d\u7684PYTHONUNBUFFFERED=4,\u6216\u66f4\u9ad8\u4e00\u4e2a\u9002\u5408\u7684\u6570\u5b57\uff0c\u6765\u63d0\u9ad8\u5e76\u53d1\u80fd\u529b\u3002 \u300a\u5b8c\u300b","title":"\u8bed\u97f3\u5408\u6210\u4e0e\u8bc6\u522b\u670d\u52a1Docker-\u90e8\u7f72\u8bf4\u660e"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#docker-","text":"pre, code { white-space: pre-wrap; word-break: break-all; }","title":"\u8bed\u97f3\u5408\u6210\u4e0e\u8bc6\u522b\u670d\u52a1Docker-\u90e8\u7f72\u8bf4\u660e"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_1","text":"\u8bed\u97f3\u5408\u6210\u4e0e\u8bc6\u522b\u670d\u52a1\uff08\u4ee5\u4e0b\u7b80\u79f0\u201c\u670d\u52a1\u201d\uff09\u63d0\u4f9b\u9ad8\u8d28\u91cf\u7684\u6587\u672c\u8f6c\u8bed\u97f3\uff08TTS\uff09\u548c\u8bed\u97f3\u8f6c\u6587\u672c\uff08ASR\uff09\u529f\u80fd\u3002\u4e3a\u4e86\u65b9\u4fbf\u7528\u6237\u5feb\u901f\u90e8\u7f72\u548c\u4f7f\u7528\u8be5\u670d\u52a1\uff0c\u6211\u4eec\u63d0\u4f9b\u4e86\u57fa\u4e8eDocker\u7684\u90e8\u7f72\u65b9\u6848\u3002\u672c\u6587\u6863\u5c06\u8be6\u7ec6\u4ecb\u7ecd\u5982\u4f55\u4f7f\u7528Docker\u90e8\u7f72\u8be5\u670d\u52a1\u3002 \u672c\u6587\u63d0\u4f9b\u7684\u8bed\u97f3\u5408\u6210\u4e0e\u8bc6\u522b\u670d\u52a1\uff0c\u662f\u57fa\u4e8epaddlespeech\u5f00\u53d1\u7684TTS\u548cASR\u670d\u52a1(\u7eafCPU\u670d\u52a1)\uff0c\u7528\u6237\u53ef\u4ee5\u901a\u8fc7Docker\u5feb\u901f\u90e8\u7f72\u5e76\u4f7f\u7528\u8be5\u670d\u52a1\u3002","title":"\u4e00\u3001\u7b80\u4ecb"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_2","text":"\u5728\u5f00\u59cb\u90e8\u7f72\u4e4b\u524d\uff0c\u8bf7\u786e\u4fdd\u60a8\u7684\u73af\u5883\u6ee1\u8db3\u4ee5\u4e0b\u8981\u6c42\uff1a 1. \u5df2\u5b89\u88c5Docker\u548cDocker Compose\u3002 2. \u5177\u5907\u4e00\u5b9a\u7684Linux\u547d\u4ee4\u884c\u64cd\u4f5c\u57fa\u7840\u3002 3. \u786e\u4fdd\u60a8\u7684\u670d\u52a1\u5668\u5177\u5907\u8db3\u591f\u7684\u8ba1\u7b97\u8d44\u6e90\uff08CPU\u3001\u5185\u5b58\u3001GPU\u7b49\uff09\u3002","title":"\u4e8c\u3001\u73af\u5883\u51c6\u5907"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#docker","text":"\u6211\u4eec\u63d0\u4f9b\u4e86\u9884\u6784\u5efa\u7684Docker\u955c\u50cf\uff0c\u5730\u5740\u4f4d\u4e8e\u4e03\u725b\u4e91\uff0c \u4e0b\u8f7d\u5730\u5740 \u4e3a\uff1a https://datacdn.data-it.tech/HomeAssistant/dokerimages/paddlespeech1.1/paddlespeech.tar","title":"\u4e09\u3001\u83b7\u53d6Docker\u955c\u50cf"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_3","text":"","title":"\u56db\u3001\u5728\u7ebf\u90e8\u7f72\u6b65\u9aa4"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_4","text":"curl -fsSL https://datacdn.data-it.tech/HomeAssistant/dokerimages/paddlespeech1.1/install-paddlespeech.sh | sudo bash","title":"\u6267\u884c\u4e00\u952e\u5b89\u88c5\u811a\u672c"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_5","text":"","title":"\u5982\u4e0b\u56fe\u6240\u793a:"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_6","text":"\u4f7f\u7528TTS\u6216asr\u670d\u52a1\uff0c\u9996\u6b21\u8fd0\u884c\u4f1a\u81ea\u52a8\u4e0b\u8f7d\u6a21\u578b\u6587\u4ef6\uff0c\u6a21\u578b\u6587\u4ef6\u8f83\u5927, \u4e0b\u8f7d\u8fc7\u7a0b\u7ea6\u970010\u5206\u949f \uff0c\u8bf7\u8010\u5fc3\u7b49\u5f85\u3002","title":"\u9996\u6b21\u8fd0\u884c"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_7","text":"\u6211\u4eec\u53ef\u4ee5\u5982\u7528\u4e0b\u547d\u4ee4\u5b9e\u65f6\u67e5\u770b\u8fd0\u884c\u65e5\u5fd7: docker logs -f paddlespeech TTS\u6a21\u578b\u9996\u6b21\u4f7f\u7528\u65f6\u4f8d\u81ea\u52a8\u4ece\u7f51\u7edc\u4e0b\u8f7d\u7ea62G\u7684\u6a21\u578b\u6587\u4ef6\uff0c\u4e0b\u8f7d\u5b8c\u6210\u540e\u4f1a\u81ea\u52a8\u542f\u52a8\u670d\u52a1\u3002\u540e\u7eed\u518d\u6b21\u4f7f\u7528\u65f6\uff0c\u4e0d\u4f1a\u91cd\u590d\u4e0b\u8f7d\u6a21\u578b\u6587\u4ef6\u3002 Asr\u6a21\u578b\u9996\u6b21\u4f7f\u7528\u65f6\u4f8d\u81ea\u52a8\u4ece\u7f51\u7edc\u4e0b\u8f7d\u7ea61G\u7684\u6a21\u578b\u6587\u4ef6\uff0c\u4e0b\u8f7d\u5b8c\u6210\u540e\u4f1a\u81ea\u52a8\u542f\u52a8\u670d\u52a1\u3002\u540e\u7eed\u518d\u6b21\u4f7f\u7528\u65f6\uff0c\u4e0d\u4f1a\u91cd\u590d\u4e0b\u8f7d\u6a21\u578b\u6587\u4ef6\u3002","title":"\u5982\u4e0b\u6240\u793a"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_8","text":"","title":"\u4e94\u3001\u79bb\u7ebf\u90e8\u7f72\u6b65\u9aa4"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_9","text":"Docker\u955c\u50cf\u6587\u4ef6: \u4e0b\u8f7d\u5730\u5740 \u6570\u636e\u5377\u6587\u4ef6: \u4ee5\u4e0b\u6587\u4ef6\u8981\u4e0b\u8f7d\u5e76\u590d\u5236\u5230\u76ee\u6807\u673a\u5668\u4e34\u65f6\u8ba4\u7f6e\u7684\u76ee\u5f55,\u4e0einstall-paddlespeech-localh.sh\u6240\u5728\u76ee\u5f55\u540c\u7ea7\u7684\u5b50\u76ee\u5f55data\u76ee\u5f55\u4e0b home_dtuser_opt_paddlespeech_data_logs.tar.gz home_dtuser_opt_paddlespeech_data_nltk_data.tar.gz home_dtuser_opt_paddlespeech_data_output.tar.gz home_dtuser_opt_paddlespeech_data_paddlenlp_models.tar.gz home_dtuser_opt_paddlespeech_data_paddlespeech_models.tar.gz \u79bb\u7ebf\u5b89\u88c5\u811a\u672c: \u4e0b\u8f7d\u5730\u5740 \u6d4b\u8bd5\u6f14\u793a\u4f7f\u7528\u7f51\u9875: \u4e0b\u8f7d\u5730\u5740 \u79bb\u7ebf\u5b89\u88c5\u5305\u5206\u4e24\u90e8\u4efd\uff0c\u4e00\u90e8\u4efd\u662f\u5bb9\u5668\u955c\u50cf\uff0c\u4e00\u90e8\u4efd\u662f\u6570\u636e\u5377\u6587\u4ef6\uff0c\u5b89\u88c5\u542f\u52a8\u5bb9\u5668\u524d\u5148\u66ff\u6362\u5bf9\u636e\u5377\u7ed1\u5b9a\u7684\u76ee\u5f55\uff0c\u8fd9\u6837\u5bb9\u5668\u542f\u52a8\u540e\u65e0\u987b\u4e0b\u8f7d\u6a21\u578b\uff0c\u53ef\u4ee5\u5728\u65e0\u4e92\u8054\u7f51\u7684\u60c5\u51b5\u4e0b\u76f4\u63a5\u4f7f\u7528","title":"\u79bb\u7ebf\u90e8\u7f72\u7684\u76f8\u5173\u6587\u4ef6\u4e0b\u8f7d\u5730\u5740"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#1-docker","text":"\u5982\u4e0b\u793a\u4f8b\uff0c\u6211\u4eec\u5c06\u6587\u4ef6\u653e\u5230\u7528\u6237\u76ee\u5f55\u7684down\u4e0b,\u8bf7\u4fdd\u6301\u76f8\u5e94\u7684\u76ee\u5f55\u7ed3\u6784\uff0c\u5982\u4e0b\u6240\u793a\uff1a tst@tst-VMware-Virtual-Platform:~/down$ pwd /home/tst/down tst@tst-VMware-Virtual-Platform:~/down$ ls data install-paddlespeech-localh.sh tst@tst-VMware-Virtual-Platform:~/down$ tree . \u251c\u2500\u2500 data \u2502 \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_logs.tar.gz \u2502 \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_nltk_data.tar.gz \u2502 \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_output.tar.gz \u2502 \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_paddlenlp_models.tar.gz \u2502 \u2514\u2500\u2500 home_dtuser_opt_paddlespeech_data_paddlespeech_models.tar.gz \u251c\u2500\u2500 home_dtuser_opt_paddlespeech_data_paddlespeech_models.tar.gz \u2514\u2500\u2500 install-paddlespeech-localh.sh 2 directories, 7 files","title":"1. \u4e0b\u8f7dDocker\u955c\u50cf\u4e0e\u6570\u636e\u5377\u6587\u4ef6"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#2","text":"chmod +x install-paddlespeech-localh.sh","title":"2. \u7ed9\u8fd0\u884c\u811a\u672c\u6dfb\u52a0\u6267\u884c\u6743\u9650"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#3","text":"sudo ./install-paddlespeech-localh.sh \u6309\u88c5\u811a\u672c\u5c06\u4f1a\u5148\u89e3\u538b\u6587\u4ef6\uff0c\u5e76\u52a0\u8f7ddocker\u955c\u50cf\uff0c\u7136\u540e\u542f\u52a8\u5bb9\u5668\uff0c\u542f\u52a8\u5b8c\u6210\u540e\uff0c\u53ef\u4ee5\u4f7f\u7528docker ps\u547d\u4ee4\u67e5\u770b\u8fd0\u884c\u72b6\u6001\uff0c\u5982\u4e0b\u6240\u793a\uff1a tst@tst-VMware-Virtual-Platform:~/down$ sudo ./install-paddlespeech-localh.sh [ INFO ] \u5f00\u59cb PaddleSpeech \u79bb\u7ebf\u5b89\u88c5... [ SUCCESS ] \u78c1\u76d8\u7a7a\u95f4\u68c0\u67e5\u901a\u8fc7\uff0855GB\uff09 [ INFO ] \u68c0\u6d4b\u7f51\u7edc\u8fde\u63a5... [ SUCCESS ] \u7f51\u7edc\u8fde\u63a5\u6b63\u5e38 [ INFO ] \u521b\u5efa\u76ee\u5f55\u7ed3\u6784... [ SUCCESS ] \u76ee\u5f55\u7ed3\u6784\u521b\u5efa\u5b8c\u6210 [ INFO ] \u89e3\u538b\u6570\u636e\u5377... [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_logs.tar.gz \u5230 /dt_opt/paddlespeech/data/logs ./ [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_nltk_data.tar.gz \u5230 /dt_opt/paddlespeech/data/nltk_data ./ ./taggers/ ./taggers/averaged_perceptron_tagger/ ./taggers/averaged_perceptron_tagger/averaged_perceptron_tagger.pickle ./taggers/averaged_perceptron_tagger.zip ./corpora/ ./corpora/cmudict/ ./corpora/cmudict/cmudict ./corpora/cmudict/README ./corpora/cmudict.zip [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_output.tar.gz \u5230 /dt_opt/paddlespeech/data/output ./ ./2753d658-b228-4ae6-94fc-3404a41f4526.wav ./9f24d71e-9f29-4d60-aa13-677fd19bba46.wav ./38ea94c6-e19b-4e41-8cca-454d8e374a15.wav ./d44aa891-c36b-473f-aef3-44484f0cd74b.wav ./c5ef53d3-502b-4f81-9fdd-583836ba7096.wav ./3931cd47-e022-4385-b588-4a61e64e5eed.wav ./1d213380-eee6-43ba-88db-99ba9b5609df.wav ./c85f65de-a4c1-43aa-a251-52ce4e9df271.wav ./7cd5fc65-665b-444c-9c9f-41f1ce8036f8.wav ./f74dbda7-1cf8-4056-bd30-523b74af8b0e.wav [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_paddlenlp_models.tar.gz \u5230 /dt_opt/paddlespeech/data/paddlenlp_models ./ ./packages/ ./models/ ./models/bert-base-chinese/ ./models/bert-base-chinese/bert-base-chinese-vocab.txt ./models/bert-base-chinese/tokenizer_config.json ./models/bert-base-chinese/vocab.txt ./models/bert-base-chinese/special_tokens_map.json ./models/embeddings/ ./models/.locks/ ./models/.locks/bert-base-chinese/ ./datasets/ [ INFO ] \u6b63\u5728\u89e3\u538b: /home/tst/down/data/home_dtuser_opt_paddlespeech_data_paddlespeech_models.tar.gz \u5230 /dt_opt/paddlespeech/data/paddlespeech_models ./ ./conf/ ./conf/cache.yaml ./models/ ./models/G2PWModel_1.1/ ./models/G2PWModel_1.1/config.py ./models/G2PWModel_1.1/MONOPHONIC_CHARS.txt ./models/G2PWModel_1.1/__pycache__/ ./models/G2PWModel_1.1/__pycache__/config.cpython-39.pyc ./models/G2PWModel_1.1/__pycache__/config.cpython-310.pyc ./models/G2PWModel_1.1/record.log ./models/G2PWModel_1.1/bopomofo_to_pinyin_wo_tune_dict.json ./models/G2PWModel_1.1/POLYPHONIC_CHARS.txt ./models/G2PWModel_1.1/char_bopomofo_dict.json ./models/G2PWModel_1.1/g2pW.onnx ./models/G2PWModel_1.1/version ./models/G2PWModel_1.1.zip ./models/conformer_wenetspeech-zh-16k/ ./models/conformer_wenetspeech-zh-16k/1.0/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/preprocess.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/tuning/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/tuning/decode.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/conformer.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/conf/conformer_infer.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/data/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/data/lang_char/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/data/lang_char/vocab.txt ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/data/mean_std.json ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/model.yaml ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/exp/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/exp/conformer/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/exp/conformer/checkpoints/ ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar/exp/conformer/checkpoints/wenetspeech.pdparams ./models/conformer_wenetspeech-zh-16k/1.0/asr1_conformer_wenetspeech_ckpt_0.1.1.model.tar.gz ./models/fastspeech2_csmsc-zh/ ./models/fastspeech2_csmsc-zh/1.0/ ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4.zip ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/ ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/snapshot_iter_76000.pdz ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/phone_id_map.txt ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/default.yaml ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/speech_stats.npy ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/pitch_stats.npy ./models/fastspeech2_csmsc-zh/1.0/fastspeech2_nosil_baker_ckpt_0.4/energy_stats.npy ./models/hifigan_csmsc-zh/ ./models/hifigan_csmsc-zh/1.0/ ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1.zip ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1/ ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1/default.yaml ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1/snapshot_iter_2500000.pdz ./models/hifigan_csmsc-zh/1.0/hifigan_csmsc_ckpt_0.1.1/feats_stats.npy ./datasets/ [ SUCCESS ] \u6570\u636e\u5377\u89e3\u538b\u5b8c\u6210 [ INFO ] \u89e3\u538b\u955c\u50cf\u5305... [ SUCCESS ] \u955c\u50cf\u5305\u5df2\u79fb\u52a8\u5230 /dt_opt/paddlespeech/images [ INFO ] \u52a0\u8f7dDocker\u955c\u50cf... daf557c4f08e: Loading layer [================================================== > ] 81 .04MB/81.04MB d593918d433d: Loading layer [================================================== > ] 4 .123MB/4.123MB 7c4cff21e743: Loading layer [================================================== > ] 41 .36MB/41.36MB 25f6bb353e99: Loading layer [================================================== > ] 5 .12kB/5.12kB bc3a46414f17: Loading layer [================================================== > ] 1 .536kB/1.536kB 8fc7185920f1: Loading layer [================================================== > ] 3 .584kB/3.584kB bac2a7f893df: Loading layer [================================================== > ] 847MB/847MB 092bab498a3d: Loading layer [================================================== > ] 13 .31MB/13.31MB 19db93cce63e: Loading layer [================================================== > ] 2 .56kB/2.56kB 2fc7499dded4: Loading layer [================================================== > ] 3 .042GB/3.042GB 7da6b60d7eb7: Loading layer [================================================== > ] 2 .53MB/2.53MB 057242764992 : Loading layer [================================================== > ] 8 .704kB/8.704kB 9a996f3d539d: Loading layer [================================================== > ] 3 .072kB/3.072kB 4cdf0570391d: Loading layer [================================================== > ] 104 .2MB/104.2MB Loaded image: dt_iot/paddlespeech:latest [ SUCCESS ] \u955c\u50cf\u52a0\u8f7d\u6210\u529f [ INFO ] \u751f\u6210docker-compose.yaml... [ SUCCESS ] docker-compose.yaml\u521b\u5efa\u5b8c\u6210 [ INFO ] \u542f\u52a8\u5bb9\u5668... [ + ] Running 2 /2 \u2714 Network dtnet Created 0 .5s \u2714 Container paddlespeech Started 4 .6s [ SUCCESS ] \u5bb9\u5668\u542f\u52a8\u6210\u529f [ SUCCESS ] PaddleSpeech \u79bb\u7ebf\u5b89\u88c5\u5b8c\u6210\uff01","title":"3. \u6267\u884c\u5b89\u88c5\u811a\u672c"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#4","text":"docker ps","title":"4. \u67e5\u770b\u5bb9\u5668\u8fd0\u884c\u72b6\u6001"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#5","text":"docker logs -f paddlespeech","title":"5. \u5b9e\u65f6\u67e5\u770b\u5bb9\u5668\u65e5\u5fd7"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#6","text":"\u8fdb\u5165\u5bb9\u5668\u5668\u7684\u90e8\u7f72\u76ee\u5f55\uff1a /dt_opt/paddlespeech docker ps up -d # \u542f\u52a8\u5bb9\u5668 docker ps down # \u505c\u6b62\u5bb9\u5668 docker ps restart # \u91cd\u542f\u5bb9\u5668 docker ps logs -f paddlespeech # \u5b9e\u65f6\u67e5\u770b\u65e5\u5fd7 docker ps exec -it paddlespeech /bin/bash # \u8fdb\u5165\u5bb9\u5668 docker ps rm -f paddlespeech # \u5220\u9664\u5bb9\u5668 docker rmi dt_iot/paddlespeech:latest # \u5220\u9664\u955c\u50cf docker volume rm paddlespeech_data # \u5220\u9664\u6570\u636e\u5377 docker network rm dtnet # \u5220\u9664\u7f51\u7edc docker system prune -a # \u6e05\u7406\u65e0\u7528\u7684\u955c\u50cf\u3001\u5bb9\u5668\u3001\u6570\u636e\u5377\u3001\u7f51\u7edc\u7b49 \u4ee5\u4e0a\u662f\u5e38\u7528\u547d\u4ee4\uff0c\u4f7f\u7528\u65f6\u6839\u636e\u9700\u8981\u7075\u6d3b\u4f7f\u7528\u3002","title":"6. \u7ba1\u7406\u5bb9\u5668"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#7","text":"\u627e\u5230\u6587\u4ef6 /dt_opt/paddlespeech/docker-compose.yaml \u4fee\u6539\u5bf9\u5e94\u7684\u7aef\u53e3\u53f7\uff0c\u5982\u4e0b\u6240\u793a\uff1a \u66f4\u6539\u7b2c\u4e00\u4e2a\u7aef\u53e3\u4e3a\u9700\u8981\u7684\u7aef\u53e3\u53f7\u5373\u53ef\uff0c\u5982\u4e0b\u6240\u793a: docker-compse down sudo nano ./docker-compose.yaml # \u4fee\u6539\u5bf9\u5e94\u7684\u7aef\u53e3\u53f7\uff0c\u7b2c6\u884c # - \"8001:8001\" # \u4fdd\u5b58\u9000\u51fa\uff0c\u91cd\u542f\u5bb9\u5668\u5373\u53ef\u751f\u6548 docker-compose up -d","title":"7. \u8c03\u6574\u7aef\u53e3"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_10","text":"\u4e3a\u4e86\u65b9\u4fbf\u7684\u6f14\u793a\u5982\u4f55\u8c03\u7528\u8fd9\u4e2aapi\uff0c\u6211\u4eec\u63d0\u4f9b\u4e86\u4e00\u4e2a\u6d4b\u8bd5\u7f51\u9875, \u4e0b\u8f7d\u5730\u5740 \u4e3a: https://datacdn.data-it.tech/HomeAssistant/dokerimages/paddlespeech1.1/tts_demo.zip","title":"\u516d\u3001\u4f7f\u7528\u8bf4\u660e"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#1-tts","text":"","title":"1. \u8bed\u97f3\u5408\u6210\uff08TTS\uff09\u670d\u52a1"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#curl","text":"curl --request POST \\ --url http://ikuai.m-iot.tech:58150/tts \\ --header 'content-type: application/x-www-form-urlencoded' \\ --data 'text=\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5' \\ --data lang=zh \\ --data spk_id=0","title":"curl\u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#htttp-api","text":"POST /tts HTTP / 1.1 Content-Type : application/x-www-form-urlencoded Host : ikuai.m-iot.tech:58150 Content-Length : 103 text = %E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5 & lang = zh & spk_id = 0","title":"HTTTP API\u8bf4\u660e"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#java","text":"//asynchttp AsyncHttpClient client = new DefaultAsyncHttpClient (); client . prepare ( \"POST\" , \"http://ikuai.m-iot.tech:58150/tts\" ) . setHeader ( \"content-type\" , \"application/x-www-form-urlencoded\" ) . setBody ( \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" ) . execute () . toCompletableFuture () . thenAccept ( System . out :: println ) . join (); client . close (); //nethttp HttpRequest request = HttpRequest . newBuilder () . uri ( URI . create ( \"http://ikuai.m-iot.tech:58150/tts\" )) . header ( \"content-type\" , \"application/x-www-form-urlencoded\" ) . method ( \"POST\" , HttpRequest . BodyPublishers . ofString ( \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" )) . build (); HttpResponse < String > response = HttpClient . newHttpClient (). send ( request , HttpResponse . BodyHandlers . ofString ()); System . out . println ( response . body ()); //okhttp OkHttpClient client = new OkHttpClient (); MediaType mediaType = MediaType . parse ( \"application/x-www-form-urlencoded\" ); RequestBody body = RequestBody . create ( mediaType , \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" ); Request request = new Request . Builder () . url ( \"http://ikuai.m-iot.tech:58150/tts\" ) . post ( body ) . addHeader ( \"content-type\" , \"application/x-www-form-urlencoded\" ) . build (); Response response = client . newCall ( request ). execute (); //unirest HttpResponse < String > response = Unirest . post ( \"http://ikuai.m-iot.tech:58150/tts\" ) . header ( \"content-type\" , \"application/x-www-form-urlencoded\" ) . body ( \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" ) . asString ();","title":"Java \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#javascript","text":"//Xhr const data = 'text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0' ; const xhr = new XMLHttpRequest (); xhr . withCredentials = true ; xhr . addEventListener ( 'readystatechange' , function () { if ( this . readyState === this . DONE ) { console . log ( this . responseText ); } }); xhr . open ( 'POST' , 'http://ikuai.m-iot.tech:58150/tts' ); xhr . setRequestHeader ( 'content-type' , 'application/x-www-form-urlencoded' ); xhr . send ( data ); //Axios import axios from 'axios' ; const encodedParams = new URLSearchParams (); encodedParams . set ( 'text' , '\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5' ); encodedParams . set ( 'lang' , 'zh' ); encodedParams . set ( 'spk_id' , '0' ); const options = { method : 'POST' , url : 'http://ikuai.m-iot.tech:58150/tts' , headers : { 'content-type' : 'application/x-www-form-urlencoded' }, data : encodedParams , }; try { const { data } = await axios . request ( options ); console . log ( data ); } catch ( error ) { console . error ( error ); } //Fetch const url = 'http://ikuai.m-iot.tech:58150/tts' ; const options = { method : 'POST' , headers : { 'content-type' : 'application/x-www-form-urlencoded' }, body : new URLSearchParams ({ text : '\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5' , lang : 'zh' , spk_id : '0' }) }; try { const response = await fetch ( url , options ); const data = await response . json (); console . log ( data ); } catch ( error ) { console . error ( error ); } //JQuery const settings = { async : true , crossDomain : true , url : 'http://ikuai.m-iot.tech:58150/tts' , method : 'POST' , headers : { 'content-type' : 'application/x-www-form-urlencoded' }, data : { text : '\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5' , lang : 'zh' , spk_id : '0' } }; $ . ajax ( settings ). done ( function ( response ) { console . log ( response ); });","title":"javaScript \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#c","text":"//httpclient using System.Net.Http.Headers ; var client = new HttpClient (); var request = new HttpRequestMessage { Method = HttpMethod . Post , RequestUri = new Uri ( \"http://ikuai.m-iot.tech:58150/tts\" ), Content = new FormUrlEncodedContent ( new Dictionary < string , string > { { \"text\" , \"\u8bf7\u5f20\u4e09\u5230\u4e00\u5ba4\u505a\u68c0\u67e5\" }, { \"lang\" , \"zh\" }, { \"spk_id\" , \"0\" }, }), }; using ( var response = await client . SendAsync ( request )) { response . EnsureSuccessStatusCode (); var body = await response . Content . ReadAsStringAsync (); Console . WriteLine ( body ); } //restsharp var client = new RestClient ( \"http://ikuai.m-iot.tech:58150/tts\" ); var request = new RestRequest ( \"\" , Method . Post ); request . AddHeader ( \"content-type\" , \"application/x-www-form-urlencoded\" ); request . AddParameter ( \"application/x-www-form-urlencoded\" , \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" , ParameterType . RequestBody ); var response = client . Execute ( request );","title":"C# \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#go","text":"package main import ( \"fmt\" \"strings\" \"net/http\" \"io\" ) func main () { url := \"http://ikuai.m-iot.tech:58150/tts\" payload := strings . NewReader ( \"text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0\" ) req , _ := http . NewRequest ( \"POST\" , url , payload ) req . Header . Add ( \"content-type\" , \"application/x-www-form-urlencoded\" ) res , _ := http . DefaultClient . Do ( req ) defer res . Body . Close () body , _ := io . ReadAll ( res . Body ) fmt . Println ( res ) fmt . Println ( string ( body )) }","title":"go \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_11","text":"Preparing request to http://ikuai.m-iot.tech:58150/tts Current time is 2025-09-21T07:49:17.236Z POST http://ikuai.m-iot.tech:58150/tts Accept: application/json, text/plain, */* Content-Type: application/x-www-form-urlencoded User-Agent: bruno-runtime/2.3.0 text=%E8%AF%B7%E5%BC%A0%E4%B8%89%E5%88%B0%E4%B8%80%E5%AE%A4%E5%81%9A%E6%A3%80%E6%9F%A5&lang=zh&spk_id=0 SSL validation: enabled HTTP/1.1 200 OK date: Sun, 21 Sep 2025 07:49:18 GMT server: uvicorn content-type: audio/wav content-disposition: attachment; filename=\"7b41c15b-e0a4-4ba5-aeb1-ceff058c90e6.wav\" content-length: 89444 last-modified: Sun, 21 Sep 2025 07:49:20 GMT etag: d85eaa2cadf7182ac9b54763e6a97e2c request-duration: 2224 Request completed in 2224 ms","title":"\u8fd4\u56de\u7ed3\u679c"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#2-asr","text":"","title":"2. \u8bed\u97f3\u8bc6\u522b\uff08ASR\uff09\u670d\u52a1"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_12","text":"","title":"\u4e0a\u4f20\u6587\u4ef6\u8c03\u7528\u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#curl_1","text":"curl --request POST \\ --url http://ikuai.m-iot.tech:58150/asr \\ --header 'content-type: multipart/form-data' \\ --form 'file=@C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' \\ --form lang=zh \\ --form format=wav \\ --form sample_rate=16000 \u76f4\u63a5\u4e0a\u4f20\u6587\u4ef6\uff0c\u6587\u4ef6\u683c\u5f0f\u652f\u6301wav\u3001m4a\u3001mp3\u7b49\u5e38\u89c1\u97f3\u9891\u683c\u5f0f\uff0c\u670d\u52a1\u7aef\u4f1a\u81ea\u52a8\u8f6c\u6362\u4e3awav\u683c\u5f0f\u8fdb\u884c\u8bc6\u522b\u3002 curl --request POST \\ --url http://ikuai.m-iot.tech:58150/asr \\ --header 'content-type: multipart/form-data' \\ --form 'file=@C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' \\ --form lang=zh \u4f20\u5165\u53c2\u6570\u53ef\u4ee5\u53ea\u6709file\u4e0elang\u8fd9\u4e24\u4e2a\u53c2\u6570\uff0c\u5176\u5b83\u53c2\u6570\uff0c\u53ef\u4ee5\u5ffd\u7565\uff0c\u5982\u4e0b\u56fe\u6240\u793a","title":"curl\u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#http","text":"POST /asr HTTP / 1.1 Content-Type : multipart/form-data; boundary=---011000010111000001101001 Host : ikuai.m-iot.tech:58150 Content-Length : 239 -----011000010111000001101001 Content-Disposition: form-data; name=\"file\" C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a -----011000010111000001101001 Content-Disposition: form-data; name=\"lang\" zh -----011000010111000001101001--","title":"HTTP \u793a\u4f8b\u8bf4\u660e"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#java_1","text":"// asynchttp AsyncHttpClient client = new DefaultAsyncHttpClient (); client . prepare ( \"POST\" , \"http://ikuai.m-iot.tech:58150/asr\" ) . setHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . setBody ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) . execute () . toCompletableFuture () . thenAccept ( System . out :: println ) . join (); client . close (); // nethttp HttpRequest request = HttpRequest . newBuilder () . uri ( URI . create ( \"http://ikuai.m-iot.tech:58150/asr\" )) . header ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . method ( \"POST\" , HttpRequest . BodyPublishers . ofString ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" )) . build (); HttpResponse < String > response = HttpClient . newHttpClient (). send ( request , HttpResponse . BodyHandlers . ofString ()); System . out . println ( response . body ()); // okhttp OkHttpClient client = new OkHttpClient (); MediaType mediaType = MediaType . parse ( \"multipart/form-data; boundary=---011000010111000001101001\" ); RequestBody body = RequestBody . create ( mediaType , \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ); Request request = new Request . Builder () . url ( \"http://ikuai.m-iot.tech:58150/asr\" ) . post ( body ) . addHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . build (); Response response = client . newCall ( request ). execute (); // unirest HttpResponse < String > response = Unirest . post ( \"http://ikuai.m-iot.tech:58150/asr\" ) . header ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . body ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) . asString ();","title":"java \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#javascript_1","text":"//xhr const data = new FormData (); data . append ( 'file' , 'C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' ); data . append ( 'lang' , 'zh' ); const xhr = new XMLHttpRequest (); xhr . withCredentials = true ; xhr . addEventListener ( 'readystatechange' , function () { if ( this . readyState === this . DONE ) { console . log ( this . responseText ); } }); xhr . open ( 'POST' , 'http://ikuai.m-iot.tech:58150/asr' ); xhr . send ( data ); // Axios import axios from 'axios' ; const form = new FormData (); form . append ( 'file' , 'C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' ); form . append ( 'lang' , 'zh' ); const options = { method : 'POST' , url : 'http://ikuai.m-iot.tech:58150/asr' , headers : { 'content-type' : 'multipart/form-data; boundary=---011000010111000001101001' }, data : '[form]' }; try { const { data } = await axios . request ( options ); console . log ( data ); } catch ( error ) { console . error ( error ); } // fetch const url = 'http://ikuai.m-iot.tech:58150/asr' ; const form = new FormData (); form . append ( 'file' , 'C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' ); form . append ( 'lang' , 'zh' ); const options = { method : 'POST' }; options . body = form ; try { const response = await fetch ( url , options ); const data = await response . json (); console . log ( data ); } catch ( error ) { console . error ( error ); } //jquery const form = new FormData (); form . append ( 'file' , 'C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a' ); form . append ( 'lang' , 'zh' ); const settings = { async : true , crossDomain : true , url : 'http://ikuai.m-iot.tech:58150/asr' , method : 'POST' , headers : {}, processData : false , contentType : false , mimeType : 'multipart/form-data' , data : form }; $ . ajax ( settings ). done ( function ( response ) { console . log ( response ); });","title":"javascript \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#c_1","text":"//httpclient using System.Net.Http.Headers ; var client = new HttpClient (); var request = new HttpRequestMessage { Method = HttpMethod . Post , RequestUri = new Uri ( \"http://ikuai.m-iot.tech:58150/asr\" ), Content = new MultipartFormDataContent { new StringContent ([ \"C:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\" ]) { Headers = { ContentDisposition = new ContentDispositionHeaderValue ( \"form-data\" ) { Name = \"file\" , FileName = \"C:\\Users\\trphoenix\\Documents\\\u5f55\u97f3\\\u5f55\u97f3 (6).m4a\" , } } }, new StringContent ( \"zh\" ) { Headers = { ContentDisposition = new ContentDispositionHeaderValue ( \"form-data\" ) { Name = \"lang\" , } } }, }, }; using ( var response = await client . SendAsync ( request )) { response . EnsureSuccessStatusCode (); var body = await response . Content . ReadAsStringAsync (); Console . WriteLine ( body ); } //Restsharp var client = new RestClient ( \"http://ikuai.m-iot.tech:58150/asr\" ); var request = new RestRequest ( \"\" , Method . Post ); request . AddHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ); request . AddParameter ( \"multipart/form-data; boundary=---011000010111000001101001\" , \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" , ParameterType . RequestBody ); var response = client . Execute ( request );","title":"C# \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#go_1","text":"package main import ( \"fmt\" \"strings\" \"net/http\" \"io\" ) func main () { url := \"http://ikuai.m-iot.tech:58150/asr\" payload := strings . NewReader ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) req , _ := http . NewRequest ( \"POST\" , url , payload ) req . Header . Add ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) res , _ := http . DefaultClient . Do ( req ) defer res . Body . Close () body , _ := io . ReadAll ( res . Body ) fmt . Println ( res ) fmt . Println ( string ( body )) }","title":"go \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#java_2","text":"// asynchttp AsyncHttpClient client = new DefaultAsyncHttpClient (); client . prepare ( \"POST\" , \"http://ikuai.m-iot.tech:58150/asr\" ) . setHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . setBody ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) . execute () . toCompletableFuture () . thenAccept ( System . out :: println ) . join (); client . close (); // nethttp HttpRequest request = HttpRequest . newBuilder () . uri ( URI . create ( \"http://ikuai.m-iot.tech:58150/asr\" )) . header ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . method ( \"POST\" , HttpRequest . BodyPublishers . ofString ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" )) . build (); HttpResponse < String > response = HttpClient . newHttpClient (). send ( request , HttpResponse . BodyHandlers . ofString ()); System . out . println ( response . body ()); // okhttp OkHttpClient client = new OkHttpClient (); MediaType mediaType = MediaType . parse ( \"multipart/form-data; boundary=---011000010111000001101001\" ); RequestBody body = RequestBody . create ( mediaType , \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ); Request request = new Request . Builder () . url ( \"http://ikuai.m-iot.tech:58150/asr\" ) . post ( body ) . addHeader ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . build (); Response response = client . newCall ( request ). execute (); // unirest HttpResponse < String > response = Unirest . post ( \"http://ikuai.m-iot.tech:58150/asr\" ) . header ( \"content-type\" , \"multipart/form-data; boundary=---011000010111000001101001\" ) . body ( \"-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"file\\\"\\r\\n\\r\\nC:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\\r\\n-----011000010111000001101001\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\nzh\\r\\n-----011000010111000001101001--\\r\\n\\r\\n\" ) . asString ();","title":"java \u793a\u4f8b"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_13","text":"{ \"result\" : \"\u5582\u8bed\u97f3\u6d4b\u8bd5\u8bed\u97f3\u6d4b\u8bd5\u5f55\u97f3\u6d4b\u8bd5\u5f55\u97f3\u6d4b\u8bd5\" , \"file_size\" : 185334 , \"wav_info\" : { \"n_channels\" : 1 , \"sample_width\" : 2 , \"framerate\" : 16000 , \"n_frames\" : 115029 , \"duration\" : 7.1893125 }, \"ffmpeg_log\" : \"\" } body { \"_overheadLength\" : 252 , \"_valueLength\" : 2 , \"_valuesToMeasure\" : [ { \"fd\" : null , \"path\" : \"C:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\" , \"flags\" : \"r\" , \"mode\" : 438 , \"end\" : null , \"bytesRead\" : 0 , \"_events\" : {}, \"_readableState\" : { \"highWaterMark\" : 65536 , \"buffer\" : [], \"bufferIndex\" : 0 , \"length\" : 0 , \"pipes\" : [], \"awaitDrainWriters\" : null }, \"_eventsCount\" : 3 } ], \"writable\" : false , \"readable\" : true , \"dataSize\" : 0 , \"maxDataSize\" : 2097152 , \"pauseStreams\" : true , \"_released\" : false , \"_streams\" : [ \"----------------------------147555471668548578107544\\r\\nContent-Disposition: form-data; name=\\\"file\\\"; filename=\\\"\u5f55\u97f3 (6).m4a\\\"\\r\\nContent-Type: wav\\r\\n\\r\\n\" , { \"source\" : \"[Circular]\" , \"dataSize\" : 0 , \"maxDataSize\" : null , \"pauseStream\" : true , \"_maxDataSizeExceeded\" : false , \"_released\" : false , \"_bufferedEvents\" : [ { \"0\" : \"pause\" } ], \"_events\" : {}, \"_eventsCount\" : 1 }, null , \"----------------------------147555471668548578107544\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\n\" , \"zh\" , null ], \"_currentStream\" : null , \"_insideLoop\" : false , \"_pendingNext\" : false , \"_boundary\" : \"--------------------------147555471668548578107544\" } ***Network Logs *** Preparing request to http://ikuai.m-iot.tech:58150/asr Current time is 2025-09-21T08:22:20.590Z POST http://ikuai.m-iot.tech:58150/asr Accept: application/json, text/plain, */* Content-Type: multipart/form-data; boundary=--------------------------147555471668548578107544 User-Agent: bruno-runtime/2.3.0 { \"_overheadLength\": 252, \"_valueLength\": 2, \"_valuesToMeasure\": [ { \"fd\": null, \"path\": \"C:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\", \"flags\": \"r\", \"mode\": 438, \"end\": null, \"bytesRead\": 0, \"_events\": {}, \"_readableState\": { \"highWaterMark\": 65536, \"buffer\": [], \"bufferIndex\": 0, \"length\": 0, \"pipes\": [], \"awaitDrainWriters\": null }, \"_eventsCount\": 3 } ], \"writable\": false, \"readable\": true, \"dataSize\": 0, \"maxDataSize\": 2097152, \"pauseStreams\": true, \"_released\": false, \"_streams\": [ \"----------------------------147555471668548578107544\\r\\nContent-Disposition: form-data; name=\\\"file\\\"; filename=\\\"\u5f55\u97f3 (6).m4a\\\"\\r\\nContent-Type: wav\\r\\n\\r\\n\", { \"source\": { \"fd\": null, \"path\": \"C:\\\\Users\\\\trphoenix\\\\Documents\\\\\u5f55\u97f3\\\\\u5f55\u97f3 (6).m4a\", \"flags\": \"r\", \"mode\": 438, \"end\": null, \"bytesRead\": 0, \"_events\": {}, \"_readableState\": { \"highWaterMark\": 65536, \"buffer\": [], \"bufferIndex\": 0, \"length\": 0, \"pipes\": [], \"awaitDrainWriters\": null }, \"_eventsCount\": 3 }, \"dataSize\": 0, \"maxDataSize\": null, \"pauseStream\": true, \"_maxDataSizeExceeded\": false, \"_released\": false, \"_bufferedEvents\": [ { \"0\": \"pause\" } ], \"_events\": {}, \"_eventsCount\": 1 }, null, \"----------------------------147555471668548578107544\\r\\nContent-Disposition: form-data; name=\\\"lang\\\"\\r\\n\\r\\n\", \"zh\", null ], \"_currentStream\": null, \"_insideLoop\": false, \"_pendingNext\": false, \"_boundary\": \"--------------------------147555471668548578107544\" } SSL validation: enabled HTTP/1.1 200 OK date: Sun, 21 Sep 2025 08:22:21 GMT server: uvicorn content-length: 201 content-type: application/json request-duration: 6989 Request completed in 6989 ms","title":"\u8fd4\u56de\u7ed3\u679c"},{"location":"Usages/QA/%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90%E4%B8%8E%E8%AF%86%E5%88%AB%E6%9C%8D%E5%8A%A1Docker-%E9%83%A8%E7%BD%B2%E8%AF%B4%E6%98%8E/#_14","text":"\u8bf4\u660e paddlespeech\u4e2d\u7528\u7684\u4e00\u4e2a\u5e93\u6709\u53ef\u80fd\u662f\u5355\u7ebf\u7a0b\u7684\uff0c\u6240\u4ee5\u5728\u9ad8\u5e76\u53d1\u573a\u666f\u4e0b\uff0c\u53ef\u80fd\u4f1a\u51fa\u73b0\u54cd\u5e94\u53d8\u6162\u7684\u60c5\u51b5\uff0c\u8fd9\u4e2a\u65f6\u5019\uff0c\u53ef\u4ee5\u8003\u8651\u589e\u52a0\u5b9e\u4f8b\u6765\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\u3002 \u5b9e\u9645\u4f7f\u7528\u65f6,\u5982\u679c\u60f3\u63d0\u9ad8\u5e76\u53d1\u80fd\u529b\uff0c\u53ef\u4ee5\u5c1d\u8bd5\u66f4\u6539\u73af\u5883\u53d8\u91cf\u4e2d\u7684PYTHONUNBUFFFERED=4,\u6216\u66f4\u9ad8\u4e00\u4e2a\u9002\u5408\u7684\u6570\u5b57\uff0c\u6765\u63d0\u9ad8\u5e76\u53d1\u80fd\u529b\u3002 \u300a\u5b8c\u300b","title":"\u6d4f\u89c8\u5668\u5f55\u97f3\u8bc6\u522b\u793a\u4f8b"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/","text":"\u900f\u6790\u4e2d\u5fc3\u73af\u5883\u6e29\u5ea6\u53d1\u9001\u5230\u80dc\u900f\u7684\u64cd\u4f5c\u6307\u5357 \u00b6 1. \u524d\u63d0\u6761\u4ef6 \u00b6 \u5df2\u5b89\u88c5\u5e76\u914d\u7f6e\u597dHome Assistant \u5df2\u7ecf\u5b89\u88c5\u5e76\u914d\u7f6e\u4e86MQTT Broker \u5df2\u7ecf\u5b89\u88c5\u5e76\u914d\u7f6e\u4e86Node-RED \u5df2\u7ecf\u5b89\u88c5\u5e76\u914d\u7f6e\u4e86\u7c73\u5bb6\u6e29\u5ea6\u4f20\u611f\u5668\uff08\u5982Miaomiaoc CN BLT 3\uff09 \u5df2\u7ecf\u83b7\u53d6\u5230\u4e86\u80dc\u900f\u7684MQTT\u670d\u52a1\u5668Broker\u5730\u5740\u548c\u7aef\u53e3 2. \u5728Home Assistant\u4e2d\u914d\u7f6e\u4f20\u611f\u5668\u81ea\u52a8\u5316 \u00b6 1.\u627e\u5230\u73af\u5883\u6e29\u5ea6\u4f20\u611f\u5668\u5b9e\u4f53ID \u00b6 \u900f\u6790\u4e2d\u5fc3\u53ef\u80fd\u5b89\u88c5\u4e86\u591a\u4e2a\u7c73\u5bb6\u6e29\u5ea6\u4f20\u611f\u5668\uff0c\u9996\u5148\u9700\u8981\u627e\u5230\u5bf9\u5e94\u7684\u5b9e\u4f53ID\u3002 \u53ef\u4ee5\u5728Home Assistant\u7684\u5f00\u53d1\u8005\u5de5\u5177\u4e2d\u67e5\u770b\u5f53\u524d\u6240\u6709\u4f20\u611f\u5668\u7684\u72b6\u6001\u3002 \u4e5f\u53ef\u4ee5\u5728\u5df2\u7ecf\u8bbe\u5907\u4e0e\u670d\u52a1\uff0c\u96c6\u6210\uff0c\u4e2d\u627e\u5230\u7c73\u5bb6\u7684\u8bbe\u5907\uff0c\u627e\u5230\u90a3\u4e2a\u4f20\u611f\u5668 \u627e\u5230\u9700\u8981\u914d\u7f6e\u4e3a\u73af\u5883\u6e29\u5ea6\u7684\u4f20\u611f\u5668 \u70b9\u51fb\u6e29\u5ea6\u5b9e\u4f53 \u70b9\u51fb\u8bbe\u7f6e\u56fe\u6807 \u5982\u672c\u4f8b\u83b7\u53d6\u5230\u7684\u5b9e\u4f53ID\u4e3a sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1 \u3002\u8bb0\u4f4f\u6b64ID\uff0c\u540e\u9762\u5f88\u591a\u5730\u65b9\u90fd\u4f1a\u7528\u5230. 2. \u521b\u5efa\u81ea\u52a8\u5316\u89c4\u5219 \u00b6 \u6211\u4eec\u9700\u8981\u521b\u5efa\u4e00\u4e2a\u81ea\u52a8\u5316\u89c4\u5219\uff0c\u5f53\u4f20\u611f\u5668\u72b6\u6001\u66f4\u65b0\u65f6\u53ca\u6bcf\u969430\u79d2\uff0c\u5c06\u6e29\u5ea6\u6570\u636e\u53d1\u9001\u5230Home Assistant\u5185\u90e8\u96c6\u6210\u7684\u7684MQTT\u670d\u52a1\u5668\u3002 \u8fdb\u5165 \"\u914d\u7f6e\" \u2192 \"\u81ea\u52a8\u5316\u548c\u573a\u666f\" \u2192 \"\u81ea\u52a8\u5316\"\uff0c\u70b9\u51fb\u53f3\u4e0b\u89d2\u7684 \"+\" \u521b\u5efa\u65b0\u7684\u81ea\u52a8\u5316\u89c4\u5219\u3002 \u8fdb\u5165\u81ea\u52a8\u5316\u89c4\u5219\u7f16\u8f91\u754c\u9762\u540e\uff0c\u70b9\u51fb\u53f3\u4e0b\u89d2\u7684\"\u521b\u5efa\u81ea\u52a8\u5316\"\u6309\u94ae\u3002\u5728\u5f39\u51fa\u7684\u5bf9\u8bdd\u6846\u4e2d\u9009\u62e9\"\u521b\u5efa\u65b0\u7684\u81ea\u52a8\u5316\"\u3002 \u5728\u65b0\u5efa\u81ea\u52a8\u5316\u754c\u9762\uff0c\u70b9\u53f3\u4e0a\u89d2\u7684\u4e09\u4e2a\u70b9\uff0c\u5982\u4e0b\u56fe\u6240\u793a \u5728\u5f39\u51fa\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u70b9\u51fb\u8fdb\u5165YHAML\u7f16\u8f91,\u8fdb\u5165\u4ee3\u7801\u6a21\u5f0f\uff0c\u5982\u4e0b\u6240\u793a \u5728\u8fd9\u4e2a\u5927\u7684\u6587\u672c\u6846\u4e2d\u7c98\u5165\u5982\u4e0b\u4ee3\u7801\uff1a alias : \u53d1\u5e03\u73af\u5883\u6e29\u5ea6\u4f20\u611f\u5668\u72b6\u6001\u5230MQTT description : \u5f53\u7c73\u5bb6\u6e29\u5ea6\u4f20\u611f\u5668\u72b6\u6001\u53d8\u5316\u6216\u6bcf30\u79d2\u5b9a\u65f6\u65f6\uff0c\u81ea\u52a8\u53d1\u5e03\u5230MQTT\u4f9bNode-RED\u4f7f\u7528 triggers : - entity_id : sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1 trigger : state - seconds : /30 trigger : time_pattern conditions : - condition : template value_template : >- {{ states('sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1') not in ['unavailable', 'unknown', 'None'] and states('sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1') | float(-999) != -999 }} actions : - data : topic : >- homeassistant/sensor/sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1/state payload : >- {{ states('sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1') }} retain : false qos : 0 action : mqtt.publish mode : single \u6ce8\u610f: \u4ee5\u4e0a\u4ee3\u7801\u4e2d\u7684 sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1 \u662f\u793a\u4f8b\u5b9e\u4f53ID\uff0c\u8bf7\u66ff\u6362\u4e3a\u4f60 \u5b9e\u9645\u7684\u6e29\u5ea6\u4f20\u611f\u5668\u5b9e\u4f53ID \u3002 \u653e\u7f6e\u5b8c\u6210\u540e\uff0c\u5982\u4e0b\u56fe\u793a\u610f \u89c2\u5bdf\u4e0a\u6b21\u89e6\u53d1\u5217\u662f\u5426\u4f1a\u6bcf\u969430\u79d2\u6267\u884c\u4e00\u6b21 \u8fd4\u56de\u5230\u4f20\u611f\u5668\u7684\u8bbe\u5907\u754c\u9762\u4e5f\u80fd\u770b\u5230\u8bbe\u5907\u7684\u81ea\u52a8\u5316\u4e0b\u9762\u6709\u4e00\u6761\u81ea\u52a8\u5316\u89c4\u5219\uff0c\u5982\u4e0b\u56fe \u5230\u6b64\uff0c\u81ea\u52a8\u5316\u89c4\u5219\u5df2\u914d\u7f6e\u5b8c\u6210\u3002 3. \u5728Node-RED\u4e2d\u914d\u7f6eMQTT\u63a5\u6536\u8f6c\u53d1 \u00b6 1. \u6253\u5f00Node-RED\u7f16\u8f91\u5668 \u00b6 \u6253\u5f00nod-red\u7f16\u8f91\u5668\uff0c\u6709\u7684HA\u53ef\u80fd\u662f\u914d\u7f6e\u5728\u5de6\u4fa7\u822a\u83dc\u5355\u4e2d\uff0c\u5982\u4e0b\u56fe\u5fd7\u793a\uff0c\u70b9\u51fb\u5373\u53ef\u8fdb\u5165 \u6709\u7684\u662f\u6ca1\u6709\u914d\u7f6enode-red\u5230\u5de6\u4fa7\u5bfc\u822a\u83dc\u5355\u7684\uff0c\u8fd9\u79cd\u60c5\u51b5\u4e0b\uff0c\u53ef\u4ee5\u70b9\u51fb\"\u8bbe\u7f6e-\u52a0\u8f7d\u9879\"\u8fdb\u5165\u52a0\u8f7d\u9879\u9875\u9762 \u627e\u5230Node-RED\u52a0\u8f7d\u9879\uff0c\u70b9\u51fb\u8fdb\u5165 \u8fdb\u5165\u754c\u9762\u5982\u4e0b\uff1a 2. \u521b\u5efa\u65b0\u5de5\u4f5c\u6d41 \u00b6 \u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\"\u83dc\u5355\"\u6309\u94ae\uff0c\u518d\u70b9\u5bfc\u5165\u3002 \u5728\u6b64\u5904\u8d34\u5165\u5de5\u4f5c\u6d41\u4ee3\u7801\uff0c\u6ce8\u610f\uff1a\u8981\u9009\u62e9\u5bfc\u5165\u5230\u65b0\u6d41\u7a0b \u5de5\u4f5c\u6d41\u4ee3\u7801\u5982\u4e0b [ { \"id\" : \"1407d4531e19a951\" , \"type\" : \"tab\" , \"label\" : \"\u900f\u6790\u4e2d\u5fc3\u73af\u5883\u6e29\u5ea6\u6570\u636e\u8f6c\u53d1\" , \"disabled\" : false , \"info\" : \"\u4eceHomeAssistant\u83b7\u53d6\u6e29\u5ea6\u4f20\u611f\u5668\u6570\u636e\u5e76\u53d1\u5e03\u5230\u516c\u53f8MQTT\u670d\u52a1\u5668\" }, { \"id\" : \"97e254f4a87ddde9\" , \"type\" : \"mqtt in\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u8ba2\u9605HA\u6e29\u5ea6\u4f20\u611f\u5668\" , \"topic\" : \"homeassistant/sensor/+/state\" , \"qos\" : \"0\" , \"datatype\" : \"auto\" , \"broker\" : \"mqtt-ha-broker\" , \"nl\" : false , \"rap\" : true , \"rh\" : 0 , \"inputs\" : 0 , \"x\" : 150 , \"y\" : 100 , \"wires\" : [ [ \"44d729e67618e4f2\" ] ] }, { \"id\" : \"44d729e67618e4f2\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u5904\u7406\u6e29\u5ea6\u6570\u636e\" , \"func\" : \"// \u4ece\u5168\u5c40\u53d8\u91cf\u83b7\u53d6\u5171\u4eab\u914d\u7f6e\\nconst nameSpace = global.get(\\\"nameSpace\\\") || \\\"Environment\\\";\\nconst clientCode = global.get(\\\"clientCode\\\") || \\\"Data-It_XzOffice\\\";\\nconst targetDeviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\n\\n// \u4ecetopic\u4e2d\u63d0\u53d6\u5f53\u524d\u8bbe\u5907ID\\nconst topicParts = msg.topic.split('/');\\nconst currentDeviceId = topicParts.length >= 3 ? topicParts[2] : \\\"\\\";\\n\\n// \u53ea\u5904\u7406\u76ee\u6807\u8bbe\u5907\u7684\u6d88\u606f\\nif (currentDeviceId !== targetDeviceId) {\\n node.log(\\\"\u5ffd\u7565\u8bbe\u5907\u6d88\u606f: \\\" + currentDeviceId + \\\" (\u76ee\u6807\u8bbe\u5907: \\\" + targetDeviceId + \\\")\\\");\\n return null;\\n}\\n\\n// \u751f\u6210\u552f\u4e00\u7684\u6d88\u606fID\\nconst messageId = \\\"temp_\\\" + Date.now() + \\\"_\\\" + Math.floor(Math.random() * 1000);\\nconst timestamp = Date.now();\\nconst deviceType = \\\"sensor\\\";\\n\\n// \u89e3\u6790\u6e29\u5ea6\u503c\\nlet temperature = parseFloat(msg.payload);\\nif (isNaN(temperature)) {\\n node.warn(\\\"\u63a5\u6536\u5230\u65e0\u6548\u7684\u6e29\u5ea6\u503c: \\\" + msg.payload);\\n return null;\\n}\\n\\n// \u6309\u7167\u80dc\u900f\u7269\u8054\u7f51\u901a\u4fe1\u534f\u8bae\u683c\u5f0f\u5316\u6570\u636e\\nconst protocolMessage = {\\n \\\"messageId\\\": messageId,\\n \\\"timestamp\\\": timestamp,\\n \\\"clientCode\\\": clientCode,\\n \\\"deviceId\\\": targetDeviceId,\\n \\\"deviceType\\\": deviceType,\\n \\\"version\\\": \\\"1.0\\\",\\n \\\"data\\\": {\\n \\\"properties\\\": {\\n \\\"temperature\\\": {\\n \\\"value\\\": temperature,\\n \\\"unit\\\": \\\"\u00b0C\\\",\\n \\\"quality\\\": \\\"good\\\",\\n \\\"timestamp\\\": timestamp\\n }\\n }\\n }\\n};\\n\\n// \u8bbe\u7f6e\u8f93\u51fa\u6d88\u606f\\nmsg.payload = JSON.stringify(protocolMessage);\\nmsg.topic = `${nameSpace}/sensor/${clientCode}/${targetDeviceId}/properties`;\\nmsg.qos = 0;\\n\\nnode.log(\\\"\u6e29\u5ea6\u6570\u636e\u5df2\u5904\u7406: \\\" + temperature + \\\"\u00b0C (\u8bbe\u5907: \\\" + targetDeviceId + \\\")\\\");\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 420 , \"y\" : 100 , \"wires\" : [ [ \"573842ea77192dbb\" , \"4c630c164e08dc2c\" ] ] }, { \"id\" : \"573842ea77192dbb\" , \"type\" : \"mqtt out\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u53d1\u5e03\u5230\u516c\u53f8MQTT\" , \"topic\" : \"\" , \"qos\" : \"\" , \"retain\" : \"\" , \"respTopic\" : \"\" , \"contentType\" : \"\" , \"userProps\" : \"\" , \"correl\" : \"\" , \"expiry\" : \"\" , \"broker\" : \"mqtt-company-broker\" , \"x\" : 990 , \"y\" : 80 , \"wires\" : [] }, { \"id\" : \"4c630c164e08dc2c\" , \"type\" : \"debug\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u8c03\u8bd5\u8f93\u51fa\" , \"active\" : true , \"tosidebar\" : true , \"console\" : false , \"tostatus\" : false , \"complete\" : \"payload\" , \"targetType\" : \"msg\" , \"statusVal\" : \"\" , \"statusType\" : \"auto\" , \"x\" : 1040 , \"y\" : 360 , \"wires\" : [] }, { \"id\" : \"495c392574ee1bf4\" , \"type\" : \"inject\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u53d1\u5e03\u8bbe\u5907\u7269\u6a21\u578b\" , \"props\" : [ { \"p\" : \"payload\" }, { \"p\" : \"topic\" , \"vt\" : \"str\" } ], \"repeat\" : \"60\" , \"crontab\" : \"\" , \"once\" : true , \"onceDelay\" : \"5\" , \"topic\" : \"shengtou/sensor/TH001_HA/model\" , \"payload\" : \"\" , \"payloadType\" : \"date\" , \"x\" : 170 , \"y\" : 180 , \"wires\" : [ [ \"3aea3ce2deb4ea99\" ] ] }, { \"id\" : \"3aea3ce2deb4ea99\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u751f\u6210\u7269\u6a21\u578b\u6570\u636e\" , \"func\" : \"const messageId = \\\"mdl_\\\" + Date.now();\\nconst timestamp = Date.now();\\n// \u4ece\u5168\u5c40\u53d8\u91cf\u83b7\u53d6\u5171\u4eab\u914d\u7f6e\\nconst nameSpace = global.get(\\\"nameSpace\\\") || \\\"Environment\\\";\\nconst clientCode = global.get(\\\"clientCode\\\") || \\\"Data-It_XzOffice\\\";\\nconst deviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\nconst deviceType = \\\"sensor\\\";\\n\\n// \u6309\u7167\u80dc\u900f\u7269\u8054\u7f51\u901a\u4fe1\u534f\u8bae\u751f\u6210\u7269\u6a21\u578b\u5b9a\u4e49\\nconst modelMessage = {\\n \\\"messageId\\\": messageId,\\n \\\"timestamp\\\": timestamp,\\n \\\"clientCode\\\": clientCode,\\n \\\"deviceId\\\": deviceId,\\n \\\"deviceType\\\": deviceType,\\n \\\"version\\\": \\\"1.0\\\",\\n \\\"data\\\": {\\n \\\"model\\\": {\\n \\\"deviceInfo\\\": {\\n \\\"manufacturer\\\": \\\"\u5c0f\u7c73\\\",\\n \\\"model\\\": \\\"MIAOMIAOC_CN_BLT_3_11A1SBR5K5O01_T2\\\",\\n \\\"version\\\": \\\"1.0.0\\\",\\n \\\"description\\\": \\\"\u7c73\u5bb6\u6e29\u6e7f\u5ea6\u4f20\u611f\u5668(\u901a\u8fc7HomeAssistant\u96c6\u6210)\\\"\\n },\\n \\\"properties\\\": {\\n \\\"temperature\\\": {\\n \\\"dataType\\\": \\\"float\\\",\\n \\\"unit\\\": \\\"\u00b0C\\\",\\n \\\"range\\\": {\\n \\\"min\\\": -40,\\n \\\"max\\\": 85\\n },\\n \\\"precision\\\": 1,\\n \\\"description\\\": \\\"\u73af\u5883\u6e29\u5ea6\\\"\\n }\\n },\\n \\\"events\\\": {\\n \\\"startup\\\": {\\n \\\"eventType\\\": \\\"info\\\",\\n \\\"description\\\": \\\"\u8bbe\u5907\u542f\u52a8\u4e8b\u4ef6\\\"\\n }\\n },\\n \\\"alarms\\\": {\\n \\\"TEMP_HIGH\\\": {\\n \\\"alarmType\\\": \\\"threshold_exceeded\\\",\\n \\\"description\\\": \\\"\u6e29\u5ea6\u8fc7\u9ad8\u62a5\u8b66\\\",\\n \\\"defaultThreshold\\\": 35.0\\n },\\n \\\"TEMP_LOW\\\": {\\n \\\"alarmType\\\": \\\"threshold_exceeded\\\",\\n \\\"description\\\": \\\"\u6e29\u5ea6\u8fc7\u4f4e\u62a5\u8b66\\\",\\n \\\"defaultThreshold\\\": 0.0\\n }\\n }\\n }\\n }\\n};\\n\\n// \u8bbe\u7f6eMQTT\u53d1\u5e03\u4e3b\u9898\\nmsg.topic = `${nameSpace}/sensor/${clientCode}/${deviceId}/model`;\\nmsg.payload = JSON.stringify(modelMessage);\\nmsg.qos = 1;\\n\\nnode.log(\\\"\u8bbe\u5907\u7269\u6a21\u578b\u6570\u636e\u5df2\u751f\u6210\uff0c\u53d1\u5e03\u5230\u4e3b\u9898: \\\" + msg.topic);\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 400 , \"y\" : 160 , \"wires\" : [ [ \"573842ea77192dbb\" , \"4c630c164e08dc2c\" ] ] }, { \"id\" : \"70e1e283448c941e\" , \"type\" : \"inject\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u8bbe\u5907\u72b6\u6001\u5fc3\u8df3\" , \"props\" : [ { \"p\" : \"payload\" }, { \"p\" : \"topic\" , \"vt\" : \"str\" } ], \"repeat\" : \"120\" , \"crontab\" : \"\" , \"once\" : true , \"onceDelay\" : \"10\" , \"topic\" : \"shengtou/sensor/TH001_HA/status\" , \"payload\" : \"\" , \"payloadType\" : \"date\" , \"x\" : 160 , \"y\" : 240 , \"wires\" : [ [ \"ae74b6d386748045\" ] ] }, { \"id\" : \"ae74b6d386748045\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u751f\u6210\u72b6\u6001\u6570\u636e\" , \"func\" : \"const messageId = \\\"sts_\\\" + Date.now();\\nconst timestamp = Date.now();\\n// \u4ece\u5168\u5c40\u53d8\u91cf\u83b7\u53d6\u5171\u4eab\u914d\u7f6e\\nconst nameSpace = global.get(\\\"nameSpace\\\") || \\\"Environment\\\";\\nconst clientCode = global.get(\\\"clientCode\\\") || \\\"Data-It_XzOffice\\\";\\nconst deviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\nconst deviceType = \\\"sensor\\\";\\n\\n// \u8ba1\u7b97\u8bbe\u5907\u8fd0\u884c\u65f6\u95f4\uff08\u4ece\u7b2c\u4e00\u6b21\u542f\u52a8\u5f00\u59cb\uff09\\nif (!context.get(\\\"startTime\\\")) {\\n context.set(\\\"startTime\\\", timestamp);\\n}\\nconst startTime = context.get(\\\"startTime\\\");\\nconst uptime = timestamp - startTime;\\n\\n// \u6309\u7167\u80dc\u900f\u7269\u8054\u7f51\u901a\u4fe1\u534f\u8bae\u751f\u6210\u72b6\u6001\u6570\u636e\\nconst statusMessage = {\\n \\\"messageId\\\": messageId,\\n \\\"timestamp\\\": timestamp,\\n \\\"clientCode\\\": clientCode,\\n \\\"deviceId\\\": deviceId,\\n \\\"deviceType\\\": deviceType,\\n \\\"version\\\": \\\"1.0\\\",\\n \\\"data\\\": {\\n \\\"status\\\": {\\n \\\"online\\\": true,\\n \\\"lastHeartbeat\\\": timestamp,\\n \\\"uptime\\\": uptime\\n }\\n }\\n};\\n\\n// \u8bbe\u7f6eMQTT\u53d1\u5e03\u4e3b\u9898\\nmsg.topic = `${nameSpace}/sensor/${clientCode}/${deviceId}/status`;\\nmsg.payload = JSON.stringify(statusMessage);\\nmsg.qos = 0;\\n\\nnode.log(\\\"\u8bbe\u5907\u72b6\u6001\u5fc3\u8df3\u5df2\u53d1\u9001\uff0c\u53d1\u5e03\u5230\u4e3b\u9898: \\\" + msg.topic);\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 400 , \"y\" : 240 , \"wires\" : [ [ \"573842ea77192dbb\" , \"4c630c164e08dc2c\" ] ] }, { \"id\" : \"7f9acf10d0c6085d\" , \"type\" : \"inject\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u521d\u59cb\u5316\u5168\u5c40\u914d\u7f6e\" , \"props\" : [ { \"p\" : \"payload\" } ], \"repeat\" : \"\" , \"crontab\" : \"\" , \"once\" : true , \"onceDelay\" : \"1\" , \"topic\" : \"\" , \"payload\" : \"\" , \"payloadType\" : \"date\" , \"x\" : 150 , \"y\" : 40 , \"wires\" : [ [ \"6f6b825dfc5e9512\" ] ] }, { \"id\" : \"6f6b825dfc5e9512\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u8bbe\u7f6e\u5168\u5c40\u914d\u7f6e\" , \"func\" : \"// \u8bbe\u7f6e\u5168\u5c40\u5171\u4eab\u5e38\u91cf\\nglobal.set(\\\"nameSpace\\\", \\\"Environment\\\");\\nglobal.set(\\\"clientCode\\\", \\\"Data-It_XzOffice\\\");\\nglobal.set(\\\"deviceId\\\", \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\");\\n\\nnode.log(\\\"\u5168\u5c40\u914d\u7f6e\u5df2\u8bbe\u7f6e: nameSpace=\\\" + global.get(\\\"nameSpace\\\") + \\\", clientCode=\\\" + global.get(\\\"clientCode\\\") + \\\", deviceId=\\\" + global.get(\\\"deviceId\\\"));\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 360 , \"y\" : 40 , \"wires\" : [ [ \"794c422d39898a7f\" ] ] }, { \"id\" : \"794c422d39898a7f\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u66f4\u65b0MQTT\u8ba2\u9605Topic\" , \"func\" : \"// \u4ece\u5168\u5c40\u53d8\u91cf\u751f\u6210HomeAssistant MQTT\u8ba2\u9605Topic\\nconst deviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\nconst haTopic = `homeassistant/sensor/${deviceId}/state`;\\n\\n// \u5c06Topic\u4fdd\u5b58\u5230\u5168\u5c40\u53d8\u91cf\u4f9b\u5176\u4ed6\u5730\u65b9\u4f7f\u7528\\nglobal.set(\\\"haSubscribeTopic\\\", haTopic);\\n\\nnode.log(\\\"HomeAssistant\u8ba2\u9605Topic\u5df2\u66f4\u65b0: \\\" + haTopic);\\nnode.log(\\\"\u6ce8\u610f\uff1a\u5982\u9700\u66f4\u6539MQTT In\u8282\u70b9\u7684\u8ba2\u9605Topic\uff0c\u8bf7\u624b\u52a8\u4fee\u6539\u4e3a: \\\" + haTopic);\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 590 , \"y\" : 40 , \"wires\" : [ [] ] }, { \"id\" : \"3bf854e9bd3e6937\" , \"type\" : \"inject\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u542f\u52a8\u4e8b\u4ef6\" , \"props\" : [ { \"p\" : \"payload\" }, { \"p\" : \"topic\" , \"vt\" : \"str\" } ], \"repeat\" : \"\" , \"crontab\" : \"\" , \"once\" : true , \"onceDelay\" : \"15\" , \"topic\" : \"shengtou/sensor/TH001_HA/events\" , \"payload\" : \"\" , \"payloadType\" : \"date\" , \"x\" : 160 , \"y\" : 340 , \"wires\" : [ [ \"26f6196b2d6fba29\" ] ] }, { \"id\" : \"26f6196b2d6fba29\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u751f\u6210\u542f\u52a8\u4e8b\u4ef6\" , \"func\" : \"const messageId = \\\"evt_startup_\\\" + Date.now();\\nconst timestamp = Date.now();\\n// \u4ece\u5168\u5c40\u53d8\u91cf\u83b7\u53d6\u5171\u4eab\u914d\u7f6e\\nconst nameSpace = global.get(\\\"nameSpace\\\") || \\\"Environment\\\";\\nconst clientCode = global.get(\\\"clientCode\\\") || \\\"Data-It_XzOffice\\\";\\nconst deviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\nconst deviceType = \\\"sensor\\\";\\n\\n// \u6309\u7167\u80dc\u900f\u7269\u8054\u7f51\u901a\u4fe1\u534f\u8bae\u751f\u6210\u4e8b\u4ef6\u6570\u636e\\nconst eventMessage = {\\n \\\"messageId\\\": messageId,\\n \\\"timestamp\\\": timestamp,\\n \\\"clientCode\\\": clientCode,\\n \\\"deviceId\\\": deviceId,\\n \\\"deviceType\\\": deviceType,\\n \\\"version\\\": \\\"1.0\\\",\\n \\\"data\\\": {\\n \\\"events\\\": [\\n {\\n \\\"eventType\\\": \\\"startup\\\",\\n \\\"eventLevel\\\": \\\"info\\\",\\n \\\"eventCode\\\": \\\"EVT_001\\\",\\n \\\"description\\\": \\\"HomeAssistant\u6e29\u5ea6\u4f20\u611f\u5668\u4ee3\u7406\u8bbe\u5907\u542f\u52a8\u5b8c\u6210\\\",\\n \\\"timestamp\\\": timestamp\\n }\\n ]\\n }\\n};\\n\\n// \u8bbe\u7f6eMQTT\u53d1\u5e03\u4e3b\u9898\\nmsg.topic = `${nameSpace}/sensor/${clientCode}/${deviceId}/events`;\\nmsg.payload = JSON.stringify(eventMessage);\\nmsg.qos = 1;\\n\\nnode.log(\\\"\u8bbe\u5907\u542f\u52a8\u4e8b\u4ef6\u5df2\u751f\u6210\uff0c\u53d1\u5e03\u5230\u4e3b\u9898: \\\" + msg.topic);\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 380 , \"y\" : 320 , \"wires\" : [ [ \"573842ea77192dbb\" , \"4c630c164e08dc2c\" ] ] }, { \"id\" : \"mqtt-ha-broker\" , \"type\" : \"mqtt-broker\" , \"name\" : \"HomeAssistant MQTT\" , \"broker\" : \"192.168.50.83\" , \"port\" : \"1883\" , \"clientid\" : \"\" , \"autoConnect\" : true , \"usetls\" : false , \"protocolVersion\" : \"4\" , \"keepalive\" : \"60\" , \"cleansession\" : true , \"autoUnsubscribe\" : true , \"birthTopic\" : \"\" , \"birthQos\" : \"0\" , \"birthPayload\" : \"\" , \"birthMsg\" : {}, \"closeTopic\" : \"\" , \"closeQos\" : \"0\" , \"closePayload\" : \"\" , \"closeMsg\" : {}, \"willTopic\" : \"\" , \"willQos\" : \"0\" , \"willPayload\" : \"\" , \"willMsg\" : {}, \"sessionExpiry\" : \"\" }, { \"id\" : \"mqtt-company-broker\" , \"type\" : \"mqtt-broker\" , \"name\" : \"\u516c\u53f8MQTT\u670d\u52a1\u5668\" , \"broker\" : \"mqtt-test.ihemodialysis.com\" , \"port\" : \"62183\" , \"clientid\" : \"\" , \"usetls\" : false , \"protocolVersion\" : \"4\" , \"keepalive\" : \"60\" , \"cleansession\" : true , \"birthTopic\" : \"\" , \"birthQos\" : \"0\" , \"birthPayload\" : \"\" , \"birthMsg\" : {}, \"closeTopic\" : \"\" , \"closeQos\" : \"0\" , \"closePayload\" : \"\" , \"closeMsg\" : {}, \"willTopic\" : \"shengtou/sensor/TH001_HA/status\" , \"willQos\" : \"0\" , \"willPayload\" : \"{\\\"messageId\\\":\\\"sts_offline\\\",\\\"timestamp\\\":0,\\\"deviceId\\\":\\\"TH001_HA\\\",\\\"deviceType\\\":\\\"sensor\\\",\\\"version\\\":\\\"1.0\\\",\\\"data\\\":{\\\"status\\\":{\\\"online\\\":false,\\\"lastHeartbeat\\\":0,\\\"uptime\\\":0}}}\" , \"willMsg\" : {}, \"sessionExpiry\" : \"\" } ] \u5f53\u7136\uff0c\u4f60\u4e5f\u53ef\u4ee5\u4ece \u5de5\u4f5c\u6d41\u6587\u4ef6 \u5bfc\u5165\u65b0\u65b0\u5de5\u4f5c\u6d41\u3002 \u70b9\u51fb\u4e0a\u8ff0\u94fe\u63a5\u540e\uff0c\u4e0b\u8f7d\u6587\u4ef6\uff0c\u5e76\u89e3\u538b\uff0c\u5f97\u5230\u4e00\u4e2a\u540d\u4e3a flows.json \u7684\u6587\u4ef6\u3002 \u70b9\u51fb\u5bfc\u5165\u8282\u70b9\u6587\u4ef6\uff0c \u90e8\u7f72\u6210\u529f\u540e\uff0c\u4f1a\u51fa\u73b0\u5982\u4e0b\u56fe\u6240\u793a\u7684\u5de5\u4f5c\u6d41 \u6b64\u65f6\uff0c\u5de5\u4f5c\u6d41\u5df2\u521b\u5b8c\u6210. 3. \u914d\u7f6eMQTT\u8282\u70b9 \u00b6 \u5de5\u4f5c\u6d41\u4e2d\u6709\u4e24\u4e2aMQTT\u8282\u70b9\uff0c\u5206\u522b\u662fHome Assistant\u7684MQTT Broker\u548c\u516c\u53f8MQTT\u670d\u52a1\u5668\u7684Broker\u3002\u8fd9\u4e24\u4e2a\u8282\u70b9\u7684\u914d\u7f6e\u9700\u8981\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u8fdb\u884c\u8c03\u6574\u3002 \u9996\u5148\uff0c\u8981\u5148\u914d\u7f6eHome Assistant\u7684MQTT Broker\u8282\u70b9\uff0c\u786e\u4fdd\u5176\u8fde\u63a5\u4fe1\u606f\u6b63\u786e\u65e0\u8bef\u3002 \u5728\u6211\u4eec\u6ca1\u6709\u914d\u7f6emqtt in \u7684\u8fde\u63a5\u4fe1\u606f\u65f6\uff0c\u6211\u4eec\u53d1\u73b0\u8fd9\u4e2a\u8282\u70b9\u4e00\u76f4\u5904\u7406\u8fde\u63a5\u4e2d \u53cc\u51fb\u8be5\u8282\u70b9\uff0c\u8fdb\u5165\u914d\u7f6e\u754c\u9762 \u70b9\u51fb\u7f16\u8f91\u56fe\u6807 \u5728\u7f16\u8f91mqtt-broker\u8282\u70b9\u7684\u754c\u9762\u4e2d\u7684\u8fde\u63a5\u53c2\u6570\u9009\u9879\u5361\u4e2d\uff0c\u8f93\u5165\u6b63\u786e\u7684\u670d\u52a1\u7aef\u4e0e\u7aef\u53e3\u53f7 \u5982\u679cMQTT\u6709\u7528\u6237\u540d\u548c\u5bc6\u7801\uff0c\u8bf7\u5728\u8ba4\u8bc1\u9009\u9879\u5361\u4e2d\u8f93\u5165\u6b63\u786e\u7684\u7528\u6237\u540d\u548c\u5bc6\u7801\u540e\uff0c\u7136\u540e\u70b9\u66f4\u65b0 \u7136\u540e\uff0c\u518d\u70b9\u51fb\u5b8c\u6210 \u6700\u540e\u70b9\u51fb\u90e8\u7f72 \u90e8\u7f72\u5b8c\u6210\u540e\uff0c\u6211\u4eec\u53ef\u4ee5\u770b\u5230\uff0c\u6b64\u8282\u70b9\u4f1a\u53d8\u4e3a\u5df2\u8054\u63a5 \u5bf9\u4e8e\"\u53d1\u5e03\u5230\u516c\u53f8MQTT\"\u8282\u70b9\uff0c\u6211\u4eec\u9700\u8981\u914d\u7f6e\u8fde\u63a5\u5230\u516c\u53f8MQTT\u670d\u52a1\u5668\u7684Broker\u3002\u4e5f\u65f6\u540c\u6837\u7684\u64cd\u4f5c\u65b9\u6cd5\uff0c\u53cc\u51fb \u7136\u540e\uff0c\u66f4\u65b0\uff0c\u5b8c\u6210\uff0c\u90e8\u7f72\u5373\u53ef\u3002 \u67e5\u627eHomeAssistant\u7684Mqtt\u914d\u7f6e\u4fe1\u606f \u5bf9\u4e8eHomeAssistant\u6211\u4eec\u4e00\u822c\u90fd\u662f\u63d0\u524d\u90e8\u7f72\u4e86\u5185\u7f6e\u7684MQTT Broker,\u5728\u4e0d\u77e5\u7aef\u53e3\u4e0e\u5bc6\u7801\u7684\u60c5\u51b5\u4e0b\uff0c\u6211\u6837\u53ef\u4ee5\u5728HomeAssistant\u4e2d\u53bb\u67e5\u627e \u8fdb\u5165\u8bbe\u7f6e\u52a0\u8f7d\u9879 \u627e\u5230Mosquitto broker\u8fd9\u4e2a\u9009\u9879\u5361,\u70b9\u51fb\u8fdb\u5165 \u70b9\u51fb\u914d\u7f6e\u9009\u9879\u5361 \u5728\u8fd9\u91cc\u53ef\u4ee5\u770b\u5230MQTT\u7684\u7aef\u53e3\u53f7\u4e0e\u7528\u6237\u540d\u5bc6\u7801\u7b49\u4fe1\u606f\uff0c\u53ca\u4e0b\u9762\u7684mqtt\u5f00\u653e\u7684\u7aef\u53e3\u4fe1\u606f\uff0cip\u5730\u5740\uff0c\u5c31\u662fha\u4e3b\u673a\u6240\u5728\u7684Ip\u5730\u5740\u3002\u4ee5\u4e0a\u4fe1\u606f\uff0c\u7528\u6765\u914d\u7f6e\u5de5\u4f5c\u6d41\u7684mqtt in\u7684\u53c2\u6570\u3002 \u516c\u53f8mqtt\u670d\u52a1\u7aef\u53e3\u4fe1\u606f \u8fd9\u4e2a\u53c2\u6570\uff0c\u8bf7\u5411\u516c\u53f8\u7ba1\u7406\u5458\u83b7\u53d6\uff0c\u6216\u8005\u5728\u516c\u53f8MQTT\u670d\u52a1\u5668\u7684\u914d\u7f6e\u6587\u4ef6\u4e2d\u67e5\u770b\u3002 4.\u914d\u7f6e\u5de5\u4f5c\u6d41\u5168\u5c40\u53d8\u91cf \u00b6 \u53cc\u51fb\u5de5\u4f5c\u6d41\u7684\u8282\u70b9\"\u8bbe\u7f6e\u5168\u5c40\u914d\u7f6e\",\u6253\u5f00\u7f16\u8f91function\u8282\u70b9 \u5bf9\u5982\u4e0b\u4e09\u884c,\u8fdb\u884c\u66f4\u6539 // \u8bbe\u7f6e\u5168\u5c40\u5171\u4eab\u5e38\u91cf global . set ( \"nameSpace\" , \"Environment\" ); //\u547d\u540d\u7a7a\u95f4\uff0c\u9ed8\u8ba4\u4e3a\uff1aEnvironment\uff0c\u5982\u679c\u6709\u9700\u8981\uff0c\u4ee5\u8054\u7cfb\u76f8\u5173\u5de5\u7a0b\u5e08\u786e\u8ba4\u540e\uff0c\u66f4\u6539. global . set ( \"clientCode\" , \"Data-It_XzOffice\" ); // \u5ba2\u6237\u7aef\u4ee3\u7801\uff0c\u9ed8\u8ba4\u4e3a\uff1aData-It_XzOffice\uff0c\u4e00\u5b9a\u8981\u6539\u4e3a\u4e2d\u5fc3\u5bf9\u5c31\u7684ClientCode\uff0c global . set ( \"deviceId\" , \"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\" ); //\u4e00\u5b9a\u8981\u6539\u4e3a\u4e4b\u524d\u6211\u4eec\u5b9a\u7684\u4f20\u611f\u5668\u5b9e\u4f53ID \u5982\u679c\u4e0d\u786e\u5b9a\uff0c\u8bf7\u8054\u7cfb\u76f8\u5173\u5de5\u7a0b\u5e08\u786e\u8ba4\u3002 \u7136\u540e\uff0c\u70b9\u51fb\uff0c\u5b8c\u6210\uff0c\u90e8\u7f72 \u7136\u540e\uff0c\u4e0b\u4e00\u6b65\uff0c\u975e\u5e38\u91cd\u8981\uff0c\u4e00\u5b9a\u8981\u6267\u884c \u8fd9\u4e00\u6b65\uff0c\u975e\u5e38\u91cd\u8981\uff0c\u5fc5\u987b\u6267\u884c\uff0c\u5426\u5219\u5de5\u4f5c\u6d41\u6ca1\u6709\u628a\u5168\u5c40\u53d8\u91cf\u5199\u5165\u5de5\u4f5c\u6d41\uff0c\u4f1a\u5bfc\u81f4\u53d1\u5e03\u6570\u636e\u4e0d\u6b63\u786e\u3002 \u7136\u540e\uff0c\u6211\u6837\u5c31\u53ef\u4ee5\u7528\u5728debug\u7684\u65e5\u5fd7\u4e2d\u770b\u5230\u6211\u4eec\u53d1\u5e03\u7684\u8282\u70b9\u6570\u636e\u4e86\uff0c \u6b64\u56fe\uff0c\u53ef\u4ee5\u89c2\u5bdf\u5230mqtt\u53d1\u5e03\u5230\u516c\u53f8\u7684\u6570\u636e\uff0cclientCode\uff0cdeviceid\u662f\u5426\u6b63\u5e38\u4e86\u3002 5. \u6d4b\u8bd5\u5de5\u4f5c\u6d41\u7684\u6570\u636e\u662f\u5426\u6b63\u5e38 \u00b6 \u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u7b2c\u4e09\u65b9\u5de5\u5177\u6765\u67e5\u770b\u516c\u53f8mqtt\u670d\u52a1\u6536\u5230\u7684\u6570\u636e\u662f\u5426\u6b63\u5e38\u5982\u4e0b\u56fe \u8fd9\u91cc\u6211\u63a8\u8350\u4f7f\u7528\u5de5\u5177 MQTTX \u4e0b\u8f7d\u5730\u5740\u4e3a\uff1ahttps://mqttx.app/downloads \u81f3\u6b64,\u900f\u6790\u4e2d\u5fc3HA\u73af\u5883\u6e29\u5ea6\u6570\u636e\u53d1\u9001\u5230\u80dc\u900f\u7684\u5de5\u4f5c\u6d41\u914d\u7f6e\u5b8c\u6210\u3002","title":"\u900f\u6790\u4e2d\u5fc3HA\u73af\u5883\u6e29\u5ea6\u53d1\u9001\u5230\u80dc\u900f\u7684\u64cd\u4f5c\u6307\u5357"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#_1","text":"","title":"\u900f\u6790\u4e2d\u5fc3\u73af\u5883\u6e29\u5ea6\u53d1\u9001\u5230\u80dc\u900f\u7684\u64cd\u4f5c\u6307\u5357"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#1","text":"\u5df2\u5b89\u88c5\u5e76\u914d\u7f6e\u597dHome Assistant \u5df2\u7ecf\u5b89\u88c5\u5e76\u914d\u7f6e\u4e86MQTT Broker \u5df2\u7ecf\u5b89\u88c5\u5e76\u914d\u7f6e\u4e86Node-RED \u5df2\u7ecf\u5b89\u88c5\u5e76\u914d\u7f6e\u4e86\u7c73\u5bb6\u6e29\u5ea6\u4f20\u611f\u5668\uff08\u5982Miaomiaoc CN BLT 3\uff09 \u5df2\u7ecf\u83b7\u53d6\u5230\u4e86\u80dc\u900f\u7684MQTT\u670d\u52a1\u5668Broker\u5730\u5740\u548c\u7aef\u53e3","title":"1. \u524d\u63d0\u6761\u4ef6"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#2-home-assistant","text":"","title":"2. \u5728Home Assistant\u4e2d\u914d\u7f6e\u4f20\u611f\u5668\u81ea\u52a8\u5316"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#1id","text":"\u900f\u6790\u4e2d\u5fc3\u53ef\u80fd\u5b89\u88c5\u4e86\u591a\u4e2a\u7c73\u5bb6\u6e29\u5ea6\u4f20\u611f\u5668\uff0c\u9996\u5148\u9700\u8981\u627e\u5230\u5bf9\u5e94\u7684\u5b9e\u4f53ID\u3002 \u53ef\u4ee5\u5728Home Assistant\u7684\u5f00\u53d1\u8005\u5de5\u5177\u4e2d\u67e5\u770b\u5f53\u524d\u6240\u6709\u4f20\u611f\u5668\u7684\u72b6\u6001\u3002 \u4e5f\u53ef\u4ee5\u5728\u5df2\u7ecf\u8bbe\u5907\u4e0e\u670d\u52a1\uff0c\u96c6\u6210\uff0c\u4e2d\u627e\u5230\u7c73\u5bb6\u7684\u8bbe\u5907\uff0c\u627e\u5230\u90a3\u4e2a\u4f20\u611f\u5668 \u627e\u5230\u9700\u8981\u914d\u7f6e\u4e3a\u73af\u5883\u6e29\u5ea6\u7684\u4f20\u611f\u5668 \u70b9\u51fb\u6e29\u5ea6\u5b9e\u4f53 \u70b9\u51fb\u8bbe\u7f6e\u56fe\u6807 \u5982\u672c\u4f8b\u83b7\u53d6\u5230\u7684\u5b9e\u4f53ID\u4e3a sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1 \u3002\u8bb0\u4f4f\u6b64ID\uff0c\u540e\u9762\u5f88\u591a\u5730\u65b9\u90fd\u4f1a\u7528\u5230.","title":"1.\u627e\u5230\u73af\u5883\u6e29\u5ea6\u4f20\u611f\u5668\u5b9e\u4f53ID"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#2","text":"\u6211\u4eec\u9700\u8981\u521b\u5efa\u4e00\u4e2a\u81ea\u52a8\u5316\u89c4\u5219\uff0c\u5f53\u4f20\u611f\u5668\u72b6\u6001\u66f4\u65b0\u65f6\u53ca\u6bcf\u969430\u79d2\uff0c\u5c06\u6e29\u5ea6\u6570\u636e\u53d1\u9001\u5230Home Assistant\u5185\u90e8\u96c6\u6210\u7684\u7684MQTT\u670d\u52a1\u5668\u3002 \u8fdb\u5165 \"\u914d\u7f6e\" \u2192 \"\u81ea\u52a8\u5316\u548c\u573a\u666f\" \u2192 \"\u81ea\u52a8\u5316\"\uff0c\u70b9\u51fb\u53f3\u4e0b\u89d2\u7684 \"+\" \u521b\u5efa\u65b0\u7684\u81ea\u52a8\u5316\u89c4\u5219\u3002 \u8fdb\u5165\u81ea\u52a8\u5316\u89c4\u5219\u7f16\u8f91\u754c\u9762\u540e\uff0c\u70b9\u51fb\u53f3\u4e0b\u89d2\u7684\"\u521b\u5efa\u81ea\u52a8\u5316\"\u6309\u94ae\u3002\u5728\u5f39\u51fa\u7684\u5bf9\u8bdd\u6846\u4e2d\u9009\u62e9\"\u521b\u5efa\u65b0\u7684\u81ea\u52a8\u5316\"\u3002 \u5728\u65b0\u5efa\u81ea\u52a8\u5316\u754c\u9762\uff0c\u70b9\u53f3\u4e0a\u89d2\u7684\u4e09\u4e2a\u70b9\uff0c\u5982\u4e0b\u56fe\u6240\u793a \u5728\u5f39\u51fa\u7684\u4e0b\u62c9\u83dc\u5355\u4e2d\uff0c\u70b9\u51fb\u8fdb\u5165YHAML\u7f16\u8f91,\u8fdb\u5165\u4ee3\u7801\u6a21\u5f0f\uff0c\u5982\u4e0b\u6240\u793a \u5728\u8fd9\u4e2a\u5927\u7684\u6587\u672c\u6846\u4e2d\u7c98\u5165\u5982\u4e0b\u4ee3\u7801\uff1a alias : \u53d1\u5e03\u73af\u5883\u6e29\u5ea6\u4f20\u611f\u5668\u72b6\u6001\u5230MQTT description : \u5f53\u7c73\u5bb6\u6e29\u5ea6\u4f20\u611f\u5668\u72b6\u6001\u53d8\u5316\u6216\u6bcf30\u79d2\u5b9a\u65f6\u65f6\uff0c\u81ea\u52a8\u53d1\u5e03\u5230MQTT\u4f9bNode-RED\u4f7f\u7528 triggers : - entity_id : sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1 trigger : state - seconds : /30 trigger : time_pattern conditions : - condition : template value_template : >- {{ states('sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1') not in ['unavailable', 'unknown', 'None'] and states('sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1') | float(-999) != -999 }} actions : - data : topic : >- homeassistant/sensor/sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1/state payload : >- {{ states('sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1') }} retain : false qos : 0 action : mqtt.publish mode : single \u6ce8\u610f: \u4ee5\u4e0a\u4ee3\u7801\u4e2d\u7684 sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1 \u662f\u793a\u4f8b\u5b9e\u4f53ID\uff0c\u8bf7\u66ff\u6362\u4e3a\u4f60 \u5b9e\u9645\u7684\u6e29\u5ea6\u4f20\u611f\u5668\u5b9e\u4f53ID \u3002 \u653e\u7f6e\u5b8c\u6210\u540e\uff0c\u5982\u4e0b\u56fe\u793a\u610f \u89c2\u5bdf\u4e0a\u6b21\u89e6\u53d1\u5217\u662f\u5426\u4f1a\u6bcf\u969430\u79d2\u6267\u884c\u4e00\u6b21 \u8fd4\u56de\u5230\u4f20\u611f\u5668\u7684\u8bbe\u5907\u754c\u9762\u4e5f\u80fd\u770b\u5230\u8bbe\u5907\u7684\u81ea\u52a8\u5316\u4e0b\u9762\u6709\u4e00\u6761\u81ea\u52a8\u5316\u89c4\u5219\uff0c\u5982\u4e0b\u56fe \u5230\u6b64\uff0c\u81ea\u52a8\u5316\u89c4\u5219\u5df2\u914d\u7f6e\u5b8c\u6210\u3002","title":"2. \u521b\u5efa\u81ea\u52a8\u5316\u89c4\u5219"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#3-node-redmqtt","text":"","title":"3. \u5728Node-RED\u4e2d\u914d\u7f6eMQTT\u63a5\u6536\u8f6c\u53d1"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#1-node-red","text":"\u6253\u5f00nod-red\u7f16\u8f91\u5668\uff0c\u6709\u7684HA\u53ef\u80fd\u662f\u914d\u7f6e\u5728\u5de6\u4fa7\u822a\u83dc\u5355\u4e2d\uff0c\u5982\u4e0b\u56fe\u5fd7\u793a\uff0c\u70b9\u51fb\u5373\u53ef\u8fdb\u5165 \u6709\u7684\u662f\u6ca1\u6709\u914d\u7f6enode-red\u5230\u5de6\u4fa7\u5bfc\u822a\u83dc\u5355\u7684\uff0c\u8fd9\u79cd\u60c5\u51b5\u4e0b\uff0c\u53ef\u4ee5\u70b9\u51fb\"\u8bbe\u7f6e-\u52a0\u8f7d\u9879\"\u8fdb\u5165\u52a0\u8f7d\u9879\u9875\u9762 \u627e\u5230Node-RED\u52a0\u8f7d\u9879\uff0c\u70b9\u51fb\u8fdb\u5165 \u8fdb\u5165\u754c\u9762\u5982\u4e0b\uff1a","title":"1. \u6253\u5f00Node-RED\u7f16\u8f91\u5668"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#2_1","text":"\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\"\u83dc\u5355\"\u6309\u94ae\uff0c\u518d\u70b9\u5bfc\u5165\u3002 \u5728\u6b64\u5904\u8d34\u5165\u5de5\u4f5c\u6d41\u4ee3\u7801\uff0c\u6ce8\u610f\uff1a\u8981\u9009\u62e9\u5bfc\u5165\u5230\u65b0\u6d41\u7a0b \u5de5\u4f5c\u6d41\u4ee3\u7801\u5982\u4e0b [ { \"id\" : \"1407d4531e19a951\" , \"type\" : \"tab\" , \"label\" : \"\u900f\u6790\u4e2d\u5fc3\u73af\u5883\u6e29\u5ea6\u6570\u636e\u8f6c\u53d1\" , \"disabled\" : false , \"info\" : \"\u4eceHomeAssistant\u83b7\u53d6\u6e29\u5ea6\u4f20\u611f\u5668\u6570\u636e\u5e76\u53d1\u5e03\u5230\u516c\u53f8MQTT\u670d\u52a1\u5668\" }, { \"id\" : \"97e254f4a87ddde9\" , \"type\" : \"mqtt in\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u8ba2\u9605HA\u6e29\u5ea6\u4f20\u611f\u5668\" , \"topic\" : \"homeassistant/sensor/+/state\" , \"qos\" : \"0\" , \"datatype\" : \"auto\" , \"broker\" : \"mqtt-ha-broker\" , \"nl\" : false , \"rap\" : true , \"rh\" : 0 , \"inputs\" : 0 , \"x\" : 150 , \"y\" : 100 , \"wires\" : [ [ \"44d729e67618e4f2\" ] ] }, { \"id\" : \"44d729e67618e4f2\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u5904\u7406\u6e29\u5ea6\u6570\u636e\" , \"func\" : \"// \u4ece\u5168\u5c40\u53d8\u91cf\u83b7\u53d6\u5171\u4eab\u914d\u7f6e\\nconst nameSpace = global.get(\\\"nameSpace\\\") || \\\"Environment\\\";\\nconst clientCode = global.get(\\\"clientCode\\\") || \\\"Data-It_XzOffice\\\";\\nconst targetDeviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\n\\n// \u4ecetopic\u4e2d\u63d0\u53d6\u5f53\u524d\u8bbe\u5907ID\\nconst topicParts = msg.topic.split('/');\\nconst currentDeviceId = topicParts.length >= 3 ? topicParts[2] : \\\"\\\";\\n\\n// \u53ea\u5904\u7406\u76ee\u6807\u8bbe\u5907\u7684\u6d88\u606f\\nif (currentDeviceId !== targetDeviceId) {\\n node.log(\\\"\u5ffd\u7565\u8bbe\u5907\u6d88\u606f: \\\" + currentDeviceId + \\\" (\u76ee\u6807\u8bbe\u5907: \\\" + targetDeviceId + \\\")\\\");\\n return null;\\n}\\n\\n// \u751f\u6210\u552f\u4e00\u7684\u6d88\u606fID\\nconst messageId = \\\"temp_\\\" + Date.now() + \\\"_\\\" + Math.floor(Math.random() * 1000);\\nconst timestamp = Date.now();\\nconst deviceType = \\\"sensor\\\";\\n\\n// \u89e3\u6790\u6e29\u5ea6\u503c\\nlet temperature = parseFloat(msg.payload);\\nif (isNaN(temperature)) {\\n node.warn(\\\"\u63a5\u6536\u5230\u65e0\u6548\u7684\u6e29\u5ea6\u503c: \\\" + msg.payload);\\n return null;\\n}\\n\\n// \u6309\u7167\u80dc\u900f\u7269\u8054\u7f51\u901a\u4fe1\u534f\u8bae\u683c\u5f0f\u5316\u6570\u636e\\nconst protocolMessage = {\\n \\\"messageId\\\": messageId,\\n \\\"timestamp\\\": timestamp,\\n \\\"clientCode\\\": clientCode,\\n \\\"deviceId\\\": targetDeviceId,\\n \\\"deviceType\\\": deviceType,\\n \\\"version\\\": \\\"1.0\\\",\\n \\\"data\\\": {\\n \\\"properties\\\": {\\n \\\"temperature\\\": {\\n \\\"value\\\": temperature,\\n \\\"unit\\\": \\\"\u00b0C\\\",\\n \\\"quality\\\": \\\"good\\\",\\n \\\"timestamp\\\": timestamp\\n }\\n }\\n }\\n};\\n\\n// \u8bbe\u7f6e\u8f93\u51fa\u6d88\u606f\\nmsg.payload = JSON.stringify(protocolMessage);\\nmsg.topic = `${nameSpace}/sensor/${clientCode}/${targetDeviceId}/properties`;\\nmsg.qos = 0;\\n\\nnode.log(\\\"\u6e29\u5ea6\u6570\u636e\u5df2\u5904\u7406: \\\" + temperature + \\\"\u00b0C (\u8bbe\u5907: \\\" + targetDeviceId + \\\")\\\");\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 420 , \"y\" : 100 , \"wires\" : [ [ \"573842ea77192dbb\" , \"4c630c164e08dc2c\" ] ] }, { \"id\" : \"573842ea77192dbb\" , \"type\" : \"mqtt out\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u53d1\u5e03\u5230\u516c\u53f8MQTT\" , \"topic\" : \"\" , \"qos\" : \"\" , \"retain\" : \"\" , \"respTopic\" : \"\" , \"contentType\" : \"\" , \"userProps\" : \"\" , \"correl\" : \"\" , \"expiry\" : \"\" , \"broker\" : \"mqtt-company-broker\" , \"x\" : 990 , \"y\" : 80 , \"wires\" : [] }, { \"id\" : \"4c630c164e08dc2c\" , \"type\" : \"debug\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u8c03\u8bd5\u8f93\u51fa\" , \"active\" : true , \"tosidebar\" : true , \"console\" : false , \"tostatus\" : false , \"complete\" : \"payload\" , \"targetType\" : \"msg\" , \"statusVal\" : \"\" , \"statusType\" : \"auto\" , \"x\" : 1040 , \"y\" : 360 , \"wires\" : [] }, { \"id\" : \"495c392574ee1bf4\" , \"type\" : \"inject\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u53d1\u5e03\u8bbe\u5907\u7269\u6a21\u578b\" , \"props\" : [ { \"p\" : \"payload\" }, { \"p\" : \"topic\" , \"vt\" : \"str\" } ], \"repeat\" : \"60\" , \"crontab\" : \"\" , \"once\" : true , \"onceDelay\" : \"5\" , \"topic\" : \"shengtou/sensor/TH001_HA/model\" , \"payload\" : \"\" , \"payloadType\" : \"date\" , \"x\" : 170 , \"y\" : 180 , \"wires\" : [ [ \"3aea3ce2deb4ea99\" ] ] }, { \"id\" : \"3aea3ce2deb4ea99\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u751f\u6210\u7269\u6a21\u578b\u6570\u636e\" , \"func\" : \"const messageId = \\\"mdl_\\\" + Date.now();\\nconst timestamp = Date.now();\\n// \u4ece\u5168\u5c40\u53d8\u91cf\u83b7\u53d6\u5171\u4eab\u914d\u7f6e\\nconst nameSpace = global.get(\\\"nameSpace\\\") || \\\"Environment\\\";\\nconst clientCode = global.get(\\\"clientCode\\\") || \\\"Data-It_XzOffice\\\";\\nconst deviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\nconst deviceType = \\\"sensor\\\";\\n\\n// \u6309\u7167\u80dc\u900f\u7269\u8054\u7f51\u901a\u4fe1\u534f\u8bae\u751f\u6210\u7269\u6a21\u578b\u5b9a\u4e49\\nconst modelMessage = {\\n \\\"messageId\\\": messageId,\\n \\\"timestamp\\\": timestamp,\\n \\\"clientCode\\\": clientCode,\\n \\\"deviceId\\\": deviceId,\\n \\\"deviceType\\\": deviceType,\\n \\\"version\\\": \\\"1.0\\\",\\n \\\"data\\\": {\\n \\\"model\\\": {\\n \\\"deviceInfo\\\": {\\n \\\"manufacturer\\\": \\\"\u5c0f\u7c73\\\",\\n \\\"model\\\": \\\"MIAOMIAOC_CN_BLT_3_11A1SBR5K5O01_T2\\\",\\n \\\"version\\\": \\\"1.0.0\\\",\\n \\\"description\\\": \\\"\u7c73\u5bb6\u6e29\u6e7f\u5ea6\u4f20\u611f\u5668(\u901a\u8fc7HomeAssistant\u96c6\u6210)\\\"\\n },\\n \\\"properties\\\": {\\n \\\"temperature\\\": {\\n \\\"dataType\\\": \\\"float\\\",\\n \\\"unit\\\": \\\"\u00b0C\\\",\\n \\\"range\\\": {\\n \\\"min\\\": -40,\\n \\\"max\\\": 85\\n },\\n \\\"precision\\\": 1,\\n \\\"description\\\": \\\"\u73af\u5883\u6e29\u5ea6\\\"\\n }\\n },\\n \\\"events\\\": {\\n \\\"startup\\\": {\\n \\\"eventType\\\": \\\"info\\\",\\n \\\"description\\\": \\\"\u8bbe\u5907\u542f\u52a8\u4e8b\u4ef6\\\"\\n }\\n },\\n \\\"alarms\\\": {\\n \\\"TEMP_HIGH\\\": {\\n \\\"alarmType\\\": \\\"threshold_exceeded\\\",\\n \\\"description\\\": \\\"\u6e29\u5ea6\u8fc7\u9ad8\u62a5\u8b66\\\",\\n \\\"defaultThreshold\\\": 35.0\\n },\\n \\\"TEMP_LOW\\\": {\\n \\\"alarmType\\\": \\\"threshold_exceeded\\\",\\n \\\"description\\\": \\\"\u6e29\u5ea6\u8fc7\u4f4e\u62a5\u8b66\\\",\\n \\\"defaultThreshold\\\": 0.0\\n }\\n }\\n }\\n }\\n};\\n\\n// \u8bbe\u7f6eMQTT\u53d1\u5e03\u4e3b\u9898\\nmsg.topic = `${nameSpace}/sensor/${clientCode}/${deviceId}/model`;\\nmsg.payload = JSON.stringify(modelMessage);\\nmsg.qos = 1;\\n\\nnode.log(\\\"\u8bbe\u5907\u7269\u6a21\u578b\u6570\u636e\u5df2\u751f\u6210\uff0c\u53d1\u5e03\u5230\u4e3b\u9898: \\\" + msg.topic);\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 400 , \"y\" : 160 , \"wires\" : [ [ \"573842ea77192dbb\" , \"4c630c164e08dc2c\" ] ] }, { \"id\" : \"70e1e283448c941e\" , \"type\" : \"inject\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u8bbe\u5907\u72b6\u6001\u5fc3\u8df3\" , \"props\" : [ { \"p\" : \"payload\" }, { \"p\" : \"topic\" , \"vt\" : \"str\" } ], \"repeat\" : \"120\" , \"crontab\" : \"\" , \"once\" : true , \"onceDelay\" : \"10\" , \"topic\" : \"shengtou/sensor/TH001_HA/status\" , \"payload\" : \"\" , \"payloadType\" : \"date\" , \"x\" : 160 , \"y\" : 240 , \"wires\" : [ [ \"ae74b6d386748045\" ] ] }, { \"id\" : \"ae74b6d386748045\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u751f\u6210\u72b6\u6001\u6570\u636e\" , \"func\" : \"const messageId = \\\"sts_\\\" + Date.now();\\nconst timestamp = Date.now();\\n// \u4ece\u5168\u5c40\u53d8\u91cf\u83b7\u53d6\u5171\u4eab\u914d\u7f6e\\nconst nameSpace = global.get(\\\"nameSpace\\\") || \\\"Environment\\\";\\nconst clientCode = global.get(\\\"clientCode\\\") || \\\"Data-It_XzOffice\\\";\\nconst deviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\nconst deviceType = \\\"sensor\\\";\\n\\n// \u8ba1\u7b97\u8bbe\u5907\u8fd0\u884c\u65f6\u95f4\uff08\u4ece\u7b2c\u4e00\u6b21\u542f\u52a8\u5f00\u59cb\uff09\\nif (!context.get(\\\"startTime\\\")) {\\n context.set(\\\"startTime\\\", timestamp);\\n}\\nconst startTime = context.get(\\\"startTime\\\");\\nconst uptime = timestamp - startTime;\\n\\n// \u6309\u7167\u80dc\u900f\u7269\u8054\u7f51\u901a\u4fe1\u534f\u8bae\u751f\u6210\u72b6\u6001\u6570\u636e\\nconst statusMessage = {\\n \\\"messageId\\\": messageId,\\n \\\"timestamp\\\": timestamp,\\n \\\"clientCode\\\": clientCode,\\n \\\"deviceId\\\": deviceId,\\n \\\"deviceType\\\": deviceType,\\n \\\"version\\\": \\\"1.0\\\",\\n \\\"data\\\": {\\n \\\"status\\\": {\\n \\\"online\\\": true,\\n \\\"lastHeartbeat\\\": timestamp,\\n \\\"uptime\\\": uptime\\n }\\n }\\n};\\n\\n// \u8bbe\u7f6eMQTT\u53d1\u5e03\u4e3b\u9898\\nmsg.topic = `${nameSpace}/sensor/${clientCode}/${deviceId}/status`;\\nmsg.payload = JSON.stringify(statusMessage);\\nmsg.qos = 0;\\n\\nnode.log(\\\"\u8bbe\u5907\u72b6\u6001\u5fc3\u8df3\u5df2\u53d1\u9001\uff0c\u53d1\u5e03\u5230\u4e3b\u9898: \\\" + msg.topic);\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 400 , \"y\" : 240 , \"wires\" : [ [ \"573842ea77192dbb\" , \"4c630c164e08dc2c\" ] ] }, { \"id\" : \"7f9acf10d0c6085d\" , \"type\" : \"inject\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u521d\u59cb\u5316\u5168\u5c40\u914d\u7f6e\" , \"props\" : [ { \"p\" : \"payload\" } ], \"repeat\" : \"\" , \"crontab\" : \"\" , \"once\" : true , \"onceDelay\" : \"1\" , \"topic\" : \"\" , \"payload\" : \"\" , \"payloadType\" : \"date\" , \"x\" : 150 , \"y\" : 40 , \"wires\" : [ [ \"6f6b825dfc5e9512\" ] ] }, { \"id\" : \"6f6b825dfc5e9512\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u8bbe\u7f6e\u5168\u5c40\u914d\u7f6e\" , \"func\" : \"// \u8bbe\u7f6e\u5168\u5c40\u5171\u4eab\u5e38\u91cf\\nglobal.set(\\\"nameSpace\\\", \\\"Environment\\\");\\nglobal.set(\\\"clientCode\\\", \\\"Data-It_XzOffice\\\");\\nglobal.set(\\\"deviceId\\\", \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\");\\n\\nnode.log(\\\"\u5168\u5c40\u914d\u7f6e\u5df2\u8bbe\u7f6e: nameSpace=\\\" + global.get(\\\"nameSpace\\\") + \\\", clientCode=\\\" + global.get(\\\"clientCode\\\") + \\\", deviceId=\\\" + global.get(\\\"deviceId\\\"));\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 360 , \"y\" : 40 , \"wires\" : [ [ \"794c422d39898a7f\" ] ] }, { \"id\" : \"794c422d39898a7f\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u66f4\u65b0MQTT\u8ba2\u9605Topic\" , \"func\" : \"// \u4ece\u5168\u5c40\u53d8\u91cf\u751f\u6210HomeAssistant MQTT\u8ba2\u9605Topic\\nconst deviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\nconst haTopic = `homeassistant/sensor/${deviceId}/state`;\\n\\n// \u5c06Topic\u4fdd\u5b58\u5230\u5168\u5c40\u53d8\u91cf\u4f9b\u5176\u4ed6\u5730\u65b9\u4f7f\u7528\\nglobal.set(\\\"haSubscribeTopic\\\", haTopic);\\n\\nnode.log(\\\"HomeAssistant\u8ba2\u9605Topic\u5df2\u66f4\u65b0: \\\" + haTopic);\\nnode.log(\\\"\u6ce8\u610f\uff1a\u5982\u9700\u66f4\u6539MQTT In\u8282\u70b9\u7684\u8ba2\u9605Topic\uff0c\u8bf7\u624b\u52a8\u4fee\u6539\u4e3a: \\\" + haTopic);\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 590 , \"y\" : 40 , \"wires\" : [ [] ] }, { \"id\" : \"3bf854e9bd3e6937\" , \"type\" : \"inject\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u542f\u52a8\u4e8b\u4ef6\" , \"props\" : [ { \"p\" : \"payload\" }, { \"p\" : \"topic\" , \"vt\" : \"str\" } ], \"repeat\" : \"\" , \"crontab\" : \"\" , \"once\" : true , \"onceDelay\" : \"15\" , \"topic\" : \"shengtou/sensor/TH001_HA/events\" , \"payload\" : \"\" , \"payloadType\" : \"date\" , \"x\" : 160 , \"y\" : 340 , \"wires\" : [ [ \"26f6196b2d6fba29\" ] ] }, { \"id\" : \"26f6196b2d6fba29\" , \"type\" : \"function\" , \"z\" : \"1407d4531e19a951\" , \"name\" : \"\u751f\u6210\u542f\u52a8\u4e8b\u4ef6\" , \"func\" : \"const messageId = \\\"evt_startup_\\\" + Date.now();\\nconst timestamp = Date.now();\\n// \u4ece\u5168\u5c40\u53d8\u91cf\u83b7\u53d6\u5171\u4eab\u914d\u7f6e\\nconst nameSpace = global.get(\\\"nameSpace\\\") || \\\"Environment\\\";\\nconst clientCode = global.get(\\\"clientCode\\\") || \\\"Data-It_XzOffice\\\";\\nconst deviceId = global.get(\\\"deviceId\\\") || \\\"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\\\";\\nconst deviceType = \\\"sensor\\\";\\n\\n// \u6309\u7167\u80dc\u900f\u7269\u8054\u7f51\u901a\u4fe1\u534f\u8bae\u751f\u6210\u4e8b\u4ef6\u6570\u636e\\nconst eventMessage = {\\n \\\"messageId\\\": messageId,\\n \\\"timestamp\\\": timestamp,\\n \\\"clientCode\\\": clientCode,\\n \\\"deviceId\\\": deviceId,\\n \\\"deviceType\\\": deviceType,\\n \\\"version\\\": \\\"1.0\\\",\\n \\\"data\\\": {\\n \\\"events\\\": [\\n {\\n \\\"eventType\\\": \\\"startup\\\",\\n \\\"eventLevel\\\": \\\"info\\\",\\n \\\"eventCode\\\": \\\"EVT_001\\\",\\n \\\"description\\\": \\\"HomeAssistant\u6e29\u5ea6\u4f20\u611f\u5668\u4ee3\u7406\u8bbe\u5907\u542f\u52a8\u5b8c\u6210\\\",\\n \\\"timestamp\\\": timestamp\\n }\\n ]\\n }\\n};\\n\\n// \u8bbe\u7f6eMQTT\u53d1\u5e03\u4e3b\u9898\\nmsg.topic = `${nameSpace}/sensor/${clientCode}/${deviceId}/events`;\\nmsg.payload = JSON.stringify(eventMessage);\\nmsg.qos = 1;\\n\\nnode.log(\\\"\u8bbe\u5907\u542f\u52a8\u4e8b\u4ef6\u5df2\u751f\u6210\uff0c\u53d1\u5e03\u5230\u4e3b\u9898: \\\" + msg.topic);\\n\\nreturn msg;\" , \"outputs\" : 1 , \"timeout\" : \"\" , \"noerr\" : 0 , \"initialize\" : \"\" , \"finalize\" : \"\" , \"libs\" : [], \"x\" : 380 , \"y\" : 320 , \"wires\" : [ [ \"573842ea77192dbb\" , \"4c630c164e08dc2c\" ] ] }, { \"id\" : \"mqtt-ha-broker\" , \"type\" : \"mqtt-broker\" , \"name\" : \"HomeAssistant MQTT\" , \"broker\" : \"192.168.50.83\" , \"port\" : \"1883\" , \"clientid\" : \"\" , \"autoConnect\" : true , \"usetls\" : false , \"protocolVersion\" : \"4\" , \"keepalive\" : \"60\" , \"cleansession\" : true , \"autoUnsubscribe\" : true , \"birthTopic\" : \"\" , \"birthQos\" : \"0\" , \"birthPayload\" : \"\" , \"birthMsg\" : {}, \"closeTopic\" : \"\" , \"closeQos\" : \"0\" , \"closePayload\" : \"\" , \"closeMsg\" : {}, \"willTopic\" : \"\" , \"willQos\" : \"0\" , \"willPayload\" : \"\" , \"willMsg\" : {}, \"sessionExpiry\" : \"\" }, { \"id\" : \"mqtt-company-broker\" , \"type\" : \"mqtt-broker\" , \"name\" : \"\u516c\u53f8MQTT\u670d\u52a1\u5668\" , \"broker\" : \"mqtt-test.ihemodialysis.com\" , \"port\" : \"62183\" , \"clientid\" : \"\" , \"usetls\" : false , \"protocolVersion\" : \"4\" , \"keepalive\" : \"60\" , \"cleansession\" : true , \"birthTopic\" : \"\" , \"birthQos\" : \"0\" , \"birthPayload\" : \"\" , \"birthMsg\" : {}, \"closeTopic\" : \"\" , \"closeQos\" : \"0\" , \"closePayload\" : \"\" , \"closeMsg\" : {}, \"willTopic\" : \"shengtou/sensor/TH001_HA/status\" , \"willQos\" : \"0\" , \"willPayload\" : \"{\\\"messageId\\\":\\\"sts_offline\\\",\\\"timestamp\\\":0,\\\"deviceId\\\":\\\"TH001_HA\\\",\\\"deviceType\\\":\\\"sensor\\\",\\\"version\\\":\\\"1.0\\\",\\\"data\\\":{\\\"status\\\":{\\\"online\\\":false,\\\"lastHeartbeat\\\":0,\\\"uptime\\\":0}}}\" , \"willMsg\" : {}, \"sessionExpiry\" : \"\" } ] \u5f53\u7136\uff0c\u4f60\u4e5f\u53ef\u4ee5\u4ece \u5de5\u4f5c\u6d41\u6587\u4ef6 \u5bfc\u5165\u65b0\u65b0\u5de5\u4f5c\u6d41\u3002 \u70b9\u51fb\u4e0a\u8ff0\u94fe\u63a5\u540e\uff0c\u4e0b\u8f7d\u6587\u4ef6\uff0c\u5e76\u89e3\u538b\uff0c\u5f97\u5230\u4e00\u4e2a\u540d\u4e3a flows.json \u7684\u6587\u4ef6\u3002 \u70b9\u51fb\u5bfc\u5165\u8282\u70b9\u6587\u4ef6\uff0c \u90e8\u7f72\u6210\u529f\u540e\uff0c\u4f1a\u51fa\u73b0\u5982\u4e0b\u56fe\u6240\u793a\u7684\u5de5\u4f5c\u6d41 \u6b64\u65f6\uff0c\u5de5\u4f5c\u6d41\u5df2\u521b\u5b8c\u6210.","title":"2. \u521b\u5efa\u65b0\u5de5\u4f5c\u6d41"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#3-mqtt","text":"\u5de5\u4f5c\u6d41\u4e2d\u6709\u4e24\u4e2aMQTT\u8282\u70b9\uff0c\u5206\u522b\u662fHome Assistant\u7684MQTT Broker\u548c\u516c\u53f8MQTT\u670d\u52a1\u5668\u7684Broker\u3002\u8fd9\u4e24\u4e2a\u8282\u70b9\u7684\u914d\u7f6e\u9700\u8981\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u8fdb\u884c\u8c03\u6574\u3002 \u9996\u5148\uff0c\u8981\u5148\u914d\u7f6eHome Assistant\u7684MQTT Broker\u8282\u70b9\uff0c\u786e\u4fdd\u5176\u8fde\u63a5\u4fe1\u606f\u6b63\u786e\u65e0\u8bef\u3002 \u5728\u6211\u4eec\u6ca1\u6709\u914d\u7f6emqtt in \u7684\u8fde\u63a5\u4fe1\u606f\u65f6\uff0c\u6211\u4eec\u53d1\u73b0\u8fd9\u4e2a\u8282\u70b9\u4e00\u76f4\u5904\u7406\u8fde\u63a5\u4e2d \u53cc\u51fb\u8be5\u8282\u70b9\uff0c\u8fdb\u5165\u914d\u7f6e\u754c\u9762 \u70b9\u51fb\u7f16\u8f91\u56fe\u6807 \u5728\u7f16\u8f91mqtt-broker\u8282\u70b9\u7684\u754c\u9762\u4e2d\u7684\u8fde\u63a5\u53c2\u6570\u9009\u9879\u5361\u4e2d\uff0c\u8f93\u5165\u6b63\u786e\u7684\u670d\u52a1\u7aef\u4e0e\u7aef\u53e3\u53f7 \u5982\u679cMQTT\u6709\u7528\u6237\u540d\u548c\u5bc6\u7801\uff0c\u8bf7\u5728\u8ba4\u8bc1\u9009\u9879\u5361\u4e2d\u8f93\u5165\u6b63\u786e\u7684\u7528\u6237\u540d\u548c\u5bc6\u7801\u540e\uff0c\u7136\u540e\u70b9\u66f4\u65b0 \u7136\u540e\uff0c\u518d\u70b9\u51fb\u5b8c\u6210 \u6700\u540e\u70b9\u51fb\u90e8\u7f72 \u90e8\u7f72\u5b8c\u6210\u540e\uff0c\u6211\u4eec\u53ef\u4ee5\u770b\u5230\uff0c\u6b64\u8282\u70b9\u4f1a\u53d8\u4e3a\u5df2\u8054\u63a5 \u5bf9\u4e8e\"\u53d1\u5e03\u5230\u516c\u53f8MQTT\"\u8282\u70b9\uff0c\u6211\u4eec\u9700\u8981\u914d\u7f6e\u8fde\u63a5\u5230\u516c\u53f8MQTT\u670d\u52a1\u5668\u7684Broker\u3002\u4e5f\u65f6\u540c\u6837\u7684\u64cd\u4f5c\u65b9\u6cd5\uff0c\u53cc\u51fb \u7136\u540e\uff0c\u66f4\u65b0\uff0c\u5b8c\u6210\uff0c\u90e8\u7f72\u5373\u53ef\u3002 \u67e5\u627eHomeAssistant\u7684Mqtt\u914d\u7f6e\u4fe1\u606f \u5bf9\u4e8eHomeAssistant\u6211\u4eec\u4e00\u822c\u90fd\u662f\u63d0\u524d\u90e8\u7f72\u4e86\u5185\u7f6e\u7684MQTT Broker,\u5728\u4e0d\u77e5\u7aef\u53e3\u4e0e\u5bc6\u7801\u7684\u60c5\u51b5\u4e0b\uff0c\u6211\u6837\u53ef\u4ee5\u5728HomeAssistant\u4e2d\u53bb\u67e5\u627e \u8fdb\u5165\u8bbe\u7f6e\u52a0\u8f7d\u9879 \u627e\u5230Mosquitto broker\u8fd9\u4e2a\u9009\u9879\u5361,\u70b9\u51fb\u8fdb\u5165 \u70b9\u51fb\u914d\u7f6e\u9009\u9879\u5361 \u5728\u8fd9\u91cc\u53ef\u4ee5\u770b\u5230MQTT\u7684\u7aef\u53e3\u53f7\u4e0e\u7528\u6237\u540d\u5bc6\u7801\u7b49\u4fe1\u606f\uff0c\u53ca\u4e0b\u9762\u7684mqtt\u5f00\u653e\u7684\u7aef\u53e3\u4fe1\u606f\uff0cip\u5730\u5740\uff0c\u5c31\u662fha\u4e3b\u673a\u6240\u5728\u7684Ip\u5730\u5740\u3002\u4ee5\u4e0a\u4fe1\u606f\uff0c\u7528\u6765\u914d\u7f6e\u5de5\u4f5c\u6d41\u7684mqtt in\u7684\u53c2\u6570\u3002 \u516c\u53f8mqtt\u670d\u52a1\u7aef\u53e3\u4fe1\u606f \u8fd9\u4e2a\u53c2\u6570\uff0c\u8bf7\u5411\u516c\u53f8\u7ba1\u7406\u5458\u83b7\u53d6\uff0c\u6216\u8005\u5728\u516c\u53f8MQTT\u670d\u52a1\u5668\u7684\u914d\u7f6e\u6587\u4ef6\u4e2d\u67e5\u770b\u3002","title":"3. \u914d\u7f6eMQTT\u8282\u70b9"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#4","text":"\u53cc\u51fb\u5de5\u4f5c\u6d41\u7684\u8282\u70b9\"\u8bbe\u7f6e\u5168\u5c40\u914d\u7f6e\",\u6253\u5f00\u7f16\u8f91function\u8282\u70b9 \u5bf9\u5982\u4e0b\u4e09\u884c,\u8fdb\u884c\u66f4\u6539 // \u8bbe\u7f6e\u5168\u5c40\u5171\u4eab\u5e38\u91cf global . set ( \"nameSpace\" , \"Environment\" ); //\u547d\u540d\u7a7a\u95f4\uff0c\u9ed8\u8ba4\u4e3a\uff1aEnvironment\uff0c\u5982\u679c\u6709\u9700\u8981\uff0c\u4ee5\u8054\u7cfb\u76f8\u5173\u5de5\u7a0b\u5e08\u786e\u8ba4\u540e\uff0c\u66f4\u6539. global . set ( \"clientCode\" , \"Data-It_XzOffice\" ); // \u5ba2\u6237\u7aef\u4ee3\u7801\uff0c\u9ed8\u8ba4\u4e3a\uff1aData-It_XzOffice\uff0c\u4e00\u5b9a\u8981\u6539\u4e3a\u4e2d\u5fc3\u5bf9\u5c31\u7684ClientCode\uff0c global . set ( \"deviceId\" , \"sensor.miaomiaoc_cn_blt_3_11a1sbr5k5o01_t2_temperature_p_2_1\" ); //\u4e00\u5b9a\u8981\u6539\u4e3a\u4e4b\u524d\u6211\u4eec\u5b9a\u7684\u4f20\u611f\u5668\u5b9e\u4f53ID \u5982\u679c\u4e0d\u786e\u5b9a\uff0c\u8bf7\u8054\u7cfb\u76f8\u5173\u5de5\u7a0b\u5e08\u786e\u8ba4\u3002 \u7136\u540e\uff0c\u70b9\u51fb\uff0c\u5b8c\u6210\uff0c\u90e8\u7f72 \u7136\u540e\uff0c\u4e0b\u4e00\u6b65\uff0c\u975e\u5e38\u91cd\u8981\uff0c\u4e00\u5b9a\u8981\u6267\u884c \u8fd9\u4e00\u6b65\uff0c\u975e\u5e38\u91cd\u8981\uff0c\u5fc5\u987b\u6267\u884c\uff0c\u5426\u5219\u5de5\u4f5c\u6d41\u6ca1\u6709\u628a\u5168\u5c40\u53d8\u91cf\u5199\u5165\u5de5\u4f5c\u6d41\uff0c\u4f1a\u5bfc\u81f4\u53d1\u5e03\u6570\u636e\u4e0d\u6b63\u786e\u3002 \u7136\u540e\uff0c\u6211\u6837\u5c31\u53ef\u4ee5\u7528\u5728debug\u7684\u65e5\u5fd7\u4e2d\u770b\u5230\u6211\u4eec\u53d1\u5e03\u7684\u8282\u70b9\u6570\u636e\u4e86\uff0c \u6b64\u56fe\uff0c\u53ef\u4ee5\u89c2\u5bdf\u5230mqtt\u53d1\u5e03\u5230\u516c\u53f8\u7684\u6570\u636e\uff0cclientCode\uff0cdeviceid\u662f\u5426\u6b63\u5e38\u4e86\u3002","title":"4.\u914d\u7f6e\u5de5\u4f5c\u6d41\u5168\u5c40\u53d8\u91cf"},{"location":"Usages/QA/%E9%80%8F%E6%9E%90%E4%B8%AD%E5%BF%83HA%E7%8E%AF%E5%A2%83%E6%B8%A9%E5%BA%A6%E5%8F%91%E9%80%81%E5%88%B0%E8%83%9C%E9%80%8F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/#5","text":"\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u7b2c\u4e09\u65b9\u5de5\u5177\u6765\u67e5\u770b\u516c\u53f8mqtt\u670d\u52a1\u6536\u5230\u7684\u6570\u636e\u662f\u5426\u6b63\u5e38\u5982\u4e0b\u56fe \u8fd9\u91cc\u6211\u63a8\u8350\u4f7f\u7528\u5de5\u5177 MQTTX \u4e0b\u8f7d\u5730\u5740\u4e3a\uff1ahttps://mqttx.app/downloads \u81f3\u6b64,\u900f\u6790\u4e2d\u5fc3HA\u73af\u5883\u6e29\u5ea6\u6570\u636e\u53d1\u9001\u5230\u80dc\u900f\u7684\u5de5\u4f5c\u6d41\u914d\u7f6e\u5b8c\u6210\u3002","title":"5. \u6d4b\u8bd5\u5de5\u4f5c\u6d41\u7684\u6570\u636e\u662f\u5426\u6b63\u5e38"},{"location":"Usages/backupAndRestore/BackupToFile/","text":"\u5907\u4efd\u5230\u6587\u4ef6 \u00b6","title":"BackupToFile"},{"location":"Usages/backupAndRestore/BackupToFile/#_1","text":"","title":"\u5907\u4efd\u5230\u6587\u4ef6"},{"location":"Usages/backupAndRestore/RestoreFromFile/","text":"\u4ece\u5907\u4efd\u6587\u4ef6\u6587\u4ef6\u4e2d\u6062\u590d \u00b6 HomeAssistant\u652f\u6301\u4ece\u5907\u4efd\u6587\u4ef6\u4e32\u6062\u590d\u5df2\u914d\u7f6e\u597d\u7684HomeAssistant","title":"RestoreFromFile"},{"location":"Usages/backupAndRestore/RestoreFromFile/#_1","text":"HomeAssistant\u652f\u6301\u4ece\u5907\u4efd\u6587\u4ef6\u4e32\u6062\u590d\u5df2\u914d\u7f6e\u597d\u7684HomeAssistant","title":"\u4ece\u5907\u4efd\u6587\u4ef6\u6587\u4ef6\u4e2d\u6062\u590d"},{"location":"Usages/initConfig/initConfig/","text":"\u521d\u59cb\u5316\u914d\u7f6eHomeAssistant \u00b6 \u9996\u6b21\u6253\u5f00HomeAssistant \u00b6 \u9996\u6b21\u6253\u5f00HomeAssistant\u901a\u8fc7,\u8def\u7531\u5668\u4e3a\u5176\u5206\u914d\u7684IP\u5730\u5740\u52a0\u7aef\u53e3\u53f7\u5373\u53ef\u8fdb\u884cHomeAssistant. \u683c\u5f0f\u5982\u4e0b: http://Ip:Port \u5982:http://192.168.3.2:8123 \u57fa\u4e2d:8123\u4e3a\u5176\u9ed8\u8ba4\u7684\u7aef\u53e3\u540e,\u5f53\u7136,\u7cfb\u7edf\u521d\u59cb\u5316\u6210\u529f\u540e,\u53ef\u4ee5\u6539. \u5982\u4e0b\u56fe\u6240\u793a: \u70b9\u51fb\"\u521b\u5efa\u6211\u667a\u80fd\u5bb6\u5bb6\u5c45\"\u6309\u8fdb\u884c\u4e0b\u4e00\u6b65 \u5728\u8fd9\u91cc\u6211\u4eec\u8f93\u5165\u59d3\u540d,\u7528\u6237\u540d,\u5bc6\u7801,\u786e\u8ba4\u5bc6\u7801 \u8fd9\u91cc\u6211\u4eec\u4f7f\u7528\u7edf\u4e00\u7684\u4fe1\u606f \u59d3\u540d:\u5cb1\u7279\u667a\u80fd \u7528\u6237\u540d:dtuser \u5bc6\u7801:****** \u786e\u8ba4\u5bc6\u7801:***** \u6ce8\u610f:\u4e0a\u8ff0\u5bc6\u7801\u4e3a\u4e86\u5b89\u5168,\u6ca1\u6709\u663e\u793a,\u8bf7\u54a8\u8be2\u7cfb\u7edf\u7ba1\u7406\u5458\u83b7\u53d6\u771f\u6b63\u7684\u5bc6\u7801. \u70b9\u51fb\"\u521b\u5efa\u5e10\u6237\", \u8fd9\u4e00\u6b65,\u4f1a\u8981\u6c42\u4f60\u8f93\u5165\u4f4d\u7f6e,\u8f93\u5165\u57ce\u5e02\u70b9\u83b7\u53d6,\u5982\u679c\u53d6\u4e0b\u5230\u4f1a\u62a5\u9519.\u6ca1\u5173\u7cfb,\u76f4\u63a5\u4e0b\u4e00\u6b65\u5373\u53ef,\u7cfb\u7edf\u914d\u7f6e\u5b8c\u6210\u540e,\u8fd8\u53ef\u66f4\u6539. \u8fd9\u4e00\u6b65\u662f\u8981\u6c42,\u4f60\u8f93\u4e0b\u6240\u5c5e\u7684\u56fd\u5bb6\u4e0e\u5730\u533a,\u5b83\u4f1a\u81ea\u52a8\u5224\u65ad\u51fa\u6765,\u56fd\u5bb6,\u76f4\u63a5\u70b9\u4e0b\u4e00\u6b65\u5373\u53ef. \u6b64\u65f6,\u5b83\u53ef\u80fd\u8fd8\u4f1a\u5f39\u51fa\u4e00\u4e2a\u5bf9\u8bdd\u6846\u6846,\u5e2e\u4f60\u68c0\u6d4b\u4f4d\u7f6e ,\u70b9\u786e\u5b9a\u5373\u53ef \u5982\u679c\u4e0d\u60f3\u8ba9\u5176\u68c0\u6d4b,\u76f4\u63a5\u70b9\u53d6\u6d88\u5373\u53ef,\u56e0\u4e3a\u5176\u68c0\u6d4b\u6298\u53ef\u80fd\u5f88\u6162,\u6240\u4ee5,\u76f4\u63a5\u70b9\u53d6\u6d88,\u9009\u62e9\u4e2d\u56fd\u5373\u53ef. \u8fd9\u91cc\u7684\u51e0\u9879,\u5168\u90e8\u4e0d\u7528\u9009,\u76f4\u63a5\u4e0b\u4e00\u6b65 \u8fd9\u4e00\u6b65,\u7cfb\u7edf\u4f1a\u81ea\u52a8\u626b\u63cf\u5c40\u57df\u7f51\u4e2d\u7684\u80fd\u76f4\u63a5\u5165\u7684\u8bbe\u5907.\u76f4\u63a5\u70b9\u51fb\u5b8c\u6210, \u7136\u540e,\u7cfb\u7edf\u4f1a\u8f6c\u5230\u5982\u4e0b\u754c\u9762 \u53ef\u80fd\u8981\u6301\u7eed\u4e00\u9635,\u7b49\u5f85\u5176\u5b8c\u6210\u5373\u53ef. \u5f00\u59cb\u7b2c\u4e00\u6b21,\u53ef\u80fd\u5f88\u6162 \u9996\u6b21\u5b8c\u6210\u5982\u4e0b\u663e\u793a \u66f4\u65b0\u5fc5\u8981\u7684\u7ec4\u4ef6 \u00b6 \u9996\u6b21\u767b\u5f55,\u53ef\u80fd\u4f1a\u663e\u793a\u66f4\u65b0,\u5982\u6b64\u65f6\u663e\u793a \u63d0\u793a\u66f4\u65b0Home Assistnat Operating System Update,\u70b9\u51fb\u5982\u4e0b\u6309\u94ae,\u4ee5\u5f39\u51fa\u7684\u5bf9\u8bdd\u6846\u4e2d\uff0c\u70b9\u66f4\u65b0\u6309\u94ae \u5982\u4e0b\u56fe\u6240\u793a\uff0c\u7cfb\u7edf\u5c06\u4f1a\uff0c\u8fdb\u884c\u66f4\u65b0 \u6ce8\u610f\uff0c\u8fd9\u4e2a\u64cd\u4f5c\uff0c\u4e00\u822c\u662f\u4ece\u4e24\u4e2a\u5730\u65b9\u83b7\u53d6\u66f4\u65b0\u5305\uff0c\u4e00\u662fgithub\u4e00\u4e2a\u662fdocker\u7684\u4ed3\u5e93\uff0c\u6240\u4ee5\uff0c \u8981\u4fdd\u6301\u79d1\u5b66\u4e0a\u7f51\u7684\u7545\u901a \u3002\u8fd9\u4e2a\u8fc7\u7a0b \uff0c\u4f30\u8ba1\u8981\u51e0\u5206\u949f\uff0c\u9700\u8981\u8010\u5fc3\u7b49\u7b49\uff0c\u4e5f\u6709\u53ef\u80fd\u4f1a\u66f4\u65b0\u5931\u8d25\uff0c\u7136\u540e\uff0c\u518d\u6b21\u66f4\u65b0\u3002 \u66f4\u65b0\u65f6,\u5982\u679c\u7f51\u7edc\u6709\u95ee\u9898\u53ef\u80fd\u4f1a\u51fa\u5728\u65e5\u5fd7 \u4e2d\u62a5\u51fa\u5982\u4e0b\u9519\u8bef aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.439 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.440 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.440 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.440 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') [09:26:17] INFO: Home Assistant Core finish process exit code 0 [09:26:17] INFO: Home Assistant Core service shutdown s6-rc: info: service legacy-services successfully stopped s6-rc: info: service legacy-cont-init: stopping s6-rc: info: service legacy-cont-init successfully stopped s6-rc: info: service fix-attrs: stopping s6-rc: info: service fix-attrs successfully stopped s6-rc: info: service s6rc-oneshot-runner: stopping s6-rc: info: service s6rc-oneshot-runner successfully stopped s6-rc: info: service s6rc-oneshot-runner: starting s6-rc: info: service s6rc-oneshot-runner successfully started s6-rc: info: service fix-attrs: starting s6-rc: info: service fix-attrs successfully started s6-rc: info: service legacy-cont-init: starting s6-rc: info: service legacy-cont-init successfully started s6-rc: info: service legacy-services: starting services-up: info: copying legacy longrun home-assistant (no readiness notification) s6-rc: info: service legacy-services successfully started 2025-04-16 17:28:26.876 ERROR (MainThread) [homeassistant.components.homeassistant_alerts.coordinator] Timeout fetching homeassistant_alerts data 2025-04-16 17:51:56.276 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain hassio.update 2025-04-16 17:51:56.278 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain cloud.tts 2025-04-16 17:51:56.278 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain mobile_app.notify 2025-04-16 17:51:56.278 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain backup.sensor 2025-04-16 17:51:56.279 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain energy.sensor 2025-04-16 17:51:56.279 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain sun.sensor 2025-04-16 17:51:56.279 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain homeassistant.scene 2025-04-16 17:51:56.279 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain hassio.binary_sensor 2025-04-16 17:51:56.280 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain hassio.sensor \u4e0a\u8ff0\u9519\u8bef\u591a\u662f\u7531\u4e8e\u7f51\u7edc\u95ee\u9898\u5f15\u8d77\u7684,\u8981\u53bb\u68c0\u662f\u79d1\u5b66\u4e0a\u7f51\u662f\u5426\u8fd8\u6b63\u5e38. \u66f4\u5b8c\u5b8c\u6210\u540e,\u518d\u6b21\u542f\u52a8\u540e,\u4f1a\u663e\u793a\u6ca1\u6709\u53ef\u7528\u7684\u66f4\u65b0 \u914d\u7f6e-\u901a\u7528 \u00b6 \u70b9\u51fb,\u5f00\u59cb,\u901a\u7528 \u66f4\u6539\u540d\u79f0\u4e3a:\u5cb1\u7279\u667a\u80fd \u5176\u5b83\u7684\u4e0d\u53d8 #### \u914d\u7f6e-\u7f51\u7edc-\u4e3b\u673a\u540d \u628a\u4e3b\u673a\u540d\u914d\u7f6e\u6210\u4e3a\u5c40\u57df\u7f51\u4e2d\u552f\u4e00\u7684,\u5b9e\u9645\u8ba9\u5c31\u662f\u8ba1\u7b97\u673a\u540d,\u56e0\u4e3a\u540c\u4e00\u5c40\u57df\u7f51\u4e2d,\u8ba1\u7b97\u673a\u540d,\u4e0d\u5141\u8bb8\u76f8\u540c \u914d\u7f6e-\u8bbe\u7f6e-\u52a0\u8f7d\u9879 \u00b6 \u52a0\u8f7d\u9879\u4e2d\u6709\u8bb8\u591a\u5fc5\u88c5\u7ec4\u4ef6,\u9700\u8981\u4e00\u4e00\u5b89\u88c5,\u9996\u6b21\u8fdb\u5165\u65f6,\u53ef\u80fd\u4f1a\u663e\u793a\u5982\u4e0b\u9875\u9762 \u70b9\u51fb\u4e0b\u89d2\u7684\"\u52a0\u8f7d\u9879\u5546\u5e97\" \u5b89\u88c5File editor \u00b6 File editor \u662f\u4e00\u4e2a\u7528\u4e8e\u4fee\u6539HA\u7684\u914d\u7f6e\u6587\u4ef6\u7684\u96c6\u6210\u5de5\u5177,\u5c5e\u5fc5\u88c5\u9879,\u70b9\u51fb\u5b89\u88c5 \u70b9\u51fb\u5b89\u88c5,\u7cfb\u7edf\u4f1a\u5728\u540e\u53f0\u81ea\u52a8\u5b89\u88c5\u6b64\u63d2\u4ef6, \u5b89\u88c5\u5b8c\u6210\u540e,\u4f1a\u81ea\u52a8\u91cd\u542f \u6709\u65f6\u4e5f\u4f1a\u63d0\u793a\u5b89\u88c5\u5931\u8d25 \u8fd9\u79cd\u7ecf\u67e5\u770b\u65e5\u5fd7 \u591a\u4e3a\u7f51\u5f3a\u884c\u95ee\u9898\u65e0\u6cd5\u8bbf\u95ee.docker.io,\u8fd9\u662f\u56e0\u4e3a\u79d1\u5b66\u4e0a\u98ce\u7684\u539f\u56e0,\u91cd\u70b9\u6392\u67e5\u7f51\u7edc,\u5b89\u88c5\u6210\u529f\u540e,\u518d\u6b21\u8fdb\u5165\u4f1a\u663e\u793a\u5982\u4e0b\u754c\u9762 \u52fe\u9009,\u5f00\u673a\u542f\u52a8,\u81ea\u52a8\u6062\u590d,\u663e\u793a\u4e8e\u4fa7\u8fb9\u680f \u70b9\u51fb\u542f\u52a8,\u6216\u91cd\u542f,\u5c06\u4f1a\u5728\u4fa7\u8fb9\u680f\u770b\u5230\u6b64\u56fe\u6807,\u70b9\u51fb\u6253\u5f00\u7f51\u9875\u754c\u9762 \u80fd\u770b\u5230\u5982\u4e0b\u754c\u9762,\u8bf4\u660e\u5b89\u88c5\u6210\u529f \u6b64\u65f6\u52a0\u8f7d\u9879\u4e2d,\u5c31\u591a\u51fa\u4e86File editor\u9009\u9879 \u5b89\u88c5Samba share\u63d2\u4ef6 \u00b6 Samba share\u63d2\u4ef6\u662f\u4e00\u4e2a\u63d0\u4f9b\u5171\u4eab\u76ee\u5f55\u7684\u65b9\u5f0f\u5141\u884c\u5176\u5b83\u8ba1\u7b97\u673a\u7528\u8fd9\u79cd\u65b9\u5f0f\u67e5\u770b\u7f16\u8f91ha\u7684\u6587\u4ef6\u7684\u7ec4\u4ef6. \u70b9\u51fb\u5b89\u88c5 \u5b89\u88c5\u5931\u8d25\u65f6,\u4f1a\u6709\u5982\u4e0b\u63d0\u4e0b\u63d0\u793a \u6253\u5f00\u81ea\u52a8\u6062\u590d \u63a5\u4e0b\u6765\u6211\u4eec\u9700\u8981\u5230\u914d\u7f6e\u9009\u9879\u4e2d \u6b64\u5904\u6211\u4eec\u8bbe\u7f6e\u5982\u4e0b\u4fe1\u606f Username:dtuser Password:***** # \u6b64\u5904\u8bf7\u54a8\u8be2\u7ba1\u7406\u5458 Workgroup:WORKGROUP # \u4fdd\u6301\u4e0d\u53d8 \u66f4\u6539\u5b8c\u6210\u540e,\u6709\u5982\u4e0b\u914d\u7f6e \u914d\u7f6e \u5b8c\u6210\u540e,\u70b9\u51fb\u542f\u52a8 \u542f\u52a8\u6210\u529f\u540e,\u4f1a\u51fa\u4e0b\u56fe\u663e\u793a \u6b64\u65f6,\u5982\u679c,\u4e0eHA\u5728\u540c\u4e00\u5c40\u57df\u7f51\uff0c\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u65b9\u5f0f\u67e5\u770bHA\u7684\u6587\u4ef6\u76ee\u5f55 \u5728\u5730\u5740\u680f\u8f93\u5165\\HA\u7684IP \u8f93\u5165\u9884\u8bbe\u7684\u7528\u6237\u540d\u4e0e\u5bc6\u7801,\u5373\u53ef\u67e5\u770b,\u7f16\u8f91HA\u7684\u5404\u79cd\u6587\u4ef6\u3002 \u5b89\u88c5Terminal & SSH \u00b6 Terminal & SSH \u63d2\u4ef6\u4e3aHA\u63d0\u4f9b\u4e86\u5728web\u7aef\u4f7f\u7528\u63a7\u5236\u53f0\u7ec8\u7aef\u529f\u80fd,\u53ca\u5f00\u542f\u4e86ssh\u670d\u52a1,\u4f7f\u4e4b\u53ef\u4ee5\u8fdc\u7a0b\u4f7f\u7528SSH\u8bbf\u95eeHA\u7ec8\u7aef\u3002 \u5728\u641c\u7d22\u4e2d\u8f93\u5165Terminal & SSH \u7ed3\u679c\u6709\u53ef\u80fd\u663e\u793a \u641c\u7d22\u4e0d\u5230\uff0c\u8fd9\u65f6\uff0c\u53ef\u80fd\u662f\u56e0\u4e3a\u4ed3\u5e93\u6ca1\u6709\u914d\u7f6e\uff0c\u8fd8\u662f\u4f7f\u7528\u7684\u9ed8\u8ba4\u7684\u4ed3\u5e93\uff0c\u6211\u4eec\u53ef\u4ee5\u589e\u52a0\u4e00\u4e0b\u4ed3\u5e93\uff0c\u5982\u4e0b\uff1a https://github.com/AlexxIT/hassio-addons \u70b9\u51fb\u53f3\u4e0a\u89e3\u7684\u4e09\u4e2a\u70b9,\u9009\u4e2d\u4ed3\u5e93 \u5728\u5f39\u51fa\u6298\u5bf9\u8bdd\u6846\u4e2d\u8f93\u5165,\u6211\u4eec\u8bb0\u5f55\u7684\u4ed3\u5e93\u5730\u5740,\u7136\u540e\u70b9\u6dfb\u52a0 \u5b8c\u6210\u540e,\u70b9\u51fb\u5173\u95ed. \u7136\u540e,\u70b9\u51fb\u8fd4\u56de,\u91cd\u65b0\u641c\u7d22 \u8fd9\u6b21\u627e\u5230\u4e86Advance SSH & Web Terminal \u70b9\u51fb\u5b89\u88c5,\u6253\u5f00\u5982\u4e0b\u9875\u9762 \u70b9\u51fb\u5b89\u88c5,\u6709\u65f6\u4f1a\u5b89\u88c5\u5931\u8d25, \u5931\u8d25\u540e,\u9700\u518d\u6b21\u5b89\u88c5,\u540c\u65f6\u68c0\u67e5\u65e5\u5fd7\u4e2d\u63d0\u5230\u7684\u54ea\u4e2a\u7f51\u5740\u65e0\u6cd5\u8bbf\u95ee ,\u628a\u5176\u52a0\u79d1\u5b66\u4e0a\u7f51\u7684\u4ee3\u7406\u540d\u5355\u4e2d. \u5b89\u88c5\u5b8c\u6210\u540e,\u5c31\u53d8\u6210\u5982\u4e0b \u5f00\u542f\u81ea\u52a8\u6062\u5f97,\u663e\u793a\u4fa7\u8fb9\u680f \u63a5\u4e0b\u6765,\u6211\u4eec\u914d\u7f6essh\u7684\u767b\u5f55\u4fe1\u606f,\u5982\u4e0b \u76f8\u5173\u4fe1\u606f\u5982\u4e0b: username:dtuser passsword:**** # \u6b64\u5904\u9700\u8981\u54a8\u8be2\u7ba1\u7406\u5458 \u5176\u5b83\u914d\u7f6e\u9009\u9879\u5982\u4e0b,\u6ce8\u610f\u9009\u9879,\u9009\u9519\u4e86ssh\u53ef\u80fd\u542f\u4e0d\u8d77\u6765,sftp\u5173\u95ed,zsh\u5173\u95ed.compatibility_mode\u8981\u5f00\u542f \u7136\u540e,\u70b9\u51fb\u542f\u52a8\u6309\u94ae \u542f\u52a8\u540e\u5982\u4e0b \u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u4e24\u4e2a\u5730\u65b9\u8fdb\u5165 \u5728\u65e5\u5fd7 \u7aef\u80fd\u770b\u5230 ssh\u5df2\u542f\u52a8\u6210\u529f s6-rc: info: service base-addon-banner successfully started s6-rc: info: service fix-attrs: starting s6-rc: info: service base-addon-log-level: starting s6-rc: info: service fix-attrs successfully started s6-rc: info: service base-addon-log-level successfully started s6-rc: info: service legacy-cont-init: starting s6-rc: info: service legacy-cont-init successfully started s6-rc: info: service init-ssh: starting s6-rc: info: service init-mysql: starting s6-rc: info: service init-mosquitto: starting s6-rc: info: service init-docker: starting s6-rc: info: service init-docker successfully started s6-rc: info: service init-mysql successfully started s6-rc: info: service init-mosquitto successfully started [14:51:05] WARNING: [14:51:05] WARNING: Logging in with a SSH password is security wise, a bad idea! [14:51:05] WARNING: Please, consider using a public/private key pair. [14:51:05] WARNING: What is this? https://kb.iu.edu/d/aews [14:51:05] WARNING: [14:51:05] NOTICE: RSA host key missing, generating one... Generating public/private rsa key pair. Your identification has been saved in /data/ssh_host_rsa_key Your public key has been saved in /data/ssh_host_rsa_key.pub The key fingerprint is: SHA256:+9pEl2QvyUqsu4B3gnPjhL/Ab71iBIDjWRdYvgZeg0c root@a0d7b954-ssh The key's randomart image is: +---[RSA 3072]----+ | . oE. | |o .o+. | |..o+.= o | | o. = o . + + | | . + S + * . | | ..+. = o . | | B.B.+ o | | X+=.= | | o=o=+o | +----[SHA256]-----+ [14:51:08] NOTICE: ED25519 host key missing, generating one... Generating public/private ed25519 key pair. Your identification has been saved in /data/ssh_host_ed25519_key Your public key has been saved in /data/ssh_host_ed25519_key.pub The key fingerprint is: SHA256:MgbUsAJ+23skjVTwD0pWVRBCmZ0BjU3jwV/99gGnNVc root@a0d7b954-ssh The key's randomart image is: +--[ED25519 256]--+ |. o+o*%O*. . E| |.. . .=+o*o o =.| | ...o+ o .. . = +| | ..*.+ o . . .o| | . =+oS. .o| | .+o .| | . . | | . | | | +----[SHA256]-----+ s6-rc: info: service init-ssh successfully started s6-rc: info: service init-user: starting [14:51:08] NOTICE: Session sharing has been disabled! s6-rc: info: service init-user successfully started s6-rc: info: service ttyd: starting s6-rc: info: service sshd: starting s6-rc: info: service sshd successfully started s6-rc: info: service ttyd successfully started s6-rc: info: service legacy-services: starting [14:51:09] INFO: Starting the ttyd daemon... [14:51:09] INFO: Starting the SSH daemon... s6-rc: info: service legacy-services successfully started Server listening on 0.0.0.0 port 22. Server listening on :: port 22. \u914d\u7f6e\u6210\u529f\u540e,\u53ef\u4ee5\u901a\u8fc7\u5982\u4e0b\u547d\u4ee4\u6765\u6d4b\u8bd5\u662f\u5426\u53ef\u4ee5\u8fdc\u7a0bSSH\u8fde\u5165 \u8f93\u5165yes\u540e\u4f1a\u8981\u6c42 \u8f93\u5165\u5bc6\u7801,\u9a8c\u8bc1\u6b63\u786e\u540e,\u4f1a\u8fdb\u5165\u770b\u5230\u5982\u4e2a\u56fe,\u5c31\u8bf4\u660essh\u5df2\u6b63\u5e38\u7684\u5f00\u542f\u6210\u529f\u4e86 \u4ee5\u4e0b\u754c\u9762\u662f\u5728ha\u4e2d\u770b\u5230\u7684\u5185\u7f6e\u7684ssh \u5176\u5b83,\u5f53\u8bbf\u95ee\u4e00\u4e9b\u7cfb\u7edf\u64cd\u4f5c\u65e0\u6743\u9650\u65f6,\u53ef\u4ee5\u5173\u95ed\u4fdd\u62a4\u5f00\u5173 \u5b89\u88c5Mosquitto broker \u00b6 Mosquitto broker\u662f\u4e00\u4e2a\u91cd\u8981\u7684\u63d2\u4ef6,\u5176\u63d0\u4f9b\u7684MQTT \u670d\u52a1\u4e3a\u516c\u53f8\u5927\u591a\u6570\u6570\u8bbe\u5907\u6298\u96c6\u6210\uff0cmqtt\u901a\u4fe1\u901a\u9053\uff0c\u6240\u4ee5\uff0c\u6b64\u4e3a\u5fc5\u88c5\u63d2\u4ef6\u3002 \u70b9\u51fb\u5b89\u88c5 \u770b\u5230\u5982\u4e0b\u754c\u9762\uff0c\u8bf4\u660e\u5b89\u88c5\u6210\u529f\uff0c \u63a5\u4e0b\u6765\u662f\u914d\u7f6emqtt \u5f00\u542f\u81ea\u52a8\u6062\u590d \u00b6 \u914d\u7f6emqtt\u7684\u7528\u6237\u540d\u5bc6\u7801\u53ca\u5b9a\u5236\u914d\u7f6e \u00b6 username:dtuser password:****** #\u6b64\u5904\u7684\u5bc6\u7801\u8bf7\u54a8\u8be2\u7ba1\u7406\u5458 \u914d\u7f6e\u5b8c\u6210\u540e,\u542f\u52a8mqtt\u670d\u52a1 \u65e5\u5fd7\u4e2d\u663e\u793a\u5982\u4e0b\u4fe1\u606f,\u8bf4\u660e\u6210\u529f s6-rc: info: service s6rc-oneshot-runner: starting s6-rc: info: service s6rc-oneshot-runner successfully started s6-rc: info: service fix-attrs: starting s6-rc: info: service fix-attrs successfully started s6-rc: info: service legacy-cont-init: starting cont-init: info: running /etc/cont-init.d/mosquitto.sh [16:33:27] INFO: Setting up user dtuser [16:33:28] INFO: SSL is not enabled cont-init: info: /etc/cont-init.d/mosquitto.sh exited 0 cont-init: info: running /etc/cont-init.d/nginx.sh cont-init: info: /etc/cont-init.d/nginx.sh exited 0 s6-rc: info: service legacy-cont-init successfully started s6-rc: info: service legacy-services: starting services-up: info: copying legacy longrun mosquitto (no readiness notification) services-up: info: copying legacy longrun nginx (no readiness notification) [16:33:29] INFO: Starting NGINX for authentication handling... s6-rc: info: service legacy-services successfully started [16:33:29] INFO: Starting mosquitto MQTT broker... 2025-04-17 16:33:29: Warning: Mosquitto should not be run as root/administrator. 2025-04-17 16:33:29: mosquitto version 2.0.20 starting 2025-04-17 16:33:29: Config loaded from /etc/mosquitto/mosquitto.conf. 2025-04-17 16:33:29: Loading plugin: /usr/share/mosquitto/go-auth.so 2025-04-17 16:33:29: \u251c\u2500\u2500 Username/password checking enabled. 2025-04-17 16:33:29: \u251c\u2500\u2500 TLS-PSK checking enabled. 2025-04-17 16:33:29: \u2514\u2500\u2500 Extended authentication not enabled. 2025-04-17 16:33:29: Opening ipv4 listen socket on port 1883. 2025-04-17 16:33:29: Opening ipv6 listen socket on port 1883. 2025-04-17 16:33:29: Opening websockets listen socket on port 1884. 2025-04-17 16:33:29: mosquitto version 2.0.20 running 2025-04-17 16:33:29: New connection from ::1:56336 on port 1883. 2025-04-17 16:33:29: Client disconnected due to protocol error. [16:33:30] INFO: Successfully send discovery information to Home Assistant. [16:33:31] INFO: Successfully send service information to the Supervisor. \u5f53\u6d88\u606f,\u63d0\u793a\u53d1\u73b0\u8bbe\u5907\u65f6,\u70b9\u51fb,\u5f39\u51fa\u7684\u6d88\u606f\u4e2d,\u70b9check it out,\u7136\u540e,\u770b\u5230\u5df2\u53d1\u73b0mqtt,\u70b9\u51fb\u6dfb\u52a0 \u7136\u540e,\u70b9\u51fb\u5b8c\u6210 \u7136\u540e\u5c31\u4f1a\u5728\u8bbe\u7f6e-\u8bbe\u5907\u4e0e\u670d\u52a1-\u96c6\u6210\u4e2d,\u663e\u793aMqtt,\u4ee5\u540e,\u6240\u6709\u589e\u52a0\u7684MQTT\u7c7b\u8bbe\u5907\uff0c\u90fd\u4f1a\u663e\u793a\u5728\u8fd9\u4e2a\u7c7b\u522b\u4e2d\u3002 \u5b89\u88c5Node-RED\u63d2\u4ef6 \u00b6 Node-Red\u63d2\u4ef6\u662f\u6211\u4eec\u96c6\u4e2d\u5404\u79cd\u8bbe\u5907\u7684\u91cd\u8981\u6d88\u606f\u5904\u7406\u8f6c\u6362\u63d2\u4ef6,\u5c5e\u5fc5\u88c5\u63d2\u4ef6. \u5728\u52a0\u8f7d\u9879\u4e2d,\u641c\u7d22nod\u663e\u793a\u5982\u4e0b \u70b9\u51fb,\u8fdb\u5165\u8be6\u7ec6\u9875\u9762 \u70b9\u51fb\u5b89\u88c5 \u5982\u679c\u5b89\u88c5\u51fa\u9519,\u591a\u534a\u662f\u79d1\u5b66\u4e0a\u7f51\u7684\u95ee\u9898, \u5982\u73b0\u5982\u4e0b\u9875\u9762,\u8bf4\u660e\u5b89\u88c5\u6210\u529f \u5f00\u542f\u81ea\u52a8\u6062\u590d,\u5173\u95ed\u4fa7\u8fb9\u680f \u914d\u7f6enod-red \u6b64\u5904\u7684\u914d\u7f6e\u4fe1\u606f\u4e3a username:admin password:**** #\u6b64\u5904\u7684\u5bc6\u7801,\u8bf7\u5411\u7ba1\u7406\u5458\u83b7\u53d6 ### \u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5173\u95edssl \u7136\u540e\u542f\u52a8node-red \u70b9\u51fb\u6253\u5f00web-\u9875\u9762\u5982\u4e0b \u5b89\u88c5go2rtc\u63d2\u4ef6 \u00b6 go2rtc\u63d2\u4ef6\u662f\u4e3a\u4e86\u5bf9\u89c6\u6d41\u8f6c\u53d1\u7528\u7684\u4e13\u7528\u63d2\u4ef6,\u5982\u679c\u60f3\u628a\u76d1\u63a7\u89c6\u9891\u6d41\u63a5\u5165,\u5219\u53ef\u4ee5\u4f7f\u7528\u8fd9\u4e2a\u63d2\u4ef6,\u5b89\u88c5\u65b9\u6cd5\u662f,\u52a0\u8f7d\u9879\u4e2d,\u641c\u7d22go2rtc, \u70b9\u51fb\u5b89\u88c5 \u5b89\u88c5\u5b8c\u6210\u540e\u5f00\u542f\u81ea\u52a8\u6062\u590d,\u81ea\u52a8\u66f4\u65b0 \u5176\u8bbe\u7f6e\u4e2d\u57fa\u672c\u6ca1\u4ec0\u4e48\u8981\u6539\u7684. \u5b89\u88c5VLC\u53ef\u4ee5\u64ad\u653e\u89c6\u9891\u7b49\u529f\u80fd,\u9700\u8981\u7684\u8bdd\u53ef\u4ee5\u5b89\u88c5 \u00b6 \u5728\u52a0\u8f7d\u5546\u5e97\u4e2d\u641c\u7d22vlc \u70b9\u51fb\u5b89\u88c5 \u5b89\u88c5\u6210\u529f\u5982\u4e0b\u6240\u793a \u914d\u7f6e\u4e2d\u57fa\u672c\u6ca1\u8981\u8981\u914d\u7f6e\u7684\u4e1c\u897f \u5229\u7528 Docker \u5b89\u88c5 PostgreSQL \u00b6 \u867d\u7136 Home Assistant OS \u672c\u8eab\u4e0d\u5141\u8bb8\u76f4\u63a5\u8bbf\u95ee\u7cfb\u7edf\u5e95\u5c42\uff0c\u4f46\u5b83\u5185\u7f6e\u4e86 Docker \u652f\u6301\uff0c\u56e0\u6b64\u53ef\u4ee5\u76f4\u63a5\u8fd0\u884c PostgreSQL \u7684 Docker \u5bb9\u5668\u3002 \u6b65\u9aa4 \u00b6 \u786e\u4fdd\u60a8\u6709 SSH \u8bbf\u95ee\u6743\u9650 \u5b89\u88c5 Home Assistant \u7684 SSH & Web Terminal Add-on\uff08\u9ad8\u7ea7\u6a21\u5f0f\uff09\u3002 \u5f00\u542f SSH \u8bbf\u95ee\uff0c\u5177\u4f53\u6b65\u9aa4\u5982\u4e0b\uff1a \u524d\u5f80 Supervisor > Add-on Store \u3002 \u641c\u7d22\u5e76\u5b89\u88c5 SSH & Web Terminal \uff08\u5b98\u65b9\u63d2\u4ef6\uff09\u3002 \u914d\u7f6e SSH \u63d2\u4ef6\uff0c\u786e\u4fdd protected \u8bbe\u7f6e\u4e3a false \uff0c\u7136\u540e\u542f\u52a8\u5b83\u3002 \u8fd0\u884c PostgreSQL \u5bb9\u5668 \u5728 SSH \u6216 Web Terminal \u4e2d\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\uff1a docker run -d \\ --name=postgresql \\ -e POSTGRES_USER=dtuser \\ -e POSTGRES_PASSWORD= **pwd** \\ -e POSTGRES_DB=dtha \\ -v /db/pgsqldata:/var/lib/postgresql/data \\ -p 5432:5432 \\ postgres \u66ff\u6362 **pwd** \u4e3a\u60a8\u60f3\u8981\u8bbe\u7f6e\u7684\u6570\u636e\u5e93\u5bc6\u7801,\u4e9b\u5bc6\u7801,\u9700\u8981\u7ba1\u7406\u5458\u54a8\u8be2 \u6570\u636e\u5e93\u540d\u79f0\u4e3a dtha \uff0c\u7528\u6237\u540d\u4e3a dtuser \u3002 \u6570\u636e\u5c06\u5b58\u50a8\u5728 /mnt/data/supervisor/postgresql \uff0c\u786e\u4fdd\u6570\u636e\u5728\u91cd\u542f\u540e\u4e0d\u4f1a\u4e22\u5931\u3002 \u767b\u5f55ssh,\u5e76\u67e5\u770b\u5df2\u5b89\u88c5\u7684docker\u955c\u50cf\u5982\u4e0b \u5148\u521b\u5efapgsql\u5b58\u50a8\u5377\u9700\u8981\u7684\u76ee\u5f55,\u8fd9\u4e2a\u6211\u4eec\u7edf\u4e00\u5b9a\u4e3a\u5982\u4e0b\u76ee\u5f55,\u5e76\u7ed9777\u6743\u9650 /db/pgsqldata \u5373\u5728\u6839\u76ee\u5f55\u4e0b,\u521b\u5efadb\u76ee\u5f55,\u7136\u540e\u5728db\u76ee\u5f55\u4e2d\u521b\u5efapgsqldata,\u5e76\u7ed9\u8db3\u6743\u9650 / # cd homeassistant homeassistant # ls automations.yaml configuration.yaml home-assistant.log home-assistant.log.fault home-assistant_v2.db-shm scenes.yaml secrets.yaml blueprints deps home-assistant.log.1 home-assistant_v2.db home-assistant_v2.db-wal scripts.yaml tts homeassistant # mkdir db homeassistant # sudo chmod -R 7777 ./db homeassistant # cd db db # ls db # pwd /homeassistant/db db # sudo mkdir pgsqldata db # sudo chmod -R 7777 ./pgsqldata db # ls pgsqldata db # cd pgsqldata pgsqldata # ls -l ./ total 0 pgsqldata # cd .. db # ls -l ./ total 4 drwsrwsrwt 2 root root 4096 Apr 18 16:30 pgsqldata \u63a5\u4e0b\u6765,\u62c9\u53d6\u955cpgsql\u7684\u955c\u50cf,\u5e76\u6307\u5411/mnt/data/pgsqldata,\u6b64\u5904\u8981\u6ce8\u610f\u4e0d\u662f\u6240\u6709\u7684\u76ee\u5f55\u90fd\u6709\u5199\u5165\u6743\u9650,homeAssitant\u4e2d\u5927\u90e8\u4efd\u76ee\u5f55\u90fd\u6ca1\u6709\u5199\u5165\u6743\u9650,\u8981\u6ce8\u610f\u627e\u6709\u5199\u5165\u6743\u9650\u7684\u76ee\u5f55 data # docker run -d \\ --name=postgresql \\ -e POSTGRES_USER=dtuser \\ -e POSTGRES_PASSWORD=Dtuse1r \\ -e POSTGRES_DB=dtha \\ -v /mnt/data/pgsqldata:/var/lib/postgresql/data \\ -p 5432:5432 \\ --restart unless-stopped postgres # \u6267\u884c\u5b8c\u6210\u540e,\u8fd4\u56de: 9a4721cccb0d5c63671da5cba4a6b6c13721f48ac664de03312cddaa216a2e56 \u7cfb\u7edf\u4f1a\u81ea\u52a8\u62c9\u53d6\u955c\u50cf,\u5e76\u542f\u52a8,\u6b64\u8fc7\u7a0b\u52a1\u5fc5\u4fdd\u8bc1\u79d2\u5b66\u4e0a\u7f51\u7684\u7545\u901a \u5982\u4e0b\u56fe,\u6240\u793a, \u8bf4\u660e\u76ee\u5f55\u6ca1\u6709\u6743\u9650, chown -R root:root mnt/data/pgsqldata chmod -R 7777 /mnt/data/pgsqldata \u7ed9\u591f\u76ee\u5f55\u6743\u9650\u540e,\u518d\u6b21\u8fd0\u884c,\u5b89\u88c5\u6307\u4ee4 data # docker run -d \\ --name=postgresql \\ -e POSTGRES_USER=dtuser \\ -e POSTGRES_PASSWORD=Dtuse1r \\ -e POSTGRES_DB=dtha \\ -v /mnt/data/pgsqldata:/var/lib/postgresql/data \\ -p 5432:5432 \\ --restart unless-stopped postgres # \u6267\u884c\u5b8c\u6210\u540e,\u8fd4\u56de: docker: Error response from daemon: Conflict. The container name \"/postgresql\" is already in use by container \"f5b838e28f30ff3bde9f90276b8aa4924b4f1ecec2cdbd4e38dfe27e2c988edb\". You have to remove (or rename) that container to be able to reuse that name. See 'docker run --help \u4e0a\u8ff0\u8bf4\u660epgswl\u7684\u5bb9\u5668\u5df2\u7ecf\u5b58\u5728,\u9700\u8981\u5220\u9664 docker stop postgresql docker rm postgresql \u7136\u540e,\u518d\u6b21\u6267\u884c,\u5373\u53ef\u6210\u529f data # docker run -d \\ --name=postgresql \\ -e POSTGRES_USER=dtuser \\ -e POSTGRES_PASSWORD=Dtuse1r \\ -e POSTGRES_DB=dtha \\ -v /mnt/data/pgsqldata:/var/lib/postgresql/data \\ -p 5432:5432 \\ --restart unless-stopped postgres # \u6267\u884c\u5b8c\u6210\u540e,\u8fd4\u56de: 9a4721cccb0d5c63671da5cba4a6b6c13721f48ac664de03312cddaa216a2e56 \u7528ps -a \u67e5\u8be2\u4e00\u4e0b,\u5982\u4e0b\u56fe\u6240\u793a,\u8bf4\u660edocker \u542f\u52a8\u6210\u529f, \u4e3a\u4e86\u9a8c\u8bc1\u91cd\u65b0\u542f\u52a8\u540e,pgsql\u5bb9\u5668\u662f\u5426\u542f\u52a8,\u53ef\u4ee5\u91cd\u542f\u540e,\u518d\u6b21\u67e5\u770b\u4e00\u4e0b,\u6b64\u5bb9\u5668\u662f\u5426\u8ddf\u968f\u7cfb\u7edf\u542f\u52a8\u6210\u529f. \u63a5\u4e0b\u6765,\u6211\u4eec\u53ef\u4ee5\u5728\u5c40\u57df\u7f51\u4e2d\u627e\u53f0\u673a\u5668\u6765\u505a\u4e00\u4e0b\u6570\u636e\u5e93\u8fde\u63a5\u6d4b\u8bd5 \u5982\u4e0a\u56fe,\u8bf4\u660epgsql\u5df2\u7ecf\u5b89\u88c5\u6210\u529f\u4e86,\u5e76\u80fd\u6b63\u5e38\u8bbf\u95ee. \u66f4\u6539homeAssistant\u9ed8\u8ba4\u7684\u6570\u636e\u5e93\u4e3apgSql \u00b6 HomeAssistant\u9ed8\u8ba4\u7684\u6570\u636e\u5e93\u4e3asqlite,\u6211\u4eec\u9700\u8981\u628a\u5176\u6362\u6210\u6211\u4eec\u65b0\u5b89\u88c5\u7684pgsql, \u901a\u8fc7\u6211\u4eec\u5b89\u88c5\u7684\u63d2\u4ef6File editor \u6253\u5f00\u914d\u7f6e\u6587\u4ef6 /homeassistant/configruration.yaml \u589e\u52a0recorder\u4e2d\u7684\u914d\u7f6e\u5982\u4e0b \u7136\u540e,\u4fdd\u5b58\u9000\u51fa,\u91cd\u542f,\u770b\u770bha\u6709\u6ed1\u7684\u7ed9\u51fa\u9519\u8bef\u63d0\u793a,\u4e5f\u53ef\u4ee5\u901a\u8fc7,\u8fde\u63a5\u5de5\u5177\u6765\u67e5\u770b,ha\u6709\u6ca1\u6709\u5728\u6570\u636e\u5e93\u4e2d\u5efa\u8868,\u5199\u5165\u6570\u636e \u5982\u4e0a\u56fe,\u8bf4\u660e\u6570\u636e\u5df2\u529f\u529f\u6298\u5199\u5165PGSQL,\u6b64\u65f6\uff0c\u6211\u4eec\u53ef\u4ee5\u628a\u7cfb\u7edf\u9ed8\u8ba4\u7684\u6570\u636e\u5e93\u5220\u9664\u4e86 \u8fd9\u4e2a\u6587\u4ef6\u662fhomeAssistant\u9ed8\u8ba4\u7684sqlite\u6570\u636e\u5e93\u6587\u4ef6\uff0c\u53ef\u4ee5\u5220\u9664\u4e86\uff0c\u70b9\u53f3\u5219\u7684\u4e09\u4e2a\u70b9\uff0c\u5728\u5f39\u51fa\u7684\u83dc\u5355\u4e2d\uff0c\u70b9delete \u70b9\u51fbyes\u786e\u8ba4 \u7136\u540e\u91cd\u542f,\u518d\u6b21\u67e5\u770b,\u662f\u5426\u91cd\u65b0\u751f\u6210\u6b64\u6587\u4ef6, \u5982\u679c\u6ca1\u6709\u91cd\u65b0\u751f\u6210\u6b64\u6587\u4ef6 ,\u8bf4\u660e,\u7cfb\u7edf\u5df2\u7ecf\u5728\u7528pgsql\u4e86 \u5b89\u88c5HACS \u00b6 hacs\u7b80\u4ecb \u00b6 HACS\uff0c\u5168\u79f0 Home Assistant Community Store\uff08Home Assistant \u793e\u533a\u5546\u5e97\uff09\uff0c\u662f\u4e00\u4e2a\u7528\u4e8e Home Assistant \u7684\u7b2c\u4e09\u65b9\u6269\u5c55\u63d2\u4ef6\u7ba1\u7406\u5668\u3002\u5b83\u4e3a\u7528\u6237\u63d0\u4f9b\u4e86\u4e00\u4e2a\u65b9\u4fbf\u7684\u65b9\u5f0f\u6765\u5b89\u88c5\u548c\u7ba1\u7406\u793e\u533a\u5f00\u53d1\u7684\u81ea\u5b9a\u4e49\u96c6\u6210\u3001\u63d2\u4ef6\u3001\u4e3b\u9898\u548c\u5176\u4ed6\u6269\u5c55\u7ec4\u4ef6\u3002 \u8fd9\u4e2a\u63d2\u4ef6\u96c6\u4e2d\u4e86\u8bb8\u591a\u5927\u5c4f\u7528\u7684\u4e3b\u9898\u4e0e\u63d2\u4ef6\uff0c\u5c5e\u4e8e\u5fc5\u88c5\u63d2\u4ef6\uff0e \u5b89\u88c5hacs \u00b6 \u8fdb\u5165ssh\u767b \u5f55\u540e,\u8f93\u5165\u5982\u4e0b\u6307\u4ee4 wget -O - https://get.hacs.xyz | bash - \u56de\u8f66\u540e,\u7cfb\u7edf\u4f1a\u81ea\u52a8\u4e0b\u8f7dHACS\uff0c\u5e76\u653e\u5230\u6307\u5b9a\u7684\u76ee\u5f55\uff0c\u4e14\u63d0\u793a\u91cd\u542f\uff0c\u6211\u4eec\u6309\u8981\u6c42\u91cd\u542f\uff0c\u5373\u53ef\u3002 \u542f\u7528HACS \u00b6 \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u60a8\u9700\u8981\u5728 Home Assistant \u7684\u754c\u9762\u4e2d\u542f\u7528 HACS\uff1a \u6253\u5f00 Home Assistant UI\u3002 \u70b9\u51fb \u8bbe\u7f6e > \u8bbe\u5907\u4e0e\u670d\u52a1 > \u96c6\u6210 \u3002 \u70b9\u51fb\u53f3\u4e0b\u89d2 \u6dfb\u52a0\u96c6\u6210 \u3002 \u641c\u7d22\u5e76\u9009\u62e9 HACS \uff0c\u7136\u540e\u6309\u7167\u5c4f\u5e55\u4e0a\u7684\u63d0\u793a\u5b8c\u6210\u8bbe\u7f6e\u3002 \u70b9\u51fb\u540e,\u5728\u5f39\u51fa\u7684\u7a97\u53e3\u4e2d,\u5168\u6253\u52fe,\u70b9\u63d0\u4ea4 \u5f15\u65f6,\u5f39\u51fa\u65b0\u7684\u7a97\u53e3,\u9a8c\u8bc1github\u6388\u6743 \u70b9\u51fb\u8fd9\u4e2agithub\u94fe\u63a5,\u5e76\u8bb0\u4f4f\u4e0b\u65b9\u7684\u6388\u6743\u7801\u540e\u9762\u4f1a\u7528\u5230 \u5728\u5f39\u51fa\u7684\u9875\u9762\u4e2d,\u8f93\u5165,\u8bb0\u4f4f\u7684\u6388\u6743\u7801,\u70b9Continue \u63d0\u793a\u5177\u4f53\u7684\u6388\u6743\u5bf9\u50cf\u4e3ahacs,\u70b9\u51fbAutuorize hacs \u6388\u6743\u6210\u529f \u8fd4\u56dehacs\u540e,\u63d0\u793a\u6210\u529f,\u5e76\u663e\u793a\u5df2\u53d1\u73b0\u5982\u4e0b\u8bbe\u5907,hacs,\u9009\u62e9\u533a\u57df,\u53ef\u4ee5\u81ea\u5b9a\u4e49\u4e2a\u533a\u57df,\u7136\u540e\u70b9\u5b8c\u6210 \u770b\u5230\u5982\u4e0b\u754c\u9762hacs\u5c31\u5b89\u88c5\u597d\u4e86 \u70b9\u51fb\u914d\u7f6e,\u542f\u7528App Daemon apps discovery & tgracking. \u4ee5\u4e0a\u914d\u7f6e \u5b8c\u6210\u540e,\u91cd\u65b0\u542f\u52a8HA\uff0c\u5219\u53ef\u4ee5\u5728\u5de6\u4fa7\u680f\u4e2d\u627e\u5230HACS\u83dc\u5355\u4e86 \u66f4\u6539HomeAssistant\u5de6\u4e0a\u89d2LOGO\u6807\u9898 \u00b6 homeAssistant \u5de6\u4e0a\u89d2\u9ed8\u8ba4\u7684\u6807\u9898\u4e3a Home Assistant \u6211\u4eec\u5e0c\u671b\u6539\u6210\u81ea\u5df2\u7684\u6807\u8bc6\u5982:\u5cb1\u7279\u667a\u80fd \u4e0b\u8f7d\u7b2c\u4e09\u65b9\u63d2\u4ef6hass-favicon\u7684Releases\u5230\u672c\u5730\u76ee\u5f55 \u00b6 \u70b9\u51fb\u94fe\u63a5 ,\u5230\u5176github\u7684\u5b98\u65b9\u9875\u9762 \u4e0b\u8f7d\u5176\u6e90\u7801 \u89e3\u538b\u4e0b\u8f7d\u7684\u6e90\u7801 \u00b6 \u5c06\u63d2\u4ef6\u590d\u5236\u5230ha\u4e0a \u00b6 \u6253\u5f00\u6e90\u7801\u76ee\u5f55,\u8fdb\u5165custom_commponents\u76ee\u5f55,\u628afavicon\u76ee\u5f55\u6574\u4f53\u590d\u5236 \u7136\u540e,\u8fdb\u5165ha\u7684config-custom_compoents\u76ee\u5f55\u7c98\u8d34,\u590d\u5236\u5230\u7684favicon \u7136\u540e\u521b\u5efa\u76ee\u5f55 \\\\ha-o[\\config\\www\\favicons \u5e76\u628a\u80dc\u900f\u7684logo\u6587\u4ef6st-logo.,png\u653e\u5230\u76ee\u5f55\u4e2d \u7136\u540e\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u589e\u52a0\u5982\u4e0b\u5185\u5bb9 \u7136\u540e,\u91cd\u542fHomeAssistant\u5373\u53ef \u91cd\u542f\u540e,\u5de6\u4e0a\u811a\u7684LOGO\uff0c\u5df2\u53d8\u4e3a\u5cb1\u7279\u667a\u80fd. \u5b89\u88c5\u7c73\u5bb6\u96c6\u6210\u63d2\u4ef6 \u00b6 \u7c73\u5bb6\u96c6\u6210\u662f\u4e00\u4e2a\u7531\u5c0f\u7c73\u5b98\u65b9\u63d0\u4f9b\u652f\u6301\u7684 Home Assistant \u7684\u96c6\u6210\u7ec4\u4ef6\uff0c\u5b83\u53ef\u4ee5\u8ba9\u60a8\u5728 Home Assistant \u4e2d\u4f7f\u7528\u5c0f\u7c73 IoT \u667a\u80fd\u8bbe\u5907\u3002 \u8fd9\u4e2a\u63d2\u4ef6,\u53ef\u4ee5\u76f4\u63a5\u628a\u6240\u6709\u5c0f\u7c73\u7684\u5404\u79cd\u4f20\u611f\u5668\u96c6\u6210\u5230HomeAssistant\u4e2d,\u6240\u4ee5\u8fd9\u4e2a\u662f\u5fc5\u88c5\u63d2\u4ef6. \u5176\u5b98\u65b9\u4ed3\u5e93\u5730\u5740\u4e3a: Xiaomi Home Integration for Home Assistant https://github.com/XiaoMi/ha_xiaomi_home \u5176\u5b89\u88c5\u65b9\u6cd5\u6709\u4e09\u79cd,\u6211\u4eec\u4e3a\u4e86\u65b9\u4fbf\u9009\u62e9\u7b2c\u4e00\u79cd,\u5176\u5b83\u4e24\u79cd\u65b9\u6cd5,\u53ef\u4ee5\u81ea\u884c\u5c1d\u8bd5.\u5b98\u65b9\u63cf\u8ff0\u7684\u65b9\u88c5\u4e3b\u5f0f\u5982\u4e0b: cd config git clone https://github.com/XiaoMi/ha_xiaomi_home.git cd ha_xiaomi_home ./install.sh /config \u5176\u4e5f\u63d0\u4f9b \u4e2d\u6587\u7684\u5b89\u88c5\u8bf4\u660e \u5b89\u88c5 \u00b6 \u9996\u5148,\u767b\u5f55SSH.\u7136\u540e\u8fdb\u5165config\u76ee\u5f55 \u5148\u62c9\u53d6\u4ee3\u7801 config # git clone https://github.com/XiaoMi/ha_xiaomi_home.git Cloning into 'ha_xiaomi_home'... remote: Enumerating objects: 1322, done. remote: Counting objects: 100% (761/761), done. remote: Compressing objects: 100% (342/342), done. remote: Total 1322 (delta 628), reused 419 (delta 419), pack-reused 561 (from 2) Receiving objects: 100% (1322/1322), 847.87 KiB | 1.64 MiB/s, done. Resolving deltas: 100% (817/817), done. \u7136\u540e,\u518d\u5207\u6362\u5230ha_xiaomi_home\u76ee\u5f55 cd ha_xiaomi_home \u7136\u540e\u6267\u884c\u5b89\u88c5\u6307\u4ee4 ./install.sh /config # Xiaomi Home installation is completed. Please restart Home Assistant. \u5b89\u88c5\u5b8c\u6210,\u63d0\u793a\u9700\u8981\u91cd\u542f. \u914d\u7f6e \u00b6 \u5728\u91cd\u65b0\u542f\u52a8\u540e,\u5728\u8bbe\u7f6e-\u8bbe\u5907\u4e0e\u670d\u52a1-\u6dfb\u52a0\u96c6\u6210\u4e2d,\u641c\u7d22\u201c Xiaomi Home \u201d \u70b9\u51fb,\u4f1a\u63d0\u793a\u98ce\u9669\u63d0\u793a \u52fe\u9009,\u6211\u77e5\u6089,\u70b9\u51fb\u4e0b\u4e00\u6b65,\u4f1a\u8fdb\u5165\u57fa\u7840\u914d\u7f6e\u9875\u9762,\u5982\u4e0b\u56fe \u52fe\u9009\u96c6\u6210\u7f51\u7edc\u914d\u7f6e,\u540c\u86d9,\u6ce8\u610f\u4e00\u4e0b,\u8ba4\u8bc1\u8df3\u8f6c\u5730\u5740,\u6b64\u5904\u663e\u6b3e\u4e3ahttp://homeassistant.lcaol:8123,\u8fd9\u4e2a\u5730\u5740,\u4f30\u8ba1\u4e0d\u53ef\u80fd\u901a\u8fc7,\u53ea\u56e0\u4e3a\u6211\u4eec\u662f\u5728\u5c40\u57df\u7f51\u5176\u5b83\u673a\u5668\u64cd\u4f5c\u8fd9\u4e00\u6b65\u7684,\u5b9e\u9645\u4e0a\u6211\u4eec\u7684\u5730\u5740,\u5e94\u662f\u5730\u5740\u680f\u4e2d\u6298\u5b9e\u9645\u5730\u5740,\u5982\u4e0a\u56fe,\u6211\u4eec\u7684\u8ba4\u8bc1\u5730\u5740\u662f:http://192.168.3.2:8123, \u5728\u4e0b\u4e00\u6b65\u8df3\u8f6c\u8f6c\u5c0f\u7c73\u540e,\u6253\u5f00\u7684\u7f51\u5740\u65f6,\u4e0d\u51fa\u610f\u5916\u7684\u8bdd\u4f30\u8ba1\u662f\u6253\u4e0d\u5f00\u7684,\u9700\u8981\u628a\u90a3\u4e2a\u5730\u5740\u7684\u524d\u534a\u6bb5,\u6362\u6210\u8fd9\u4e2a\u5b9e\u9645\u5730\u5740. \u70b9\u51fb\u4e0b\u4e00\u6b65, \u6b64\u5904\u4e3a\u68c0\u6d4b\u7f51\u7edc,\u7f51\u7edc\u68c0\u6d4b\u901a\u8fc7\u65f6,\u624d\u80fd\u8fdb\u884c\u4e0b\u4e00\u6b65 \u5f53\u5f39\u51fa\u5982\u4e0b\u754c\u9762\u65f6,\u8bf4\u660e\u7f51\u7edc\u68c0\u6d4b\u901a\u8fc7\u4e86, \u70b9\u51fb,\"\u8bf7\u70b9\u6b64\u5904\u8fdb\u884c\u767b\u5f55\", \u6b64\u65f6,\u8df3\u8f6c\u5230\u5c0f\u7c73\u6298\u8ba4\u8bc1\u7f51\u9875,\u6b64\u65f6\u8f93\u5165\u6b63\u786e\u7c73\u5bb6\u5e10\u53f7\u4e0e\u5bc6\u7801,\u70b9\u767b\u5f55 \u5f39\u51fa \u53cb\u60c5\u63d0\u793a,\u70b9\u51fb,\u540c\u610f\u5e76\u7ee7\u7eed \u5c0f\u7c73\u7684\u5b89\u5168\u9a8c\u8bc1,\u70b9\u4e0b\u4e00\u6b65, \u70b9\u51fb \u53d1\u9001\u9a8c\u8bc1\u7801 \u8f93\u5165\u9a8c\u8bc1\u7801\u540e,\u70b9\u786e\u5b9a \u8df3\u8f6c\u5230\u4e86\u8ba4\u8bc1\u7a97\u53e3,\u4f46\u662f\u5374\u662f\u65e0\u65b9\u8bbf\u95ee\u6b64\u9875\u9762,\u8bf4\u660e\u8ba4\u8bc1\u5730\u5740,\u9519\u4e86,\u6211\u4eec\u9700\u8981\u628a\u5b83\u6362\u6210\u6211\u4eec\u6b63\u786e\u7684HA\u5730\u5740\uff1ahttp://192.168.3.2:8123,\u5982\u4e0b\u56fe\u6240\u793a \u624b\u5de5\u5c06\u6b63\u786e\u7684\u5730\u5740\u66ff\u6362\u5730\u5740\u5934\u90e8\u540e,\u56de\u8f66,\u6253\u5f00\u8fd9\u4e2a\u5730\u5740,\u7c7b\u4f3c\u5982\u4e0b\u683c\u5f0f: http://192.168.3.2:8123/api/webhook/3062281226000218850?code=C3_B7440E147BCCA71A76831877D510611F&state=d90a727abad348efee834884dae174b80a15de14 \u5982\u679c,\u7528\u4e0a\u8ff0\u65b9\u5f0f,\u4ecd\u7136\u4e0d\u80fd\u8bbf\u95ee,\u5219\u53ef\u7528\u5982\u4e0b\u65b9\u6cd5,\u66f4\u6539host\u6587\u4ef6,\u5f3a\u884c\u6307\u5b9a\u672c\u5730DNS,\u6307\u5411homeassistant.local,\u65b9\u6cd5\u5982\u4e0b: \u4fee\u6539 Windows hosts \u6587\u4ef6\u7684\u65b9\u6cd5 \u4f7f\u7528\u7ba1\u7406\u5458\u8eab\u4efd\u7528\u8bb0\u4e8b\u672c\u6253\u5f00\u5982\u4e0b\u6587\u4ef6 :C:\\Windows\\System32\\drivers\\etc\\hosts \u5728\u6700\u540e\u4e00\u884c\u589e\u52a0 192.168.3.2 homeassistant.local \u5982\u4e0b\u56fe \u7136\u540e,\u518d\u91cd\u65b0\u8bd5\u8fc7\u4e00\u6b21 \u4e0d\u51fa\u610f\u5916\u7684\u8bdd,\u5c31\u4f1a\u81ea\u52a8\u8ba4\u8bc1\u901a\u8fc7 \u53ef\u4ee5\u6839\u636e\u63d0\u793a\u81ea\u52a8\u9009 \u5219\u623f\u95f4\u540c\u6b65\u6a21\u5f0f,\u8fd9\u4e2a\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u9009\u62e9,\u70b9\u51fb\u4e0b\u4e00\u6b65,\u5c06\u63d0\u793a\u63d2\u4ef6\u96c6\u6210\u6210\u529f.\u5982\u4e0b\u793a\u610f\u56fe \u770b\u5230\u5982\u4e0b\u56fe,\u5c31\u8bf4\u660e\u96c6\u6210\u5b8c\u6210\u4e86 \u4e0d\u51fa\u610f\u5916\u7684\u8bdd\u6982\u89c8\u4e2d,\u5c31\u5df2\u7ecf\u81ea\u52a8\u589e\u52a0\u4e86\u8bb8\u591a\u8bbe\u5907. \u5b89\u88c5WebRTC Camera \u00b6 WebRTC camera\u63d2\u4ef6\u4ee5\u5b9e\u73b0\u9891\u6d41\u64ad\u653e.\u5982\u679cha\u8981\u63a5\u5165\u89c6\u9891\u76d1\u63a7,\u5219\u9700\u8981\u5b89\u88c5\u8fd9\u4e2a\u7ec4\u4ef6, \u4ed3\u5e93\u5730\u5740 : https://github.com/AlexxIT/WebRTC \u8fd9\u4e2a\u63d2\u4ef6\u4e5f\u6709\u591a\u79cd\u5b89\u88c5\u65b9\u6cd5,hacs\u5b89\u88c5,\u76f4\u63a5\u590d\u5236\u7b49\u65b9\u6cd5,\u56e0\u4e3a\u4e0a\u6587,\u6211\u4eec\u5df2\u7ecf\u5b89\u88c5\u8fc7\u4e86HACS\u63d2\u4ef6\uff0c\u6240\u4ee5\u6211\u4eec\u9009\u62e9\u4f7f\u7528HACS\u65b9\u5f0f\u5b89\u88c5\u3002 \u70b9\u51fb\u540e\uff0c\u5f39\u51fa\u5982\u4e0b\u9875\u9762 \u70b9\u51fbDownLoad\u6309\u94ae \u70b9\u51fbDownLoad \u5f53\u7136,\u6211\u4eec\u4e5f\u53ef\u4ee5\u9009\u62e9\u4e0d\u540c\u6298\u7248\u672c \u5f53\u5f39\u51fa\u7a97\u53e3\u81ea\u52a8\u6d88\u5931,\u70b9\u51fb\u4e0a\u65b9\u7684\u8fd4\u56de( \u6ce8\u610f:\u4e0d\u4f1a\u81ea\u52a8\u8fd4\u56de,\u987b\u4eba\u5de5\u8fd4\u56de ),\u8fd4\u56de\u5982\u4e0b\u56fe \u770b\u5230\u4e0a\u65b9\u7684\u7b49\u5f85\u91cd\u542f,\u8bf4\u660e\u7ec4\u4ef6\u5df2\u7ecf\u5b89\u88c5\u4e0a,\u9700\u8981\u91cd\u542f,\u6211\u4eec\u6267\u884c\u91cd\u542f. \u91cd\u542f\u5b8c\u6210\u540e,\u4f1a\u770b\u5230,Downloaded\u4e2d\u5df2\u7ecf\u663e\u793a,\u4e86\u5b89\u88c5\u6210\u529f\u6298WebRTC Camera\u7ec4\u4ef6. \u7136\u540e,\u8fdb\u5165\u8bbe\u7f6e-\u8bbe\u5907\u4e0e\u670d\u52a1-\u6dfb\u52a0\u96c6\u6210,\u641c\u7d22WebRTC \u70b9\u51fbWebRtc Camera \u5f39\u51fago2rtc url\u5730\u5740\u7a97\u53e3,\u6b64\u63d2\u4ef6,\u6211\u4eec\u4e4b\u524d\u5df2\u88c5\u8fc7,\u5c31\u5728\u672c\u673a,\u6240\u5730\u5740\u4e0d\u7528\u6539,\u76f4\u63a5\u70b9\u63d0\u4ea4 \u70b9\u5b8c\u6210.WebRTC\u5b89\u88c5\u6210\u529f.\u5982\u4e0b\u56fe\u6240\u793a \u4e3a\u4e86\u6f14\u793a\u5982\u4f55\u663e\u793a\u76d1\u63a7\u89c6\u9891,\u6211\u4eec\u65b0\u589e\u52a0\u4e00\u4e2asample\u7684\u4eea\u8868\u76d8. \u70b9\u51fb,\u6dfb\u52a0\u4eea\u8868\u76d8 \u5728\u5f39\u51fa\u6298\u5bf9\u8bdd\u6846\u4e2d,\u8f93\u5165\u4eea\u8868\u76d8\u6807\u9898 \u8fd9\u6837\u6211\u6837\u5c31\u589e\u52a0\u4e86\u4e00\u4e2a\u4eea\u8868\u76d8dashboard-sampale,\u6211\u4eec\u53ef\u4ee5\u5728\u8fd9\u4e2a\u4eea\u8868\u76d8\u4e2d\u589e\u52a0\u6f14\u793a\u7528\u7684\u7ec4\u4ef6,\u6b64\u5904,\u6211\u4eec\u60f3\u589e\u52a0\u4e00\u4e2a\u6f14\u793a\u7528\u7684\u76d1\u63a7\u6444\u50cf\u5934.\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u7f16\u8f91\u6309\u94ae. \u70b9\u51fb\u521b\u5efa\u4e00\u4e2a\u7ec4\u4ef6 \u7136\u540e,\u65b0\u5efa\u5361\u7247,\u9009\u62e9\u81ea\u5b9a\u4e49WebRTC\u5361\u7247,\u5982\u679c\u6ca1\u6709\u8fd9\u4e2a\u7ec4\u4ef6,\u5219\u9700\u8981\u5237\u65b0\u51e0\u6b21,\u5c31\u80fd\u770b\u5230\u8fd9\u4e2a\u7ec4\u4ef6. \u6211\u6837\u5728\u5361\u7247\u8bbe\u7f6e\u4e2d\u8f93\u5165url\u7684\u89c6\u9891\u6d41\u5730\u5740 type: custom:webrtc-camera url: \"rtsp://admin:Camera_data2018@192.168.50.131:554/stream2\" \u5b89\u88c5motionEye \u00b6 motionEye \u662f\u4e00\u4e2a\u6d41\u884c\u7684\u6444\u50cf\u5934\u8f6f\u4ef6\uff08\u79f0\u4e3a motion\uff09\u7684\u524d\u7aef\u3002\u672c\u63d2\u4ef6\u540c\u65f6\u63d0\u4f9b\u4e86\u524d\u7aef\u548c\u6444\u50cf\u5934\u8f6f\u4ef6\uff0c\u8ba9\u60a8\u53ef\u4ee5\u5c06\u6444\u50cf\u5934\u6dfb\u52a0\u5230 Hass.io \uff08Home Assistant\uff09\u7cfb\u7edf\u4e2d\u3002 motionEye \u662f\u4e00\u4e2a\u5f00\u6e90\u7684\u95ed\u8def\u7535\u89c6\uff08CCTV\uff09\u548c\u7f51\u7edc\u89c6\u9891\u5f55\u50cf\u673a\uff08NVR\uff09\uff0c\u5b83\u8bbe\u8ba1\u4f18\u96c5\u4e14\u975e\u5e38\u6613\u4e8e\u4f7f\u7528\u3002\u5b83\u53ef\u4ee5\u7528\u4f5c\u5a74\u513f\u76d1\u89c6\u5668\u3001\u5efa\u7b51\u5de5\u5730\u76d1\u63a7\u3001\u5546\u5e97\u6444\u50cf\u5934\u5f55\u50cf\u673a\u3001\u82b1\u56ed\u5b89\u9632\u7b49\u3002 motionEye \u7684\u4e00\u4e9b\u7279\u70b9\uff1a \u00b6 \u652f\u6301\u5927\u91cf\u6444\u50cf\u5934\uff0c\u5305\u62ec IP \u6444\u50cf\u5934\u3002 \u53ef\u4ee5\u901a\u8fc7\u5c06\u591a\u4e2a motionEye \u5b9e\u4f8b\u8fde\u63a5\u5728\u4e00\u8d77\u6dfb\u52a0\u591a\u4e2a\u6444\u50cf\u5934\u3002\u4f8b\u5982\uff0c\u53ef\u4ee5\u5728\u7f51\u7edc\u4e2d\u4f7f\u7528\u8fd0\u884c MotionEyeOS \u7684 Pi Zero \u548c Pi \u6444\u50cf\u5934\u3002 \u652f\u6301\u5c06\u5f55\u50cf\u4e0a\u4f20\u5230 Google Drive \u548c Dropbox\u3002 \u652f\u6301\u8fd0\u52a8\u68c0\u6d4b\uff0c\u5305\u62ec\u90ae\u4ef6\u901a\u77e5\u548c\u8ba1\u5212\u4efb\u52a1\u3002 \u53ef\u4ee5\u8fde\u7eed\u5f55\u50cf\u3001\u8fd0\u52a8\u5f55\u50cf\u6216\u5ef6\u65f6\u5f55\u50cf\uff0c\u5e76\u652f\u6301\u4fdd\u7559\u8bbe\u7f6e\u3002 \u652f\u6301\u914d\u7f6e\u4e2d\u7684\u201c\u64cd\u4f5c\u6309\u94ae\u201d\u3002 \u5b89\u88c5\u65b9\u6cd5 \u00b6 \u5728\u8bbe\u7f6e-\u52a0\u8f7d\u9879\u4e2d,\u641c\u7d22\"motionEye\", \u70b9\u51fb\u67e5\u770b\u8be6\u60c5\u9875,\u5e76\u5b89\u88c5 motioneye\u9ed8\u8ba4\u7684\u7528\u6237\u540d\u4e3aadmin,\u5bc6\u7801\u4e3a\u7a7a.","title":"\u7cfb\u7edf\u521d\u59cb\u5316\u914d\u7f6e"},{"location":"Usages/initConfig/initConfig/#homeassistant","text":"","title":"\u521d\u59cb\u5316\u914d\u7f6eHomeAssistant"},{"location":"Usages/initConfig/initConfig/#homeassistant_1","text":"\u9996\u6b21\u6253\u5f00HomeAssistant\u901a\u8fc7,\u8def\u7531\u5668\u4e3a\u5176\u5206\u914d\u7684IP\u5730\u5740\u52a0\u7aef\u53e3\u53f7\u5373\u53ef\u8fdb\u884cHomeAssistant. \u683c\u5f0f\u5982\u4e0b: http://Ip:Port \u5982:http://192.168.3.2:8123 \u57fa\u4e2d:8123\u4e3a\u5176\u9ed8\u8ba4\u7684\u7aef\u53e3\u540e,\u5f53\u7136,\u7cfb\u7edf\u521d\u59cb\u5316\u6210\u529f\u540e,\u53ef\u4ee5\u6539. \u5982\u4e0b\u56fe\u6240\u793a: \u70b9\u51fb\"\u521b\u5efa\u6211\u667a\u80fd\u5bb6\u5bb6\u5c45\"\u6309\u8fdb\u884c\u4e0b\u4e00\u6b65 \u5728\u8fd9\u91cc\u6211\u4eec\u8f93\u5165\u59d3\u540d,\u7528\u6237\u540d,\u5bc6\u7801,\u786e\u8ba4\u5bc6\u7801 \u8fd9\u91cc\u6211\u4eec\u4f7f\u7528\u7edf\u4e00\u7684\u4fe1\u606f \u59d3\u540d:\u5cb1\u7279\u667a\u80fd \u7528\u6237\u540d:dtuser \u5bc6\u7801:****** \u786e\u8ba4\u5bc6\u7801:***** \u6ce8\u610f:\u4e0a\u8ff0\u5bc6\u7801\u4e3a\u4e86\u5b89\u5168,\u6ca1\u6709\u663e\u793a,\u8bf7\u54a8\u8be2\u7cfb\u7edf\u7ba1\u7406\u5458\u83b7\u53d6\u771f\u6b63\u7684\u5bc6\u7801. \u70b9\u51fb\"\u521b\u5efa\u5e10\u6237\", \u8fd9\u4e00\u6b65,\u4f1a\u8981\u6c42\u4f60\u8f93\u5165\u4f4d\u7f6e,\u8f93\u5165\u57ce\u5e02\u70b9\u83b7\u53d6,\u5982\u679c\u53d6\u4e0b\u5230\u4f1a\u62a5\u9519.\u6ca1\u5173\u7cfb,\u76f4\u63a5\u4e0b\u4e00\u6b65\u5373\u53ef,\u7cfb\u7edf\u914d\u7f6e\u5b8c\u6210\u540e,\u8fd8\u53ef\u66f4\u6539. \u8fd9\u4e00\u6b65\u662f\u8981\u6c42,\u4f60\u8f93\u4e0b\u6240\u5c5e\u7684\u56fd\u5bb6\u4e0e\u5730\u533a,\u5b83\u4f1a\u81ea\u52a8\u5224\u65ad\u51fa\u6765,\u56fd\u5bb6,\u76f4\u63a5\u70b9\u4e0b\u4e00\u6b65\u5373\u53ef. \u6b64\u65f6,\u5b83\u53ef\u80fd\u8fd8\u4f1a\u5f39\u51fa\u4e00\u4e2a\u5bf9\u8bdd\u6846\u6846,\u5e2e\u4f60\u68c0\u6d4b\u4f4d\u7f6e ,\u70b9\u786e\u5b9a\u5373\u53ef \u5982\u679c\u4e0d\u60f3\u8ba9\u5176\u68c0\u6d4b,\u76f4\u63a5\u70b9\u53d6\u6d88\u5373\u53ef,\u56e0\u4e3a\u5176\u68c0\u6d4b\u6298\u53ef\u80fd\u5f88\u6162,\u6240\u4ee5,\u76f4\u63a5\u70b9\u53d6\u6d88,\u9009\u62e9\u4e2d\u56fd\u5373\u53ef. \u8fd9\u91cc\u7684\u51e0\u9879,\u5168\u90e8\u4e0d\u7528\u9009,\u76f4\u63a5\u4e0b\u4e00\u6b65 \u8fd9\u4e00\u6b65,\u7cfb\u7edf\u4f1a\u81ea\u52a8\u626b\u63cf\u5c40\u57df\u7f51\u4e2d\u7684\u80fd\u76f4\u63a5\u5165\u7684\u8bbe\u5907.\u76f4\u63a5\u70b9\u51fb\u5b8c\u6210, \u7136\u540e,\u7cfb\u7edf\u4f1a\u8f6c\u5230\u5982\u4e0b\u754c\u9762 \u53ef\u80fd\u8981\u6301\u7eed\u4e00\u9635,\u7b49\u5f85\u5176\u5b8c\u6210\u5373\u53ef. \u5f00\u59cb\u7b2c\u4e00\u6b21,\u53ef\u80fd\u5f88\u6162 \u9996\u6b21\u5b8c\u6210\u5982\u4e0b\u663e\u793a","title":"\u9996\u6b21\u6253\u5f00HomeAssistant"},{"location":"Usages/initConfig/initConfig/#_1","text":"\u9996\u6b21\u767b\u5f55,\u53ef\u80fd\u4f1a\u663e\u793a\u66f4\u65b0,\u5982\u6b64\u65f6\u663e\u793a \u63d0\u793a\u66f4\u65b0Home Assistnat Operating System Update,\u70b9\u51fb\u5982\u4e0b\u6309\u94ae,\u4ee5\u5f39\u51fa\u7684\u5bf9\u8bdd\u6846\u4e2d\uff0c\u70b9\u66f4\u65b0\u6309\u94ae \u5982\u4e0b\u56fe\u6240\u793a\uff0c\u7cfb\u7edf\u5c06\u4f1a\uff0c\u8fdb\u884c\u66f4\u65b0 \u6ce8\u610f\uff0c\u8fd9\u4e2a\u64cd\u4f5c\uff0c\u4e00\u822c\u662f\u4ece\u4e24\u4e2a\u5730\u65b9\u83b7\u53d6\u66f4\u65b0\u5305\uff0c\u4e00\u662fgithub\u4e00\u4e2a\u662fdocker\u7684\u4ed3\u5e93\uff0c\u6240\u4ee5\uff0c \u8981\u4fdd\u6301\u79d1\u5b66\u4e0a\u7f51\u7684\u7545\u901a \u3002\u8fd9\u4e2a\u8fc7\u7a0b \uff0c\u4f30\u8ba1\u8981\u51e0\u5206\u949f\uff0c\u9700\u8981\u8010\u5fc3\u7b49\u7b49\uff0c\u4e5f\u6709\u53ef\u80fd\u4f1a\u66f4\u65b0\u5931\u8d25\uff0c\u7136\u540e\uff0c\u518d\u6b21\u66f4\u65b0\u3002 \u66f4\u65b0\u65f6,\u5982\u679c\u7f51\u7edc\u6709\u95ee\u9898\u53ef\u80fd\u4f1a\u51fa\u5728\u65e5\u5fd7 \u4e2d\u62a5\u51fa\u5982\u4e0b\u9519\u8bef aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.438 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.439 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.440 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.440 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') 2025-04-16 17:26:15.440 ERROR (MainThread) [homeassistant] Error doing job: Future exception was never retrieved (None) aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers') [09:26:17] INFO: Home Assistant Core finish process exit code 0 [09:26:17] INFO: Home Assistant Core service shutdown s6-rc: info: service legacy-services successfully stopped s6-rc: info: service legacy-cont-init: stopping s6-rc: info: service legacy-cont-init successfully stopped s6-rc: info: service fix-attrs: stopping s6-rc: info: service fix-attrs successfully stopped s6-rc: info: service s6rc-oneshot-runner: stopping s6-rc: info: service s6rc-oneshot-runner successfully stopped s6-rc: info: service s6rc-oneshot-runner: starting s6-rc: info: service s6rc-oneshot-runner successfully started s6-rc: info: service fix-attrs: starting s6-rc: info: service fix-attrs successfully started s6-rc: info: service legacy-cont-init: starting s6-rc: info: service legacy-cont-init successfully started s6-rc: info: service legacy-services: starting services-up: info: copying legacy longrun home-assistant (no readiness notification) s6-rc: info: service legacy-services successfully started 2025-04-16 17:28:26.876 ERROR (MainThread) [homeassistant.components.homeassistant_alerts.coordinator] Timeout fetching homeassistant_alerts data 2025-04-16 17:51:56.276 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain hassio.update 2025-04-16 17:51:56.278 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain cloud.tts 2025-04-16 17:51:56.278 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain mobile_app.notify 2025-04-16 17:51:56.278 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain backup.sensor 2025-04-16 17:51:56.279 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain energy.sensor 2025-04-16 17:51:56.279 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain sun.sensor 2025-04-16 17:51:56.279 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain homeassistant.scene 2025-04-16 17:51:56.279 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain hassio.binary_sensor 2025-04-16 17:51:56.280 WARNING (MainThread) [homeassistant.helpers.translation] Failed to load integration for translation: Invalid domain hassio.sensor \u4e0a\u8ff0\u9519\u8bef\u591a\u662f\u7531\u4e8e\u7f51\u7edc\u95ee\u9898\u5f15\u8d77\u7684,\u8981\u53bb\u68c0\u662f\u79d1\u5b66\u4e0a\u7f51\u662f\u5426\u8fd8\u6b63\u5e38. \u66f4\u5b8c\u5b8c\u6210\u540e,\u518d\u6b21\u542f\u52a8\u540e,\u4f1a\u663e\u793a\u6ca1\u6709\u53ef\u7528\u7684\u66f4\u65b0","title":"\u66f4\u65b0\u5fc5\u8981\u7684\u7ec4\u4ef6"},{"location":"Usages/initConfig/initConfig/#-","text":"\u70b9\u51fb,\u5f00\u59cb,\u901a\u7528 \u66f4\u6539\u540d\u79f0\u4e3a:\u5cb1\u7279\u667a\u80fd \u5176\u5b83\u7684\u4e0d\u53d8 #### \u914d\u7f6e-\u7f51\u7edc-\u4e3b\u673a\u540d \u628a\u4e3b\u673a\u540d\u914d\u7f6e\u6210\u4e3a\u5c40\u57df\u7f51\u4e2d\u552f\u4e00\u7684,\u5b9e\u9645\u8ba9\u5c31\u662f\u8ba1\u7b97\u673a\u540d,\u56e0\u4e3a\u540c\u4e00\u5c40\u57df\u7f51\u4e2d,\u8ba1\u7b97\u673a\u540d,\u4e0d\u5141\u8bb8\u76f8\u540c","title":"\u914d\u7f6e-\u901a\u7528"},{"location":"Usages/initConfig/initConfig/#-_1","text":"\u52a0\u8f7d\u9879\u4e2d\u6709\u8bb8\u591a\u5fc5\u88c5\u7ec4\u4ef6,\u9700\u8981\u4e00\u4e00\u5b89\u88c5,\u9996\u6b21\u8fdb\u5165\u65f6,\u53ef\u80fd\u4f1a\u663e\u793a\u5982\u4e0b\u9875\u9762 \u70b9\u51fb\u4e0b\u89d2\u7684\"\u52a0\u8f7d\u9879\u5546\u5e97\"","title":"\u914d\u7f6e-\u8bbe\u7f6e-\u52a0\u8f7d\u9879"},{"location":"Usages/initConfig/initConfig/#file-editor","text":"File editor \u662f\u4e00\u4e2a\u7528\u4e8e\u4fee\u6539HA\u7684\u914d\u7f6e\u6587\u4ef6\u7684\u96c6\u6210\u5de5\u5177,\u5c5e\u5fc5\u88c5\u9879,\u70b9\u51fb\u5b89\u88c5 \u70b9\u51fb\u5b89\u88c5,\u7cfb\u7edf\u4f1a\u5728\u540e\u53f0\u81ea\u52a8\u5b89\u88c5\u6b64\u63d2\u4ef6, \u5b89\u88c5\u5b8c\u6210\u540e,\u4f1a\u81ea\u52a8\u91cd\u542f \u6709\u65f6\u4e5f\u4f1a\u63d0\u793a\u5b89\u88c5\u5931\u8d25 \u8fd9\u79cd\u7ecf\u67e5\u770b\u65e5\u5fd7 \u591a\u4e3a\u7f51\u5f3a\u884c\u95ee\u9898\u65e0\u6cd5\u8bbf\u95ee.docker.io,\u8fd9\u662f\u56e0\u4e3a\u79d1\u5b66\u4e0a\u98ce\u7684\u539f\u56e0,\u91cd\u70b9\u6392\u67e5\u7f51\u7edc,\u5b89\u88c5\u6210\u529f\u540e,\u518d\u6b21\u8fdb\u5165\u4f1a\u663e\u793a\u5982\u4e0b\u754c\u9762 \u52fe\u9009,\u5f00\u673a\u542f\u52a8,\u81ea\u52a8\u6062\u590d,\u663e\u793a\u4e8e\u4fa7\u8fb9\u680f \u70b9\u51fb\u542f\u52a8,\u6216\u91cd\u542f,\u5c06\u4f1a\u5728\u4fa7\u8fb9\u680f\u770b\u5230\u6b64\u56fe\u6807,\u70b9\u51fb\u6253\u5f00\u7f51\u9875\u754c\u9762 \u80fd\u770b\u5230\u5982\u4e0b\u754c\u9762,\u8bf4\u660e\u5b89\u88c5\u6210\u529f \u6b64\u65f6\u52a0\u8f7d\u9879\u4e2d,\u5c31\u591a\u51fa\u4e86File editor\u9009\u9879","title":"\u5b89\u88c5File editor"},{"location":"Usages/initConfig/initConfig/#samba-share","text":"Samba share\u63d2\u4ef6\u662f\u4e00\u4e2a\u63d0\u4f9b\u5171\u4eab\u76ee\u5f55\u7684\u65b9\u5f0f\u5141\u884c\u5176\u5b83\u8ba1\u7b97\u673a\u7528\u8fd9\u79cd\u65b9\u5f0f\u67e5\u770b\u7f16\u8f91ha\u7684\u6587\u4ef6\u7684\u7ec4\u4ef6. \u70b9\u51fb\u5b89\u88c5 \u5b89\u88c5\u5931\u8d25\u65f6,\u4f1a\u6709\u5982\u4e0b\u63d0\u4e0b\u63d0\u793a \u6253\u5f00\u81ea\u52a8\u6062\u590d \u63a5\u4e0b\u6765\u6211\u4eec\u9700\u8981\u5230\u914d\u7f6e\u9009\u9879\u4e2d \u6b64\u5904\u6211\u4eec\u8bbe\u7f6e\u5982\u4e0b\u4fe1\u606f Username:dtuser Password:***** # \u6b64\u5904\u8bf7\u54a8\u8be2\u7ba1\u7406\u5458 Workgroup:WORKGROUP # \u4fdd\u6301\u4e0d\u53d8 \u66f4\u6539\u5b8c\u6210\u540e,\u6709\u5982\u4e0b\u914d\u7f6e \u914d\u7f6e \u5b8c\u6210\u540e,\u70b9\u51fb\u542f\u52a8 \u542f\u52a8\u6210\u529f\u540e,\u4f1a\u51fa\u4e0b\u56fe\u663e\u793a \u6b64\u65f6,\u5982\u679c,\u4e0eHA\u5728\u540c\u4e00\u5c40\u57df\u7f51\uff0c\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u65b9\u5f0f\u67e5\u770bHA\u7684\u6587\u4ef6\u76ee\u5f55 \u5728\u5730\u5740\u680f\u8f93\u5165\\HA\u7684IP \u8f93\u5165\u9884\u8bbe\u7684\u7528\u6237\u540d\u4e0e\u5bc6\u7801,\u5373\u53ef\u67e5\u770b,\u7f16\u8f91HA\u7684\u5404\u79cd\u6587\u4ef6\u3002","title":"\u5b89\u88c5Samba share\u63d2\u4ef6"},{"location":"Usages/initConfig/initConfig/#terminal-ssh","text":"Terminal & SSH \u63d2\u4ef6\u4e3aHA\u63d0\u4f9b\u4e86\u5728web\u7aef\u4f7f\u7528\u63a7\u5236\u53f0\u7ec8\u7aef\u529f\u80fd,\u53ca\u5f00\u542f\u4e86ssh\u670d\u52a1,\u4f7f\u4e4b\u53ef\u4ee5\u8fdc\u7a0b\u4f7f\u7528SSH\u8bbf\u95eeHA\u7ec8\u7aef\u3002 \u5728\u641c\u7d22\u4e2d\u8f93\u5165Terminal & SSH \u7ed3\u679c\u6709\u53ef\u80fd\u663e\u793a \u641c\u7d22\u4e0d\u5230\uff0c\u8fd9\u65f6\uff0c\u53ef\u80fd\u662f\u56e0\u4e3a\u4ed3\u5e93\u6ca1\u6709\u914d\u7f6e\uff0c\u8fd8\u662f\u4f7f\u7528\u7684\u9ed8\u8ba4\u7684\u4ed3\u5e93\uff0c\u6211\u4eec\u53ef\u4ee5\u589e\u52a0\u4e00\u4e0b\u4ed3\u5e93\uff0c\u5982\u4e0b\uff1a https://github.com/AlexxIT/hassio-addons \u70b9\u51fb\u53f3\u4e0a\u89e3\u7684\u4e09\u4e2a\u70b9,\u9009\u4e2d\u4ed3\u5e93 \u5728\u5f39\u51fa\u6298\u5bf9\u8bdd\u6846\u4e2d\u8f93\u5165,\u6211\u4eec\u8bb0\u5f55\u7684\u4ed3\u5e93\u5730\u5740,\u7136\u540e\u70b9\u6dfb\u52a0 \u5b8c\u6210\u540e,\u70b9\u51fb\u5173\u95ed. \u7136\u540e,\u70b9\u51fb\u8fd4\u56de,\u91cd\u65b0\u641c\u7d22 \u8fd9\u6b21\u627e\u5230\u4e86Advance SSH & Web Terminal \u70b9\u51fb\u5b89\u88c5,\u6253\u5f00\u5982\u4e0b\u9875\u9762 \u70b9\u51fb\u5b89\u88c5,\u6709\u65f6\u4f1a\u5b89\u88c5\u5931\u8d25, \u5931\u8d25\u540e,\u9700\u518d\u6b21\u5b89\u88c5,\u540c\u65f6\u68c0\u67e5\u65e5\u5fd7\u4e2d\u63d0\u5230\u7684\u54ea\u4e2a\u7f51\u5740\u65e0\u6cd5\u8bbf\u95ee ,\u628a\u5176\u52a0\u79d1\u5b66\u4e0a\u7f51\u7684\u4ee3\u7406\u540d\u5355\u4e2d. \u5b89\u88c5\u5b8c\u6210\u540e,\u5c31\u53d8\u6210\u5982\u4e0b \u5f00\u542f\u81ea\u52a8\u6062\u5f97,\u663e\u793a\u4fa7\u8fb9\u680f \u63a5\u4e0b\u6765,\u6211\u4eec\u914d\u7f6essh\u7684\u767b\u5f55\u4fe1\u606f,\u5982\u4e0b \u76f8\u5173\u4fe1\u606f\u5982\u4e0b: username:dtuser passsword:**** # \u6b64\u5904\u9700\u8981\u54a8\u8be2\u7ba1\u7406\u5458 \u5176\u5b83\u914d\u7f6e\u9009\u9879\u5982\u4e0b,\u6ce8\u610f\u9009\u9879,\u9009\u9519\u4e86ssh\u53ef\u80fd\u542f\u4e0d\u8d77\u6765,sftp\u5173\u95ed,zsh\u5173\u95ed.compatibility_mode\u8981\u5f00\u542f \u7136\u540e,\u70b9\u51fb\u542f\u52a8\u6309\u94ae \u542f\u52a8\u540e\u5982\u4e0b \u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u4e24\u4e2a\u5730\u65b9\u8fdb\u5165 \u5728\u65e5\u5fd7 \u7aef\u80fd\u770b\u5230 ssh\u5df2\u542f\u52a8\u6210\u529f s6-rc: info: service base-addon-banner successfully started s6-rc: info: service fix-attrs: starting s6-rc: info: service base-addon-log-level: starting s6-rc: info: service fix-attrs successfully started s6-rc: info: service base-addon-log-level successfully started s6-rc: info: service legacy-cont-init: starting s6-rc: info: service legacy-cont-init successfully started s6-rc: info: service init-ssh: starting s6-rc: info: service init-mysql: starting s6-rc: info: service init-mosquitto: starting s6-rc: info: service init-docker: starting s6-rc: info: service init-docker successfully started s6-rc: info: service init-mysql successfully started s6-rc: info: service init-mosquitto successfully started [14:51:05] WARNING: [14:51:05] WARNING: Logging in with a SSH password is security wise, a bad idea! [14:51:05] WARNING: Please, consider using a public/private key pair. [14:51:05] WARNING: What is this? https://kb.iu.edu/d/aews [14:51:05] WARNING: [14:51:05] NOTICE: RSA host key missing, generating one... Generating public/private rsa key pair. Your identification has been saved in /data/ssh_host_rsa_key Your public key has been saved in /data/ssh_host_rsa_key.pub The key fingerprint is: SHA256:+9pEl2QvyUqsu4B3gnPjhL/Ab71iBIDjWRdYvgZeg0c root@a0d7b954-ssh The key's randomart image is: +---[RSA 3072]----+ | . oE. | |o .o+. | |..o+.= o | | o. = o . + + | | . + S + * . | | ..+. = o . | | B.B.+ o | | X+=.= | | o=o=+o | +----[SHA256]-----+ [14:51:08] NOTICE: ED25519 host key missing, generating one... Generating public/private ed25519 key pair. Your identification has been saved in /data/ssh_host_ed25519_key Your public key has been saved in /data/ssh_host_ed25519_key.pub The key fingerprint is: SHA256:MgbUsAJ+23skjVTwD0pWVRBCmZ0BjU3jwV/99gGnNVc root@a0d7b954-ssh The key's randomart image is: +--[ED25519 256]--+ |. o+o*%O*. . E| |.. . .=+o*o o =.| | ...o+ o .. . = +| | ..*.+ o . . .o| | . =+oS. .o| | .+o .| | . . | | . | | | +----[SHA256]-----+ s6-rc: info: service init-ssh successfully started s6-rc: info: service init-user: starting [14:51:08] NOTICE: Session sharing has been disabled! s6-rc: info: service init-user successfully started s6-rc: info: service ttyd: starting s6-rc: info: service sshd: starting s6-rc: info: service sshd successfully started s6-rc: info: service ttyd successfully started s6-rc: info: service legacy-services: starting [14:51:09] INFO: Starting the ttyd daemon... [14:51:09] INFO: Starting the SSH daemon... s6-rc: info: service legacy-services successfully started Server listening on 0.0.0.0 port 22. Server listening on :: port 22. \u914d\u7f6e\u6210\u529f\u540e,\u53ef\u4ee5\u901a\u8fc7\u5982\u4e0b\u547d\u4ee4\u6765\u6d4b\u8bd5\u662f\u5426\u53ef\u4ee5\u8fdc\u7a0bSSH\u8fde\u5165 \u8f93\u5165yes\u540e\u4f1a\u8981\u6c42 \u8f93\u5165\u5bc6\u7801,\u9a8c\u8bc1\u6b63\u786e\u540e,\u4f1a\u8fdb\u5165\u770b\u5230\u5982\u4e2a\u56fe,\u5c31\u8bf4\u660essh\u5df2\u6b63\u5e38\u7684\u5f00\u542f\u6210\u529f\u4e86 \u4ee5\u4e0b\u754c\u9762\u662f\u5728ha\u4e2d\u770b\u5230\u7684\u5185\u7f6e\u7684ssh \u5176\u5b83,\u5f53\u8bbf\u95ee\u4e00\u4e9b\u7cfb\u7edf\u64cd\u4f5c\u65e0\u6743\u9650\u65f6,\u53ef\u4ee5\u5173\u95ed\u4fdd\u62a4\u5f00\u5173","title":"\u5b89\u88c5Terminal & SSH"},{"location":"Usages/initConfig/initConfig/#mosquitto-broker","text":"Mosquitto broker\u662f\u4e00\u4e2a\u91cd\u8981\u7684\u63d2\u4ef6,\u5176\u63d0\u4f9b\u7684MQTT \u670d\u52a1\u4e3a\u516c\u53f8\u5927\u591a\u6570\u6570\u8bbe\u5907\u6298\u96c6\u6210\uff0cmqtt\u901a\u4fe1\u901a\u9053\uff0c\u6240\u4ee5\uff0c\u6b64\u4e3a\u5fc5\u88c5\u63d2\u4ef6\u3002 \u70b9\u51fb\u5b89\u88c5 \u770b\u5230\u5982\u4e0b\u754c\u9762\uff0c\u8bf4\u660e\u5b89\u88c5\u6210\u529f\uff0c \u63a5\u4e0b\u6765\u662f\u914d\u7f6emqtt","title":"\u5b89\u88c5Mosquitto broker"},{"location":"Usages/initConfig/initConfig/#_2","text":"","title":"\u5f00\u542f\u81ea\u52a8\u6062\u590d"},{"location":"Usages/initConfig/initConfig/#mqtt","text":"username:dtuser password:****** #\u6b64\u5904\u7684\u5bc6\u7801\u8bf7\u54a8\u8be2\u7ba1\u7406\u5458 \u914d\u7f6e\u5b8c\u6210\u540e,\u542f\u52a8mqtt\u670d\u52a1 \u65e5\u5fd7\u4e2d\u663e\u793a\u5982\u4e0b\u4fe1\u606f,\u8bf4\u660e\u6210\u529f s6-rc: info: service s6rc-oneshot-runner: starting s6-rc: info: service s6rc-oneshot-runner successfully started s6-rc: info: service fix-attrs: starting s6-rc: info: service fix-attrs successfully started s6-rc: info: service legacy-cont-init: starting cont-init: info: running /etc/cont-init.d/mosquitto.sh [16:33:27] INFO: Setting up user dtuser [16:33:28] INFO: SSL is not enabled cont-init: info: /etc/cont-init.d/mosquitto.sh exited 0 cont-init: info: running /etc/cont-init.d/nginx.sh cont-init: info: /etc/cont-init.d/nginx.sh exited 0 s6-rc: info: service legacy-cont-init successfully started s6-rc: info: service legacy-services: starting services-up: info: copying legacy longrun mosquitto (no readiness notification) services-up: info: copying legacy longrun nginx (no readiness notification) [16:33:29] INFO: Starting NGINX for authentication handling... s6-rc: info: service legacy-services successfully started [16:33:29] INFO: Starting mosquitto MQTT broker... 2025-04-17 16:33:29: Warning: Mosquitto should not be run as root/administrator. 2025-04-17 16:33:29: mosquitto version 2.0.20 starting 2025-04-17 16:33:29: Config loaded from /etc/mosquitto/mosquitto.conf. 2025-04-17 16:33:29: Loading plugin: /usr/share/mosquitto/go-auth.so 2025-04-17 16:33:29: \u251c\u2500\u2500 Username/password checking enabled. 2025-04-17 16:33:29: \u251c\u2500\u2500 TLS-PSK checking enabled. 2025-04-17 16:33:29: \u2514\u2500\u2500 Extended authentication not enabled. 2025-04-17 16:33:29: Opening ipv4 listen socket on port 1883. 2025-04-17 16:33:29: Opening ipv6 listen socket on port 1883. 2025-04-17 16:33:29: Opening websockets listen socket on port 1884. 2025-04-17 16:33:29: mosquitto version 2.0.20 running 2025-04-17 16:33:29: New connection from ::1:56336 on port 1883. 2025-04-17 16:33:29: Client disconnected due to protocol error. [16:33:30] INFO: Successfully send discovery information to Home Assistant. [16:33:31] INFO: Successfully send service information to the Supervisor. \u5f53\u6d88\u606f,\u63d0\u793a\u53d1\u73b0\u8bbe\u5907\u65f6,\u70b9\u51fb,\u5f39\u51fa\u7684\u6d88\u606f\u4e2d,\u70b9check it out,\u7136\u540e,\u770b\u5230\u5df2\u53d1\u73b0mqtt,\u70b9\u51fb\u6dfb\u52a0 \u7136\u540e,\u70b9\u51fb\u5b8c\u6210 \u7136\u540e\u5c31\u4f1a\u5728\u8bbe\u7f6e-\u8bbe\u5907\u4e0e\u670d\u52a1-\u96c6\u6210\u4e2d,\u663e\u793aMqtt,\u4ee5\u540e,\u6240\u6709\u589e\u52a0\u7684MQTT\u7c7b\u8bbe\u5907\uff0c\u90fd\u4f1a\u663e\u793a\u5728\u8fd9\u4e2a\u7c7b\u522b\u4e2d\u3002","title":"\u914d\u7f6emqtt\u7684\u7528\u6237\u540d\u5bc6\u7801\u53ca\u5b9a\u5236\u914d\u7f6e"},{"location":"Usages/initConfig/initConfig/#node-red","text":"Node-Red\u63d2\u4ef6\u662f\u6211\u4eec\u96c6\u4e2d\u5404\u79cd\u8bbe\u5907\u7684\u91cd\u8981\u6d88\u606f\u5904\u7406\u8f6c\u6362\u63d2\u4ef6,\u5c5e\u5fc5\u88c5\u63d2\u4ef6. \u5728\u52a0\u8f7d\u9879\u4e2d,\u641c\u7d22nod\u663e\u793a\u5982\u4e0b \u70b9\u51fb,\u8fdb\u5165\u8be6\u7ec6\u9875\u9762 \u70b9\u51fb\u5b89\u88c5 \u5982\u679c\u5b89\u88c5\u51fa\u9519,\u591a\u534a\u662f\u79d1\u5b66\u4e0a\u7f51\u7684\u95ee\u9898, \u5982\u73b0\u5982\u4e0b\u9875\u9762,\u8bf4\u660e\u5b89\u88c5\u6210\u529f \u5f00\u542f\u81ea\u52a8\u6062\u590d,\u5173\u95ed\u4fa7\u8fb9\u680f \u914d\u7f6enod-red \u6b64\u5904\u7684\u914d\u7f6e\u4fe1\u606f\u4e3a username:admin password:**** #\u6b64\u5904\u7684\u5bc6\u7801,\u8bf7\u5411\u7ba1\u7406\u5458\u83b7\u53d6 ### \u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5173\u95edssl \u7136\u540e\u542f\u52a8node-red \u70b9\u51fb\u6253\u5f00web-\u9875\u9762\u5982\u4e0b","title":"\u5b89\u88c5Node-RED\u63d2\u4ef6"},{"location":"Usages/initConfig/initConfig/#go2rtc","text":"go2rtc\u63d2\u4ef6\u662f\u4e3a\u4e86\u5bf9\u89c6\u6d41\u8f6c\u53d1\u7528\u7684\u4e13\u7528\u63d2\u4ef6,\u5982\u679c\u60f3\u628a\u76d1\u63a7\u89c6\u9891\u6d41\u63a5\u5165,\u5219\u53ef\u4ee5\u4f7f\u7528\u8fd9\u4e2a\u63d2\u4ef6,\u5b89\u88c5\u65b9\u6cd5\u662f,\u52a0\u8f7d\u9879\u4e2d,\u641c\u7d22go2rtc, \u70b9\u51fb\u5b89\u88c5 \u5b89\u88c5\u5b8c\u6210\u540e\u5f00\u542f\u81ea\u52a8\u6062\u590d,\u81ea\u52a8\u66f4\u65b0 \u5176\u8bbe\u7f6e\u4e2d\u57fa\u672c\u6ca1\u4ec0\u4e48\u8981\u6539\u7684.","title":"\u5b89\u88c5go2rtc\u63d2\u4ef6"},{"location":"Usages/initConfig/initConfig/#vlc","text":"\u5728\u52a0\u8f7d\u5546\u5e97\u4e2d\u641c\u7d22vlc \u70b9\u51fb\u5b89\u88c5 \u5b89\u88c5\u6210\u529f\u5982\u4e0b\u6240\u793a \u914d\u7f6e\u4e2d\u57fa\u672c\u6ca1\u8981\u8981\u914d\u7f6e\u7684\u4e1c\u897f","title":"\u5b89\u88c5VLC\u53ef\u4ee5\u64ad\u653e\u89c6\u9891\u7b49\u529f\u80fd,\u9700\u8981\u7684\u8bdd\u53ef\u4ee5\u5b89\u88c5"},{"location":"Usages/initConfig/initConfig/#docker-postgresql","text":"\u867d\u7136 Home Assistant OS \u672c\u8eab\u4e0d\u5141\u8bb8\u76f4\u63a5\u8bbf\u95ee\u7cfb\u7edf\u5e95\u5c42\uff0c\u4f46\u5b83\u5185\u7f6e\u4e86 Docker \u652f\u6301\uff0c\u56e0\u6b64\u53ef\u4ee5\u76f4\u63a5\u8fd0\u884c PostgreSQL \u7684 Docker \u5bb9\u5668\u3002","title":"\u5229\u7528 Docker \u5b89\u88c5 PostgreSQL"},{"location":"Usages/initConfig/initConfig/#_3","text":"\u786e\u4fdd\u60a8\u6709 SSH \u8bbf\u95ee\u6743\u9650 \u5b89\u88c5 Home Assistant \u7684 SSH & Web Terminal Add-on\uff08\u9ad8\u7ea7\u6a21\u5f0f\uff09\u3002 \u5f00\u542f SSH \u8bbf\u95ee\uff0c\u5177\u4f53\u6b65\u9aa4\u5982\u4e0b\uff1a \u524d\u5f80 Supervisor > Add-on Store \u3002 \u641c\u7d22\u5e76\u5b89\u88c5 SSH & Web Terminal \uff08\u5b98\u65b9\u63d2\u4ef6\uff09\u3002 \u914d\u7f6e SSH \u63d2\u4ef6\uff0c\u786e\u4fdd protected \u8bbe\u7f6e\u4e3a false \uff0c\u7136\u540e\u542f\u52a8\u5b83\u3002 \u8fd0\u884c PostgreSQL \u5bb9\u5668 \u5728 SSH \u6216 Web Terminal \u4e2d\u8fd0\u884c\u4ee5\u4e0b\u547d\u4ee4\uff1a docker run -d \\ --name=postgresql \\ -e POSTGRES_USER=dtuser \\ -e POSTGRES_PASSWORD= **pwd** \\ -e POSTGRES_DB=dtha \\ -v /db/pgsqldata:/var/lib/postgresql/data \\ -p 5432:5432 \\ postgres \u66ff\u6362 **pwd** \u4e3a\u60a8\u60f3\u8981\u8bbe\u7f6e\u7684\u6570\u636e\u5e93\u5bc6\u7801,\u4e9b\u5bc6\u7801,\u9700\u8981\u7ba1\u7406\u5458\u54a8\u8be2 \u6570\u636e\u5e93\u540d\u79f0\u4e3a dtha \uff0c\u7528\u6237\u540d\u4e3a dtuser \u3002 \u6570\u636e\u5c06\u5b58\u50a8\u5728 /mnt/data/supervisor/postgresql \uff0c\u786e\u4fdd\u6570\u636e\u5728\u91cd\u542f\u540e\u4e0d\u4f1a\u4e22\u5931\u3002 \u767b\u5f55ssh,\u5e76\u67e5\u770b\u5df2\u5b89\u88c5\u7684docker\u955c\u50cf\u5982\u4e0b \u5148\u521b\u5efapgsql\u5b58\u50a8\u5377\u9700\u8981\u7684\u76ee\u5f55,\u8fd9\u4e2a\u6211\u4eec\u7edf\u4e00\u5b9a\u4e3a\u5982\u4e0b\u76ee\u5f55,\u5e76\u7ed9777\u6743\u9650 /db/pgsqldata \u5373\u5728\u6839\u76ee\u5f55\u4e0b,\u521b\u5efadb\u76ee\u5f55,\u7136\u540e\u5728db\u76ee\u5f55\u4e2d\u521b\u5efapgsqldata,\u5e76\u7ed9\u8db3\u6743\u9650 / # cd homeassistant homeassistant # ls automations.yaml configuration.yaml home-assistant.log home-assistant.log.fault home-assistant_v2.db-shm scenes.yaml secrets.yaml blueprints deps home-assistant.log.1 home-assistant_v2.db home-assistant_v2.db-wal scripts.yaml tts homeassistant # mkdir db homeassistant # sudo chmod -R 7777 ./db homeassistant # cd db db # ls db # pwd /homeassistant/db db # sudo mkdir pgsqldata db # sudo chmod -R 7777 ./pgsqldata db # ls pgsqldata db # cd pgsqldata pgsqldata # ls -l ./ total 0 pgsqldata # cd .. db # ls -l ./ total 4 drwsrwsrwt 2 root root 4096 Apr 18 16:30 pgsqldata \u63a5\u4e0b\u6765,\u62c9\u53d6\u955cpgsql\u7684\u955c\u50cf,\u5e76\u6307\u5411/mnt/data/pgsqldata,\u6b64\u5904\u8981\u6ce8\u610f\u4e0d\u662f\u6240\u6709\u7684\u76ee\u5f55\u90fd\u6709\u5199\u5165\u6743\u9650,homeAssitant\u4e2d\u5927\u90e8\u4efd\u76ee\u5f55\u90fd\u6ca1\u6709\u5199\u5165\u6743\u9650,\u8981\u6ce8\u610f\u627e\u6709\u5199\u5165\u6743\u9650\u7684\u76ee\u5f55 data # docker run -d \\ --name=postgresql \\ -e POSTGRES_USER=dtuser \\ -e POSTGRES_PASSWORD=Dtuse1r \\ -e POSTGRES_DB=dtha \\ -v /mnt/data/pgsqldata:/var/lib/postgresql/data \\ -p 5432:5432 \\ --restart unless-stopped postgres # \u6267\u884c\u5b8c\u6210\u540e,\u8fd4\u56de: 9a4721cccb0d5c63671da5cba4a6b6c13721f48ac664de03312cddaa216a2e56 \u7cfb\u7edf\u4f1a\u81ea\u52a8\u62c9\u53d6\u955c\u50cf,\u5e76\u542f\u52a8,\u6b64\u8fc7\u7a0b\u52a1\u5fc5\u4fdd\u8bc1\u79d2\u5b66\u4e0a\u7f51\u7684\u7545\u901a \u5982\u4e0b\u56fe,\u6240\u793a, \u8bf4\u660e\u76ee\u5f55\u6ca1\u6709\u6743\u9650, chown -R root:root mnt/data/pgsqldata chmod -R 7777 /mnt/data/pgsqldata \u7ed9\u591f\u76ee\u5f55\u6743\u9650\u540e,\u518d\u6b21\u8fd0\u884c,\u5b89\u88c5\u6307\u4ee4 data # docker run -d \\ --name=postgresql \\ -e POSTGRES_USER=dtuser \\ -e POSTGRES_PASSWORD=Dtuse1r \\ -e POSTGRES_DB=dtha \\ -v /mnt/data/pgsqldata:/var/lib/postgresql/data \\ -p 5432:5432 \\ --restart unless-stopped postgres # \u6267\u884c\u5b8c\u6210\u540e,\u8fd4\u56de: docker: Error response from daemon: Conflict. The container name \"/postgresql\" is already in use by container \"f5b838e28f30ff3bde9f90276b8aa4924b4f1ecec2cdbd4e38dfe27e2c988edb\". You have to remove (or rename) that container to be able to reuse that name. See 'docker run --help \u4e0a\u8ff0\u8bf4\u660epgswl\u7684\u5bb9\u5668\u5df2\u7ecf\u5b58\u5728,\u9700\u8981\u5220\u9664 docker stop postgresql docker rm postgresql \u7136\u540e,\u518d\u6b21\u6267\u884c,\u5373\u53ef\u6210\u529f data # docker run -d \\ --name=postgresql \\ -e POSTGRES_USER=dtuser \\ -e POSTGRES_PASSWORD=Dtuse1r \\ -e POSTGRES_DB=dtha \\ -v /mnt/data/pgsqldata:/var/lib/postgresql/data \\ -p 5432:5432 \\ --restart unless-stopped postgres # \u6267\u884c\u5b8c\u6210\u540e,\u8fd4\u56de: 9a4721cccb0d5c63671da5cba4a6b6c13721f48ac664de03312cddaa216a2e56 \u7528ps -a \u67e5\u8be2\u4e00\u4e0b,\u5982\u4e0b\u56fe\u6240\u793a,\u8bf4\u660edocker \u542f\u52a8\u6210\u529f, \u4e3a\u4e86\u9a8c\u8bc1\u91cd\u65b0\u542f\u52a8\u540e,pgsql\u5bb9\u5668\u662f\u5426\u542f\u52a8,\u53ef\u4ee5\u91cd\u542f\u540e,\u518d\u6b21\u67e5\u770b\u4e00\u4e0b,\u6b64\u5bb9\u5668\u662f\u5426\u8ddf\u968f\u7cfb\u7edf\u542f\u52a8\u6210\u529f. \u63a5\u4e0b\u6765,\u6211\u4eec\u53ef\u4ee5\u5728\u5c40\u57df\u7f51\u4e2d\u627e\u53f0\u673a\u5668\u6765\u505a\u4e00\u4e0b\u6570\u636e\u5e93\u8fde\u63a5\u6d4b\u8bd5 \u5982\u4e0a\u56fe,\u8bf4\u660epgsql\u5df2\u7ecf\u5b89\u88c5\u6210\u529f\u4e86,\u5e76\u80fd\u6b63\u5e38\u8bbf\u95ee.","title":"\u6b65\u9aa4"},{"location":"Usages/initConfig/initConfig/#homeassistantpgsql","text":"HomeAssistant\u9ed8\u8ba4\u7684\u6570\u636e\u5e93\u4e3asqlite,\u6211\u4eec\u9700\u8981\u628a\u5176\u6362\u6210\u6211\u4eec\u65b0\u5b89\u88c5\u7684pgsql, \u901a\u8fc7\u6211\u4eec\u5b89\u88c5\u7684\u63d2\u4ef6File editor \u6253\u5f00\u914d\u7f6e\u6587\u4ef6 /homeassistant/configruration.yaml \u589e\u52a0recorder\u4e2d\u7684\u914d\u7f6e\u5982\u4e0b \u7136\u540e,\u4fdd\u5b58\u9000\u51fa,\u91cd\u542f,\u770b\u770bha\u6709\u6ed1\u7684\u7ed9\u51fa\u9519\u8bef\u63d0\u793a,\u4e5f\u53ef\u4ee5\u901a\u8fc7,\u8fde\u63a5\u5de5\u5177\u6765\u67e5\u770b,ha\u6709\u6ca1\u6709\u5728\u6570\u636e\u5e93\u4e2d\u5efa\u8868,\u5199\u5165\u6570\u636e \u5982\u4e0a\u56fe,\u8bf4\u660e\u6570\u636e\u5df2\u529f\u529f\u6298\u5199\u5165PGSQL,\u6b64\u65f6\uff0c\u6211\u4eec\u53ef\u4ee5\u628a\u7cfb\u7edf\u9ed8\u8ba4\u7684\u6570\u636e\u5e93\u5220\u9664\u4e86 \u8fd9\u4e2a\u6587\u4ef6\u662fhomeAssistant\u9ed8\u8ba4\u7684sqlite\u6570\u636e\u5e93\u6587\u4ef6\uff0c\u53ef\u4ee5\u5220\u9664\u4e86\uff0c\u70b9\u53f3\u5219\u7684\u4e09\u4e2a\u70b9\uff0c\u5728\u5f39\u51fa\u7684\u83dc\u5355\u4e2d\uff0c\u70b9delete \u70b9\u51fbyes\u786e\u8ba4 \u7136\u540e\u91cd\u542f,\u518d\u6b21\u67e5\u770b,\u662f\u5426\u91cd\u65b0\u751f\u6210\u6b64\u6587\u4ef6, \u5982\u679c\u6ca1\u6709\u91cd\u65b0\u751f\u6210\u6b64\u6587\u4ef6 ,\u8bf4\u660e,\u7cfb\u7edf\u5df2\u7ecf\u5728\u7528pgsql\u4e86","title":"\u66f4\u6539homeAssistant\u9ed8\u8ba4\u7684\u6570\u636e\u5e93\u4e3apgSql"},{"location":"Usages/initConfig/initConfig/#hacs","text":"","title":"\u5b89\u88c5HACS"},{"location":"Usages/initConfig/initConfig/#hacs_1","text":"HACS\uff0c\u5168\u79f0 Home Assistant Community Store\uff08Home Assistant \u793e\u533a\u5546\u5e97\uff09\uff0c\u662f\u4e00\u4e2a\u7528\u4e8e Home Assistant \u7684\u7b2c\u4e09\u65b9\u6269\u5c55\u63d2\u4ef6\u7ba1\u7406\u5668\u3002\u5b83\u4e3a\u7528\u6237\u63d0\u4f9b\u4e86\u4e00\u4e2a\u65b9\u4fbf\u7684\u65b9\u5f0f\u6765\u5b89\u88c5\u548c\u7ba1\u7406\u793e\u533a\u5f00\u53d1\u7684\u81ea\u5b9a\u4e49\u96c6\u6210\u3001\u63d2\u4ef6\u3001\u4e3b\u9898\u548c\u5176\u4ed6\u6269\u5c55\u7ec4\u4ef6\u3002 \u8fd9\u4e2a\u63d2\u4ef6\u96c6\u4e2d\u4e86\u8bb8\u591a\u5927\u5c4f\u7528\u7684\u4e3b\u9898\u4e0e\u63d2\u4ef6\uff0c\u5c5e\u4e8e\u5fc5\u88c5\u63d2\u4ef6\uff0e","title":"hacs\u7b80\u4ecb"},{"location":"Usages/initConfig/initConfig/#hacs_2","text":"\u8fdb\u5165ssh\u767b \u5f55\u540e,\u8f93\u5165\u5982\u4e0b\u6307\u4ee4 wget -O - https://get.hacs.xyz | bash - \u56de\u8f66\u540e,\u7cfb\u7edf\u4f1a\u81ea\u52a8\u4e0b\u8f7dHACS\uff0c\u5e76\u653e\u5230\u6307\u5b9a\u7684\u76ee\u5f55\uff0c\u4e14\u63d0\u793a\u91cd\u542f\uff0c\u6211\u4eec\u6309\u8981\u6c42\u91cd\u542f\uff0c\u5373\u53ef\u3002","title":"\u5b89\u88c5hacs"},{"location":"Usages/initConfig/initConfig/#hacs_3","text":"\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u60a8\u9700\u8981\u5728 Home Assistant \u7684\u754c\u9762\u4e2d\u542f\u7528 HACS\uff1a \u6253\u5f00 Home Assistant UI\u3002 \u70b9\u51fb \u8bbe\u7f6e > \u8bbe\u5907\u4e0e\u670d\u52a1 > \u96c6\u6210 \u3002 \u70b9\u51fb\u53f3\u4e0b\u89d2 \u6dfb\u52a0\u96c6\u6210 \u3002 \u641c\u7d22\u5e76\u9009\u62e9 HACS \uff0c\u7136\u540e\u6309\u7167\u5c4f\u5e55\u4e0a\u7684\u63d0\u793a\u5b8c\u6210\u8bbe\u7f6e\u3002 \u70b9\u51fb\u540e,\u5728\u5f39\u51fa\u7684\u7a97\u53e3\u4e2d,\u5168\u6253\u52fe,\u70b9\u63d0\u4ea4 \u5f15\u65f6,\u5f39\u51fa\u65b0\u7684\u7a97\u53e3,\u9a8c\u8bc1github\u6388\u6743 \u70b9\u51fb\u8fd9\u4e2agithub\u94fe\u63a5,\u5e76\u8bb0\u4f4f\u4e0b\u65b9\u7684\u6388\u6743\u7801\u540e\u9762\u4f1a\u7528\u5230 \u5728\u5f39\u51fa\u7684\u9875\u9762\u4e2d,\u8f93\u5165,\u8bb0\u4f4f\u7684\u6388\u6743\u7801,\u70b9Continue \u63d0\u793a\u5177\u4f53\u7684\u6388\u6743\u5bf9\u50cf\u4e3ahacs,\u70b9\u51fbAutuorize hacs \u6388\u6743\u6210\u529f \u8fd4\u56dehacs\u540e,\u63d0\u793a\u6210\u529f,\u5e76\u663e\u793a\u5df2\u53d1\u73b0\u5982\u4e0b\u8bbe\u5907,hacs,\u9009\u62e9\u533a\u57df,\u53ef\u4ee5\u81ea\u5b9a\u4e49\u4e2a\u533a\u57df,\u7136\u540e\u70b9\u5b8c\u6210 \u770b\u5230\u5982\u4e0b\u754c\u9762hacs\u5c31\u5b89\u88c5\u597d\u4e86 \u70b9\u51fb\u914d\u7f6e,\u542f\u7528App Daemon apps discovery & tgracking. \u4ee5\u4e0a\u914d\u7f6e \u5b8c\u6210\u540e,\u91cd\u65b0\u542f\u52a8HA\uff0c\u5219\u53ef\u4ee5\u5728\u5de6\u4fa7\u680f\u4e2d\u627e\u5230HACS\u83dc\u5355\u4e86","title":"\u542f\u7528HACS"},{"location":"Usages/initConfig/initConfig/#homeassistantlogo","text":"homeAssistant \u5de6\u4e0a\u89d2\u9ed8\u8ba4\u7684\u6807\u9898\u4e3a Home Assistant \u6211\u4eec\u5e0c\u671b\u6539\u6210\u81ea\u5df2\u7684\u6807\u8bc6\u5982:\u5cb1\u7279\u667a\u80fd","title":"\u66f4\u6539HomeAssistant\u5de6\u4e0a\u89d2LOGO\u6807\u9898"},{"location":"Usages/initConfig/initConfig/#hass-faviconreleases","text":"\u70b9\u51fb\u94fe\u63a5 ,\u5230\u5176github\u7684\u5b98\u65b9\u9875\u9762 \u4e0b\u8f7d\u5176\u6e90\u7801","title":"\u4e0b\u8f7d\u7b2c\u4e09\u65b9\u63d2\u4ef6hass-favicon\u7684Releases\u5230\u672c\u5730\u76ee\u5f55"},{"location":"Usages/initConfig/initConfig/#_4","text":"","title":"\u89e3\u538b\u4e0b\u8f7d\u7684\u6e90\u7801"},{"location":"Usages/initConfig/initConfig/#ha","text":"\u6253\u5f00\u6e90\u7801\u76ee\u5f55,\u8fdb\u5165custom_commponents\u76ee\u5f55,\u628afavicon\u76ee\u5f55\u6574\u4f53\u590d\u5236 \u7136\u540e,\u8fdb\u5165ha\u7684config-custom_compoents\u76ee\u5f55\u7c98\u8d34,\u590d\u5236\u5230\u7684favicon \u7136\u540e\u521b\u5efa\u76ee\u5f55 \\\\ha-o[\\config\\www\\favicons \u5e76\u628a\u80dc\u900f\u7684logo\u6587\u4ef6st-logo.,png\u653e\u5230\u76ee\u5f55\u4e2d \u7136\u540e\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u589e\u52a0\u5982\u4e0b\u5185\u5bb9 \u7136\u540e,\u91cd\u542fHomeAssistant\u5373\u53ef \u91cd\u542f\u540e,\u5de6\u4e0a\u811a\u7684LOGO\uff0c\u5df2\u53d8\u4e3a\u5cb1\u7279\u667a\u80fd.","title":"\u5c06\u63d2\u4ef6\u590d\u5236\u5230ha\u4e0a"},{"location":"Usages/initConfig/initConfig/#_5","text":"\u7c73\u5bb6\u96c6\u6210\u662f\u4e00\u4e2a\u7531\u5c0f\u7c73\u5b98\u65b9\u63d0\u4f9b\u652f\u6301\u7684 Home Assistant \u7684\u96c6\u6210\u7ec4\u4ef6\uff0c\u5b83\u53ef\u4ee5\u8ba9\u60a8\u5728 Home Assistant \u4e2d\u4f7f\u7528\u5c0f\u7c73 IoT \u667a\u80fd\u8bbe\u5907\u3002 \u8fd9\u4e2a\u63d2\u4ef6,\u53ef\u4ee5\u76f4\u63a5\u628a\u6240\u6709\u5c0f\u7c73\u7684\u5404\u79cd\u4f20\u611f\u5668\u96c6\u6210\u5230HomeAssistant\u4e2d,\u6240\u4ee5\u8fd9\u4e2a\u662f\u5fc5\u88c5\u63d2\u4ef6. \u5176\u5b98\u65b9\u4ed3\u5e93\u5730\u5740\u4e3a: Xiaomi Home Integration for Home Assistant https://github.com/XiaoMi/ha_xiaomi_home \u5176\u5b89\u88c5\u65b9\u6cd5\u6709\u4e09\u79cd,\u6211\u4eec\u4e3a\u4e86\u65b9\u4fbf\u9009\u62e9\u7b2c\u4e00\u79cd,\u5176\u5b83\u4e24\u79cd\u65b9\u6cd5,\u53ef\u4ee5\u81ea\u884c\u5c1d\u8bd5.\u5b98\u65b9\u63cf\u8ff0\u7684\u65b9\u88c5\u4e3b\u5f0f\u5982\u4e0b: cd config git clone https://github.com/XiaoMi/ha_xiaomi_home.git cd ha_xiaomi_home ./install.sh /config \u5176\u4e5f\u63d0\u4f9b \u4e2d\u6587\u7684\u5b89\u88c5\u8bf4\u660e","title":"\u5b89\u88c5\u7c73\u5bb6\u96c6\u6210\u63d2\u4ef6"},{"location":"Usages/initConfig/initConfig/#_6","text":"\u9996\u5148,\u767b\u5f55SSH.\u7136\u540e\u8fdb\u5165config\u76ee\u5f55 \u5148\u62c9\u53d6\u4ee3\u7801 config # git clone https://github.com/XiaoMi/ha_xiaomi_home.git Cloning into 'ha_xiaomi_home'... remote: Enumerating objects: 1322, done. remote: Counting objects: 100% (761/761), done. remote: Compressing objects: 100% (342/342), done. remote: Total 1322 (delta 628), reused 419 (delta 419), pack-reused 561 (from 2) Receiving objects: 100% (1322/1322), 847.87 KiB | 1.64 MiB/s, done. Resolving deltas: 100% (817/817), done. \u7136\u540e,\u518d\u5207\u6362\u5230ha_xiaomi_home\u76ee\u5f55 cd ha_xiaomi_home \u7136\u540e\u6267\u884c\u5b89\u88c5\u6307\u4ee4 ./install.sh /config # Xiaomi Home installation is completed. Please restart Home Assistant. \u5b89\u88c5\u5b8c\u6210,\u63d0\u793a\u9700\u8981\u91cd\u542f.","title":"\u5b89\u88c5"},{"location":"Usages/initConfig/initConfig/#_7","text":"\u5728\u91cd\u65b0\u542f\u52a8\u540e,\u5728\u8bbe\u7f6e-\u8bbe\u5907\u4e0e\u670d\u52a1-\u6dfb\u52a0\u96c6\u6210\u4e2d,\u641c\u7d22\u201c Xiaomi Home \u201d \u70b9\u51fb,\u4f1a\u63d0\u793a\u98ce\u9669\u63d0\u793a \u52fe\u9009,\u6211\u77e5\u6089,\u70b9\u51fb\u4e0b\u4e00\u6b65,\u4f1a\u8fdb\u5165\u57fa\u7840\u914d\u7f6e\u9875\u9762,\u5982\u4e0b\u56fe \u52fe\u9009\u96c6\u6210\u7f51\u7edc\u914d\u7f6e,\u540c\u86d9,\u6ce8\u610f\u4e00\u4e0b,\u8ba4\u8bc1\u8df3\u8f6c\u5730\u5740,\u6b64\u5904\u663e\u6b3e\u4e3ahttp://homeassistant.lcaol:8123,\u8fd9\u4e2a\u5730\u5740,\u4f30\u8ba1\u4e0d\u53ef\u80fd\u901a\u8fc7,\u53ea\u56e0\u4e3a\u6211\u4eec\u662f\u5728\u5c40\u57df\u7f51\u5176\u5b83\u673a\u5668\u64cd\u4f5c\u8fd9\u4e00\u6b65\u7684,\u5b9e\u9645\u4e0a\u6211\u4eec\u7684\u5730\u5740,\u5e94\u662f\u5730\u5740\u680f\u4e2d\u6298\u5b9e\u9645\u5730\u5740,\u5982\u4e0a\u56fe,\u6211\u4eec\u7684\u8ba4\u8bc1\u5730\u5740\u662f:http://192.168.3.2:8123, \u5728\u4e0b\u4e00\u6b65\u8df3\u8f6c\u8f6c\u5c0f\u7c73\u540e,\u6253\u5f00\u7684\u7f51\u5740\u65f6,\u4e0d\u51fa\u610f\u5916\u7684\u8bdd\u4f30\u8ba1\u662f\u6253\u4e0d\u5f00\u7684,\u9700\u8981\u628a\u90a3\u4e2a\u5730\u5740\u7684\u524d\u534a\u6bb5,\u6362\u6210\u8fd9\u4e2a\u5b9e\u9645\u5730\u5740. \u70b9\u51fb\u4e0b\u4e00\u6b65, \u6b64\u5904\u4e3a\u68c0\u6d4b\u7f51\u7edc,\u7f51\u7edc\u68c0\u6d4b\u901a\u8fc7\u65f6,\u624d\u80fd\u8fdb\u884c\u4e0b\u4e00\u6b65 \u5f53\u5f39\u51fa\u5982\u4e0b\u754c\u9762\u65f6,\u8bf4\u660e\u7f51\u7edc\u68c0\u6d4b\u901a\u8fc7\u4e86, \u70b9\u51fb,\"\u8bf7\u70b9\u6b64\u5904\u8fdb\u884c\u767b\u5f55\", \u6b64\u65f6,\u8df3\u8f6c\u5230\u5c0f\u7c73\u6298\u8ba4\u8bc1\u7f51\u9875,\u6b64\u65f6\u8f93\u5165\u6b63\u786e\u7c73\u5bb6\u5e10\u53f7\u4e0e\u5bc6\u7801,\u70b9\u767b\u5f55 \u5f39\u51fa \u53cb\u60c5\u63d0\u793a,\u70b9\u51fb,\u540c\u610f\u5e76\u7ee7\u7eed \u5c0f\u7c73\u7684\u5b89\u5168\u9a8c\u8bc1,\u70b9\u4e0b\u4e00\u6b65, \u70b9\u51fb \u53d1\u9001\u9a8c\u8bc1\u7801 \u8f93\u5165\u9a8c\u8bc1\u7801\u540e,\u70b9\u786e\u5b9a \u8df3\u8f6c\u5230\u4e86\u8ba4\u8bc1\u7a97\u53e3,\u4f46\u662f\u5374\u662f\u65e0\u65b9\u8bbf\u95ee\u6b64\u9875\u9762,\u8bf4\u660e\u8ba4\u8bc1\u5730\u5740,\u9519\u4e86,\u6211\u4eec\u9700\u8981\u628a\u5b83\u6362\u6210\u6211\u4eec\u6b63\u786e\u7684HA\u5730\u5740\uff1ahttp://192.168.3.2:8123,\u5982\u4e0b\u56fe\u6240\u793a \u624b\u5de5\u5c06\u6b63\u786e\u7684\u5730\u5740\u66ff\u6362\u5730\u5740\u5934\u90e8\u540e,\u56de\u8f66,\u6253\u5f00\u8fd9\u4e2a\u5730\u5740,\u7c7b\u4f3c\u5982\u4e0b\u683c\u5f0f: http://192.168.3.2:8123/api/webhook/3062281226000218850?code=C3_B7440E147BCCA71A76831877D510611F&state=d90a727abad348efee834884dae174b80a15de14 \u5982\u679c,\u7528\u4e0a\u8ff0\u65b9\u5f0f,\u4ecd\u7136\u4e0d\u80fd\u8bbf\u95ee,\u5219\u53ef\u7528\u5982\u4e0b\u65b9\u6cd5,\u66f4\u6539host\u6587\u4ef6,\u5f3a\u884c\u6307\u5b9a\u672c\u5730DNS,\u6307\u5411homeassistant.local,\u65b9\u6cd5\u5982\u4e0b: \u4fee\u6539 Windows hosts \u6587\u4ef6\u7684\u65b9\u6cd5 \u4f7f\u7528\u7ba1\u7406\u5458\u8eab\u4efd\u7528\u8bb0\u4e8b\u672c\u6253\u5f00\u5982\u4e0b\u6587\u4ef6 :C:\\Windows\\System32\\drivers\\etc\\hosts \u5728\u6700\u540e\u4e00\u884c\u589e\u52a0 192.168.3.2 homeassistant.local \u5982\u4e0b\u56fe \u7136\u540e,\u518d\u91cd\u65b0\u8bd5\u8fc7\u4e00\u6b21 \u4e0d\u51fa\u610f\u5916\u7684\u8bdd,\u5c31\u4f1a\u81ea\u52a8\u8ba4\u8bc1\u901a\u8fc7 \u53ef\u4ee5\u6839\u636e\u63d0\u793a\u81ea\u52a8\u9009 \u5219\u623f\u95f4\u540c\u6b65\u6a21\u5f0f,\u8fd9\u4e2a\u8981\u6839\u636e\u5177\u4f53\u60c5\u51b5\u9009\u62e9,\u70b9\u51fb\u4e0b\u4e00\u6b65,\u5c06\u63d0\u793a\u63d2\u4ef6\u96c6\u6210\u6210\u529f.\u5982\u4e0b\u793a\u610f\u56fe \u770b\u5230\u5982\u4e0b\u56fe,\u5c31\u8bf4\u660e\u96c6\u6210\u5b8c\u6210\u4e86 \u4e0d\u51fa\u610f\u5916\u7684\u8bdd\u6982\u89c8\u4e2d,\u5c31\u5df2\u7ecf\u81ea\u52a8\u589e\u52a0\u4e86\u8bb8\u591a\u8bbe\u5907.","title":"\u914d\u7f6e"},{"location":"Usages/initConfig/initConfig/#webrtc-camera","text":"WebRTC camera\u63d2\u4ef6\u4ee5\u5b9e\u73b0\u9891\u6d41\u64ad\u653e.\u5982\u679cha\u8981\u63a5\u5165\u89c6\u9891\u76d1\u63a7,\u5219\u9700\u8981\u5b89\u88c5\u8fd9\u4e2a\u7ec4\u4ef6, \u4ed3\u5e93\u5730\u5740 : https://github.com/AlexxIT/WebRTC \u8fd9\u4e2a\u63d2\u4ef6\u4e5f\u6709\u591a\u79cd\u5b89\u88c5\u65b9\u6cd5,hacs\u5b89\u88c5,\u76f4\u63a5\u590d\u5236\u7b49\u65b9\u6cd5,\u56e0\u4e3a\u4e0a\u6587,\u6211\u4eec\u5df2\u7ecf\u5b89\u88c5\u8fc7\u4e86HACS\u63d2\u4ef6\uff0c\u6240\u4ee5\u6211\u4eec\u9009\u62e9\u4f7f\u7528HACS\u65b9\u5f0f\u5b89\u88c5\u3002 \u70b9\u51fb\u540e\uff0c\u5f39\u51fa\u5982\u4e0b\u9875\u9762 \u70b9\u51fbDownLoad\u6309\u94ae \u70b9\u51fbDownLoad \u5f53\u7136,\u6211\u4eec\u4e5f\u53ef\u4ee5\u9009\u62e9\u4e0d\u540c\u6298\u7248\u672c \u5f53\u5f39\u51fa\u7a97\u53e3\u81ea\u52a8\u6d88\u5931,\u70b9\u51fb\u4e0a\u65b9\u7684\u8fd4\u56de( \u6ce8\u610f:\u4e0d\u4f1a\u81ea\u52a8\u8fd4\u56de,\u987b\u4eba\u5de5\u8fd4\u56de ),\u8fd4\u56de\u5982\u4e0b\u56fe \u770b\u5230\u4e0a\u65b9\u7684\u7b49\u5f85\u91cd\u542f,\u8bf4\u660e\u7ec4\u4ef6\u5df2\u7ecf\u5b89\u88c5\u4e0a,\u9700\u8981\u91cd\u542f,\u6211\u4eec\u6267\u884c\u91cd\u542f. \u91cd\u542f\u5b8c\u6210\u540e,\u4f1a\u770b\u5230,Downloaded\u4e2d\u5df2\u7ecf\u663e\u793a,\u4e86\u5b89\u88c5\u6210\u529f\u6298WebRTC Camera\u7ec4\u4ef6. \u7136\u540e,\u8fdb\u5165\u8bbe\u7f6e-\u8bbe\u5907\u4e0e\u670d\u52a1-\u6dfb\u52a0\u96c6\u6210,\u641c\u7d22WebRTC \u70b9\u51fbWebRtc Camera \u5f39\u51fago2rtc url\u5730\u5740\u7a97\u53e3,\u6b64\u63d2\u4ef6,\u6211\u4eec\u4e4b\u524d\u5df2\u88c5\u8fc7,\u5c31\u5728\u672c\u673a,\u6240\u5730\u5740\u4e0d\u7528\u6539,\u76f4\u63a5\u70b9\u63d0\u4ea4 \u70b9\u5b8c\u6210.WebRTC\u5b89\u88c5\u6210\u529f.\u5982\u4e0b\u56fe\u6240\u793a \u4e3a\u4e86\u6f14\u793a\u5982\u4f55\u663e\u793a\u76d1\u63a7\u89c6\u9891,\u6211\u4eec\u65b0\u589e\u52a0\u4e00\u4e2asample\u7684\u4eea\u8868\u76d8. \u70b9\u51fb,\u6dfb\u52a0\u4eea\u8868\u76d8 \u5728\u5f39\u51fa\u6298\u5bf9\u8bdd\u6846\u4e2d,\u8f93\u5165\u4eea\u8868\u76d8\u6807\u9898 \u8fd9\u6837\u6211\u6837\u5c31\u589e\u52a0\u4e86\u4e00\u4e2a\u4eea\u8868\u76d8dashboard-sampale,\u6211\u4eec\u53ef\u4ee5\u5728\u8fd9\u4e2a\u4eea\u8868\u76d8\u4e2d\u589e\u52a0\u6f14\u793a\u7528\u7684\u7ec4\u4ef6,\u6b64\u5904,\u6211\u4eec\u60f3\u589e\u52a0\u4e00\u4e2a\u6f14\u793a\u7528\u7684\u76d1\u63a7\u6444\u50cf\u5934.\u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u7f16\u8f91\u6309\u94ae. \u70b9\u51fb\u521b\u5efa\u4e00\u4e2a\u7ec4\u4ef6 \u7136\u540e,\u65b0\u5efa\u5361\u7247,\u9009\u62e9\u81ea\u5b9a\u4e49WebRTC\u5361\u7247,\u5982\u679c\u6ca1\u6709\u8fd9\u4e2a\u7ec4\u4ef6,\u5219\u9700\u8981\u5237\u65b0\u51e0\u6b21,\u5c31\u80fd\u770b\u5230\u8fd9\u4e2a\u7ec4\u4ef6. \u6211\u6837\u5728\u5361\u7247\u8bbe\u7f6e\u4e2d\u8f93\u5165url\u7684\u89c6\u9891\u6d41\u5730\u5740 type: custom:webrtc-camera url: \"rtsp://admin:Camera_data2018@192.168.50.131:554/stream2\"","title":"\u5b89\u88c5WebRTC Camera"},{"location":"Usages/initConfig/initConfig/#motioneye","text":"motionEye \u662f\u4e00\u4e2a\u6d41\u884c\u7684\u6444\u50cf\u5934\u8f6f\u4ef6\uff08\u79f0\u4e3a motion\uff09\u7684\u524d\u7aef\u3002\u672c\u63d2\u4ef6\u540c\u65f6\u63d0\u4f9b\u4e86\u524d\u7aef\u548c\u6444\u50cf\u5934\u8f6f\u4ef6\uff0c\u8ba9\u60a8\u53ef\u4ee5\u5c06\u6444\u50cf\u5934\u6dfb\u52a0\u5230 Hass.io \uff08Home Assistant\uff09\u7cfb\u7edf\u4e2d\u3002 motionEye \u662f\u4e00\u4e2a\u5f00\u6e90\u7684\u95ed\u8def\u7535\u89c6\uff08CCTV\uff09\u548c\u7f51\u7edc\u89c6\u9891\u5f55\u50cf\u673a\uff08NVR\uff09\uff0c\u5b83\u8bbe\u8ba1\u4f18\u96c5\u4e14\u975e\u5e38\u6613\u4e8e\u4f7f\u7528\u3002\u5b83\u53ef\u4ee5\u7528\u4f5c\u5a74\u513f\u76d1\u89c6\u5668\u3001\u5efa\u7b51\u5de5\u5730\u76d1\u63a7\u3001\u5546\u5e97\u6444\u50cf\u5934\u5f55\u50cf\u673a\u3001\u82b1\u56ed\u5b89\u9632\u7b49\u3002","title":"\u5b89\u88c5motionEye"},{"location":"Usages/initConfig/initConfig/#motioneye_1","text":"\u652f\u6301\u5927\u91cf\u6444\u50cf\u5934\uff0c\u5305\u62ec IP \u6444\u50cf\u5934\u3002 \u53ef\u4ee5\u901a\u8fc7\u5c06\u591a\u4e2a motionEye \u5b9e\u4f8b\u8fde\u63a5\u5728\u4e00\u8d77\u6dfb\u52a0\u591a\u4e2a\u6444\u50cf\u5934\u3002\u4f8b\u5982\uff0c\u53ef\u4ee5\u5728\u7f51\u7edc\u4e2d\u4f7f\u7528\u8fd0\u884c MotionEyeOS \u7684 Pi Zero \u548c Pi \u6444\u50cf\u5934\u3002 \u652f\u6301\u5c06\u5f55\u50cf\u4e0a\u4f20\u5230 Google Drive \u548c Dropbox\u3002 \u652f\u6301\u8fd0\u52a8\u68c0\u6d4b\uff0c\u5305\u62ec\u90ae\u4ef6\u901a\u77e5\u548c\u8ba1\u5212\u4efb\u52a1\u3002 \u53ef\u4ee5\u8fde\u7eed\u5f55\u50cf\u3001\u8fd0\u52a8\u5f55\u50cf\u6216\u5ef6\u65f6\u5f55\u50cf\uff0c\u5e76\u652f\u6301\u4fdd\u7559\u8bbe\u7f6e\u3002 \u652f\u6301\u914d\u7f6e\u4e2d\u7684\u201c\u64cd\u4f5c\u6309\u94ae\u201d\u3002","title":"motionEye \u7684\u4e00\u4e9b\u7279\u70b9\uff1a"},{"location":"Usages/initConfig/initConfig/#_8","text":"\u5728\u8bbe\u7f6e-\u52a0\u8f7d\u9879\u4e2d,\u641c\u7d22\"motionEye\", \u70b9\u51fb\u67e5\u770b\u8be6\u60c5\u9875,\u5e76\u5b89\u88c5 motioneye\u9ed8\u8ba4\u7684\u7528\u6237\u540d\u4e3aadmin,\u5bc6\u7801\u4e3a\u7a7a.","title":"\u5b89\u88c5\u65b9\u6cd5"},{"location":"Usages/initConfig/installHacs/","text":"","title":"installHacs"},{"location":"Usages/netconfig/netconfig/","text":"\u914d\u7f6e\u7f51\u7edc \u00b6 \u516c\u53f8\u4f7f\u7528\u7684X86\u5c0f\u5de5\u63a7\u673a,\u5927\u591a\u6709\u591a\u4e2a\u7f51\u5361,\u4e00\u822c\u4e00\u4e2a\u65e0\u7ebf\u7f51\u5361,\u4e24\u4e2a\u6709\u7ebf\u7f51\u5361.\u591a\u6570\u60c5\u51b5\u4e0b,\u6211\u4eec\u53ef\u80fd\u662f\u4f7f\u7528\u7684WIFI\u7f51\u7edc\uff0c\u8fd9\u6837\u6bd4\u8f83\u65b9\u4fbf\uff0c\u6709\u65f6\u4e3a\u4e86HA\u63d0\u4f9b\u7684\u670d\u52a1\u6298\u7a33\u5b9a\u6027\uff0c\u6211\u4eec\u5c3d\u91cf\u4f7f\u7528LAN\u7ebf\u7f51\u7edc\uff0c\u907f\u514d\u65e0\u7ebf\u7f51\u4fe1\u53f7\u8d28\u91cf\u7684\u95ee\u9898\u3002\u6240\u4ee5\u5c31\u6d89\u53ca\u5230\u914d\u7f51\u7684\u95ee\u9898\u3002 HomeAssistant\u7684\u7f51\u7edc\u914d\u7f6e,\u5728\u7cfb\u7edf\u6ca1\u6709\u5b89\u88c5\u6210\u529f\u4e4b\u524d,\u4e0d\u80fd\u901a\u8fc7web\u8fdb\u5165\u7f51\u9875\u754c\u9762\u65f6,\u914d\u7f6e\u7f51\u7edc\u53ea\u80fd\u901a\u8fc7\u81ea\u5e26\u7f51\u7edc\u914d\u7f6e\u547d\u4ee4\u6765\u8fdb\u884c. \u719f\u6089\u7f51\u7edc\u914d\u7f6e\u547d\u4ee4 \u00b6 HomeAssistant Cli \u63d0\u4f9b\u4e86\u9ed8\u4fe1\u6298network\u914d\u7f6e\u547d\u4ee4\u5982\u4e0b: ha netWork Useage: ha network [command] Examples: ha network info ha network interface options Available Commands: info Shows information about the host network reload Reload Network information the host scan Scan for Access Points on a wireless interface. update Update settings of a network interface vlan Create a new VLAN on an ethernet interface Flags: -h, --help help for network Global Flags: --api-token string Home Assistant Supervisor API token --config string Optional config file (default is $HOME/.homeassistant.yaml) --endpoint string Endpoint for Home Assistant Supervisor (default is'supervisor') --log-level string Log level (defaults to Warn) --no-progress Disable the progress spinner --raw-json Output raw JSON from the API Use \"ha network [command] --help\" for more information about a command. \u8fd9\u4e2aha network\u547d\u4ee4,\u5927\u7ea6\u5982\u4e0b\u51e0\u4e2a\u529f\u80fd info \u663e\u793a\u7f51\u7edc\u914d\u7f6e\u4fe1\u606f reload \u91cd\u65b0\u52a0\u8f7d\u7f51\u7edc scan \u626b\u63cf\u7f51\u7edc update \u914d\u7f6e\u7f51\u7edc \u6211\u4eec\u5728\u4f7f\u7528\u8fd9\u4e2a\u547d\u4ee4\u65f6,\u53ef\u4ee5\u4f7f\u7528\u5176\u7b80\u5199,\u6bd4\u5982\u7701\u53bb\u524d\u9762\u7684ha,\u8fd8\u53ef\u4ee5\u7701\u53bb\u540e\u9762\u7684work \u6bd4\u5982,\u6211\u4eec\u60f3\u67e5\u770b\u7f51\u7edc\u914d\u7f6e\u4fe1\u606f,\u53ef\u4ee5\u7528\u5982\u4e0b\u547d\u4ee4\u6765\u8fdb\u884c net info \u8fd9\u6761\u547d\u4ee4\u5c31\u4f1a\u628a\u6240\u6709\u7684\u7f51\u7edc\u914d\u7f6e\u4fe1\u606f\u5168\u90e8\u663e\u793a\u51fa\u6765,\u53ea\u662f\u5982\u679c\u7f51\u5361\u8f83\u591a,\u6211\u4eec\u6ca1\u6709\u6cd5\u5728\u4e00\u5c4f\u5168\u90e8\u9605\u8bfb\u5b8c,\u6240\u4ee5\u8fd9\u5c31\u5f15\u53d1\u53e6\u4e00\u4e2a\u95ee\u9898.netwrok\u6240\u6709\u7684\u5b50\u547d\u4ee4,\u540e\u9762\u90fd\u662f\u53ef\u4ee5\u6216\u5fc5\u987b\u8ddf\u7740\u64cd\u4f5c\u5bf9\u50cf\u6765\u8fdb\u884c\u7684,\u5177\u4f53\u7684\u5c31\u662f,\u64cd\u4f5c\u6216\u663e\u793a\u54ea\u4e2a\u7f51\u5361\u63a5\u53e3.\u4e00\u822c\u60c5\u51b5\u4e0b\u662f\u5982\u4e0b\u578b\u5f0f net [command] [interface] \u5373 net [\u5b50\u547d\u4ee4] [\u7f51\u5361\u540d\u79f0] \u90a3\u4e48\u5982\u4f55\u67e5\u770b\u7f51\u5361\u540d\u79f0\u5462,\u5728haos \u7684cli\u63a7\u5236\u53f0\u754c\u9762,\u4efb\u610f\u65f6\u95f4,\u540c\u65f6\u6309\u4e0b ctrl+c \u540e,ha\u7684\u754c\u9762\u8fd4\u56de\u5230\u5f85\u673a\u754c\u9762,\u5982\u4e0b\u56fe\u6240\u793a. \u56fe\u4e2d\u5171\u663e\u793a\u4e86\u4e09\u4e2a\u7f51\u5361\u63a5\u53e3: wlp3s0 \u8fd9\u4e2a\u662f\u65e0\u7ebf\u7f51\u5361\u63a5\u53e3\u7684\u540d\u79f0,\u4e00\u822c\u60c5\u51b5\u4e0bw\u5b57\u7b26\u6253\u5934\u7684\u6211\u4e3a\u65e0\u7ebf\u7f51\u5361 enp2s0 \u8fd9\u4e2a\u5bf9\u5e94\u5c0f\u4e3b\u673a\u4e0a\u5c31\u662fLNA1,\u6709\u7ebf\u7f51\u53611\u7684\u540d\u79f0 enp4s0 \u8fd9\u4e2a\u5bf9\u5e94\u5c0f\u4e3b\u673a\u4e0a\u5c31\u662fLNA2,\u6709\u7ebf\u7f51\u53611\u7684\u540d\u79f0 \u67e5\u770b\u5230\u4e86\u8fd9\u4e09\u4e2a\u7f51\u5361\u540d\u79f0,\u6211\u4eec\u5c31\u53ef\u4ee5\u5bf9\u7f51\u5361\u8fdb\u884c\u67e5\u770b\u4fe1\u606f\u914d\u7f6e\u7b49. \u5bf9\u6709\u521d\u88c5\u7684HAOS\u8fd8\u6709\u51c6\u5907\u8fdb\u884cUdate\u7684\u5c0f\u4e3b\u673a,\u6700\u597d,\u5c31\u662f\u5728\u8def\u7531\u5668\u7aef \u9ed8\u8ba4\u63d0\u4f9b\u79d1\u5b66\u4e0a\u7f51 ,\u5426\u5219\u5728\u65b0\u5b89\u88c5\u6298\u521d\u59cb\u5316\u90a3\u91cc\u5c31\u4f1a\u88ab\u6c38\u8fdc\u5361\u4f4f,\u65e0\u6cd5\u5b89\u88c5\u6210\u529f,\u5982\u679c\u662f\u81ea\u52a8\u66f4\u65b0,\u90a3\u4e48\u5c06\u4f1a\u66f4\u65b0\u5931\u8d25. \u914d\u7f6e\u7f51\u7edc \u00b6 \u4e00\u822c\u60c5\u51b5\u4e0b,\u5bf9\u4e8eenp2s0,enp4s0,\u5982\u679c\u8def\u7531\u5668\u7aef\u63d0\u4f9b\u4e86\u81ea\u52a8\u83b7\u53d6IP\u5730\u5740\u529f\u80fd\uff0c\u5219\u65e0\u9700\u914d\u7f6e\uff0c\u7f51\u7ebf\u63d2\u5165\u5373\u53ef\u4f7f\u7528\u3002 \u4f46\u662f\u5bf9\u4e8e\u6bd4\u8f83\u590d\u6742\u7684\u7f51\u7edc\u5219\u9700\u8981\u914d\u7f6e\uff0c\u540c\u6837\uff0c\u5982\u679c\u60f3\u4f7f\u7528wifi\u7f51\u7edc,\u4e5f\u9700\u8981\u914d\u7f6e . \u914d\u7f6e\u7f51\u7edc\u7684\u547d\u4ee4\u5982\u4e0b: ha > net update Usage: ha network update [interface] [flags] Aliases: update, set, up Examples: ha network update eth0 --ipv4-method auto --ipv6-method disabled Flags: -e, --disabled Disable interface -h, --help help for update --ipv4-address stringArray IPv4 address for the interface in the 192.168.1.5/24 --ipv4-gateway string The IPv4 gateway the interface should use --ipv4-method string Method on IPv4: static|auto|disabled --ipv4-nameserver stringArray IPv4 address of upstream DNS servers. Use multiple times for multiple servers. --ipv6-address stringArray IPv6 address for the interface in the 2001:0db8:85a3:0000:0000:8a2e:0370:7334/64 --ipv6-gateway string The IPv6 gateway the interface should use --ipv6-method string Method on IPv6: static|auto|disabled --ipv6-nameserver stringArray IPv6 address for upstream DNS servers. Use multiple times for multiple servers. --wifi-auth string Used authentication: open, wep, wpa-psk --wifi-mode string Wifi mode: infrastructure, adhoc, mesh or ap --wifi-psk string Shared authentication key for wep or wpa --wifi-ssid string SSID for wifi connection Global Flags: --api-token string Home Assistant Supervisor API token --config string Optional config file (default is $HOME/.homeassistant.yaml) --endpoint string Endpoint for Home Assistant Supervisor (default is `supervisor`) --log-level string Log level (defaults to Warn) --no-progress Disable the progress spinner --raw-json Output raw JSON from the API \u8fd9\u6761\u547d\u4ee4ha network update [interface] [flags],\u63d0\u4f9b\u4e86\u5f88\u591a\u529f\u80fd,\u5b83\u53ef\u4ee5\u914d\u7f6ewif\u7f51\u7edc,\u53ef\u4ee5\u5bf9\u6307\u5b9a\u7684\u7f51\u5361\u914d\u7f6eip4/6\u7684IP\u5730\u5740\uff0c\u7f51\u5173\uff0c\u662f\u5426\u542f\u7528\u7b49.\u56e0\u6b64\u53ef\u4ee5\u5728\u5b9e\u9645\u5de5\u4f5c\u4e2d\u7075\u6d3b\u4f7f\u7528. \u5177\u4f53\u7528\u6cd5\u7b80\u8bd1\u5982\u4e0b ha > net update Usage: ha network update [interface] [flags] Aliases: update, set, up Examples: ha network update eth0 --ipv4-method auto --ipv6-method disabled Flags: -e, --disabled \u7981\u7528\u63a5\u53e3 -h, --help \u663e\u793a\u66f4\u65b0\u7684\u5e2e\u52a9\u4fe1\u606f --ipv4-address stringArray \u63a5\u53e3\u7684 IPv4 \u5730\u5740\uff0c\u4f8b\u5982 192.168.1.5/24 --ipv4-gateway string \u63a5\u53e3\u4f7f\u7528\u7684 IPv4 \u7f51\u5173 --ipv4-method string IPv4 \u65b9\u6cd5: static|auto|disabled --ipv4-nameserver stringArray \u4e0a\u6e38 DNS \u670d\u52a1\u5668\u7684 IPv4 \u5730\u5740\uff0c\u53ef\u591a\u6b21\u4f7f\u7528\u4ee5\u6307\u5b9a\u591a\u4e2a\u670d\u52a1\u5668 --ipv6-address stringArray \u63a5\u53e3\u7684 IPv6 \u5730\u5740\uff0c\u4f8b\u5982 2001:0db8:85a3:0000:0000:8a2e:0370:7334/64 --ipv6-gateway string \u63a5\u53e3\u4f7f\u7528\u7684 IPv6 \u7f51\u5173 --ipv6-method string IPv6 \u65b9\u6cd5: static|auto|disabled --ipv6-nameserver stringArray \u4e0a\u6e38 DNS \u670d\u52a1\u5668\u7684 IPv6 \u5730\u5740\uff0c\u53ef\u591a\u6b21\u4f7f\u7528\u4ee5\u6307\u5b9a\u591a\u4e2a\u670d\u52a1\u5668 --wifi-auth string \u4f7f\u7528\u7684\u8ba4\u8bc1\u65b9\u5f0f: open, wep, wpa-psk --wifi-mode string WiFi \u6a21\u5f0f: infrastructure, adhoc, mesh \u6216 ap --wifi-psk string WEP \u6216 WPA \u7684\u5171\u4eab\u8ba4\u8bc1\u5bc6\u94a5 --wifi-ssid string WiFi \u8fde\u63a5\u7684 SSID Global Flags: --api-token string Home Assistant Supervisor API \u4ee4\u724c --config string \u53ef\u9009\u7684\u914d\u7f6e\u6587\u4ef6\u8def\u5f84\uff08\u9ed8\u8ba4\u503c\u4e3a $HOME/.homeassistant.yaml\uff09 --endpoint string Home Assistant Supervisor \u7684\u7aef\u70b9\uff08\u9ed8\u8ba4\u503c\u4e3a `supervisor`\uff09 --log-level string \u65e5\u5fd7\u7ea7\u522b\uff08\u9ed8\u8ba4\u503c\u4e3a Warn\uff09 --no-progress \u7981\u7528\u8fdb\u5ea6\u6761 --raw-json \u4ee5\u539f\u59cb JSON \u683c\u5f0f\u8f93\u51fa API \u6570\u636e FATA[0000] Error while executing rootCmd: accepts 1 arg(s), received 0 \u4e0b\u9762,\u6211\u4eec\u5c31\u4ee5\u914d\u7f6ewifi\u8054\u63a5\u5230\u7f51\u7edc\u4e3a\u4f8b\u8bf4\u660e\u4e00\u4e0b: \u6bd4\u5982\u6211\u4eec\u9ed8\u8ba4\u7684WIFI\u70ed\u70b9\u5982\u4e0b: wifi info: ssid:DT_IoT_GateWay passWord:HnczjTyrb0 \u90a3\u6839\u636e\u6211\u4eec\u4e0a\u6587\u67e5\u770b\u5230\u7684\u65e0\u7ebf\u7f51\u5361\u7684\u540d\u79f0: wlp3s0 \u6211\u4eec\u4f7f\u7528\u5982\u4e0b\u914d\u7f6e\u547d\u4ee4,\u6765\u8ba9haos\u5c0f\u5de5\u63a7\u673a\u8054\u4e0awifi\u7f51\u7edc: ha network update wlp3s0 --wifi-auth wpa-psk --wifi-psk \"HmczjTYrb0\" --wifi-mode infrastructure --wifi-ssid \"DT_IoT_GateWay\" --ipv4-method auto --ipv6-method disabled \u8fd9\u6761\u547d\u4ee4\u89e3\u91ca\u5982\u4e0b: \u6307\u5b9awifi\u7684\u5bc6\u7801\u65b9\u5f0f\u4e3a:wpa-psk (--wifi-auth wpa-psk). \u6307\u5b9awif\u7684\u5bc6\u7801\u4e3a:HnczjTyrb0 (--wifi-psk \"HmczjYrb0\"). \u6307\u5b9a\u7f51\u5361\u63a5\u53e3\u6a21\u5f0f\u4e3a:infrastructure \u5373\u5e38\u89c4\u6a21\u5f0f (--wifi-mode infrastructure). \u6307\u5b9a\u8981\u8054\u63a5\u7684\u7f51\u7edcSSID:DT_IoT_GateWay (--wifi-ssid \"DT_IoT_GateWay\"). \u6307\u5b9aIP\u5730\u5740\u83b7\u53d6\u65b9\u5f0f\uff08\u9759\u6001\u3001\u81ea\u52a8\u3001\u7981\u7528\uff09\uff1a\u81ea\u52a8 ( --ipv4-method auto). \u6307\u5b9a\u662f\u5426\u7981\u7528IpV6:\u7981\u7528 (--ipv6-method disabled) \u5982\u4e0b\u56fe\u6240\u793a,\u6211\u4eec\u6210\u529f\u7684\u4f7f\u7528\u8fd9\u6761\u6307\u4ee4,\u914d\u7f6e\u597d\u4e86wifi\u7f51\u7edc: \u5982\u4e0b\u6240\u793a,\u914d\u7f51\u6210\u529f\u540e,\u8def\u7531\u5668\u5df2\u81ea\u52a8\u4e3a\u5176\u5206\u914d\u597d\u4e86ip\u5730\u5740: \u6b64\u65f6,\u6211\u4eec\u5728\u6d4f\u89c8\u5668\u4e2d\u8f93\u5165\u7f51\u5740 http://192.168.3.2:8123 \u5373\u53ef\u8fdb\u5165haos\u7684web\u9875\u9762. \u4e0b\u56fe\u662f\u65e0\u7ebf\u7f51\u5361\u4e0e\u6709\u7ebf\u7f51\u5361\u540c\u65f6\u542f\u7528\u7684\u60c5\u51b5,\u53ef\u4ee5\u770b\u5230,\u4e24\u4e2a\u7f51\u5361\u90fd\u88ab\u6b63\u786e\u7684\u5206\u914d\u5230\u4e86IP\u5730\u5740\uff1a \u5728\u7cfb\u7edf\u5b89\u88c5\u597d\u521d\u59cb\u5316\u5b8c\u6210\u540e\u914d\u7f6e\u7f51\u7edc \u00b6 \u7cfb\u7edf\u521d\u59cb\u5316\u5b8c\u6210\u540e,\u4ecd\u7136\u53ef\u4ee5\u8c03\u6574\u914d\u7f6e\u7f51\u7edc, \u8bbe\u7f6e-\u7cfb\u7edf-\u7f51\u7edc \u4e2d\u914d\u7f6e\u7f51\u7edc\u63a5\u53e3\u53ef\u4ee5\u8fdb\u884c\u7f51\u7edc\u914d\u7f6e \u5728\u8fd9\u91cc\u4f60\u53ef\u4ee5\u770b\u5230\u6211\u4eec\u7684\u4e09\u5757\u7f51\u5361,wlp3s0,enp2s0,enp4s0,\u53ef\u5728\u6b64\u5904\u914d\u7f6e,\u6bcf\u4e2a\u7f51\u5361\u7684IP\uff0c\u5b50\u7f51\uff0c\u7f51\u5173\uff0cDNS\u7b49\uff0c\u4e5f\u53ef\u4ee5\u914d\u7f6ewi-fi\u70ed\u70b9.","title":"\u914d\u7f6e\u7f51\u7edc"},{"location":"Usages/netconfig/netconfig/#_1","text":"\u516c\u53f8\u4f7f\u7528\u7684X86\u5c0f\u5de5\u63a7\u673a,\u5927\u591a\u6709\u591a\u4e2a\u7f51\u5361,\u4e00\u822c\u4e00\u4e2a\u65e0\u7ebf\u7f51\u5361,\u4e24\u4e2a\u6709\u7ebf\u7f51\u5361.\u591a\u6570\u60c5\u51b5\u4e0b,\u6211\u4eec\u53ef\u80fd\u662f\u4f7f\u7528\u7684WIFI\u7f51\u7edc\uff0c\u8fd9\u6837\u6bd4\u8f83\u65b9\u4fbf\uff0c\u6709\u65f6\u4e3a\u4e86HA\u63d0\u4f9b\u7684\u670d\u52a1\u6298\u7a33\u5b9a\u6027\uff0c\u6211\u4eec\u5c3d\u91cf\u4f7f\u7528LAN\u7ebf\u7f51\u7edc\uff0c\u907f\u514d\u65e0\u7ebf\u7f51\u4fe1\u53f7\u8d28\u91cf\u7684\u95ee\u9898\u3002\u6240\u4ee5\u5c31\u6d89\u53ca\u5230\u914d\u7f51\u7684\u95ee\u9898\u3002 HomeAssistant\u7684\u7f51\u7edc\u914d\u7f6e,\u5728\u7cfb\u7edf\u6ca1\u6709\u5b89\u88c5\u6210\u529f\u4e4b\u524d,\u4e0d\u80fd\u901a\u8fc7web\u8fdb\u5165\u7f51\u9875\u754c\u9762\u65f6,\u914d\u7f6e\u7f51\u7edc\u53ea\u80fd\u901a\u8fc7\u81ea\u5e26\u7f51\u7edc\u914d\u7f6e\u547d\u4ee4\u6765\u8fdb\u884c.","title":"\u914d\u7f6e\u7f51\u7edc"},{"location":"Usages/netconfig/netconfig/#_2","text":"HomeAssistant Cli \u63d0\u4f9b\u4e86\u9ed8\u4fe1\u6298network\u914d\u7f6e\u547d\u4ee4\u5982\u4e0b: ha netWork Useage: ha network [command] Examples: ha network info ha network interface options Available Commands: info Shows information about the host network reload Reload Network information the host scan Scan for Access Points on a wireless interface. update Update settings of a network interface vlan Create a new VLAN on an ethernet interface Flags: -h, --help help for network Global Flags: --api-token string Home Assistant Supervisor API token --config string Optional config file (default is $HOME/.homeassistant.yaml) --endpoint string Endpoint for Home Assistant Supervisor (default is'supervisor') --log-level string Log level (defaults to Warn) --no-progress Disable the progress spinner --raw-json Output raw JSON from the API Use \"ha network [command] --help\" for more information about a command. \u8fd9\u4e2aha network\u547d\u4ee4,\u5927\u7ea6\u5982\u4e0b\u51e0\u4e2a\u529f\u80fd info \u663e\u793a\u7f51\u7edc\u914d\u7f6e\u4fe1\u606f reload \u91cd\u65b0\u52a0\u8f7d\u7f51\u7edc scan \u626b\u63cf\u7f51\u7edc update \u914d\u7f6e\u7f51\u7edc \u6211\u4eec\u5728\u4f7f\u7528\u8fd9\u4e2a\u547d\u4ee4\u65f6,\u53ef\u4ee5\u4f7f\u7528\u5176\u7b80\u5199,\u6bd4\u5982\u7701\u53bb\u524d\u9762\u7684ha,\u8fd8\u53ef\u4ee5\u7701\u53bb\u540e\u9762\u7684work \u6bd4\u5982,\u6211\u4eec\u60f3\u67e5\u770b\u7f51\u7edc\u914d\u7f6e\u4fe1\u606f,\u53ef\u4ee5\u7528\u5982\u4e0b\u547d\u4ee4\u6765\u8fdb\u884c net info \u8fd9\u6761\u547d\u4ee4\u5c31\u4f1a\u628a\u6240\u6709\u7684\u7f51\u7edc\u914d\u7f6e\u4fe1\u606f\u5168\u90e8\u663e\u793a\u51fa\u6765,\u53ea\u662f\u5982\u679c\u7f51\u5361\u8f83\u591a,\u6211\u4eec\u6ca1\u6709\u6cd5\u5728\u4e00\u5c4f\u5168\u90e8\u9605\u8bfb\u5b8c,\u6240\u4ee5\u8fd9\u5c31\u5f15\u53d1\u53e6\u4e00\u4e2a\u95ee\u9898.netwrok\u6240\u6709\u7684\u5b50\u547d\u4ee4,\u540e\u9762\u90fd\u662f\u53ef\u4ee5\u6216\u5fc5\u987b\u8ddf\u7740\u64cd\u4f5c\u5bf9\u50cf\u6765\u8fdb\u884c\u7684,\u5177\u4f53\u7684\u5c31\u662f,\u64cd\u4f5c\u6216\u663e\u793a\u54ea\u4e2a\u7f51\u5361\u63a5\u53e3.\u4e00\u822c\u60c5\u51b5\u4e0b\u662f\u5982\u4e0b\u578b\u5f0f net [command] [interface] \u5373 net [\u5b50\u547d\u4ee4] [\u7f51\u5361\u540d\u79f0] \u90a3\u4e48\u5982\u4f55\u67e5\u770b\u7f51\u5361\u540d\u79f0\u5462,\u5728haos \u7684cli\u63a7\u5236\u53f0\u754c\u9762,\u4efb\u610f\u65f6\u95f4,\u540c\u65f6\u6309\u4e0b ctrl+c \u540e,ha\u7684\u754c\u9762\u8fd4\u56de\u5230\u5f85\u673a\u754c\u9762,\u5982\u4e0b\u56fe\u6240\u793a. \u56fe\u4e2d\u5171\u663e\u793a\u4e86\u4e09\u4e2a\u7f51\u5361\u63a5\u53e3: wlp3s0 \u8fd9\u4e2a\u662f\u65e0\u7ebf\u7f51\u5361\u63a5\u53e3\u7684\u540d\u79f0,\u4e00\u822c\u60c5\u51b5\u4e0bw\u5b57\u7b26\u6253\u5934\u7684\u6211\u4e3a\u65e0\u7ebf\u7f51\u5361 enp2s0 \u8fd9\u4e2a\u5bf9\u5e94\u5c0f\u4e3b\u673a\u4e0a\u5c31\u662fLNA1,\u6709\u7ebf\u7f51\u53611\u7684\u540d\u79f0 enp4s0 \u8fd9\u4e2a\u5bf9\u5e94\u5c0f\u4e3b\u673a\u4e0a\u5c31\u662fLNA2,\u6709\u7ebf\u7f51\u53611\u7684\u540d\u79f0 \u67e5\u770b\u5230\u4e86\u8fd9\u4e09\u4e2a\u7f51\u5361\u540d\u79f0,\u6211\u4eec\u5c31\u53ef\u4ee5\u5bf9\u7f51\u5361\u8fdb\u884c\u67e5\u770b\u4fe1\u606f\u914d\u7f6e\u7b49. \u5bf9\u6709\u521d\u88c5\u7684HAOS\u8fd8\u6709\u51c6\u5907\u8fdb\u884cUdate\u7684\u5c0f\u4e3b\u673a,\u6700\u597d,\u5c31\u662f\u5728\u8def\u7531\u5668\u7aef \u9ed8\u8ba4\u63d0\u4f9b\u79d1\u5b66\u4e0a\u7f51 ,\u5426\u5219\u5728\u65b0\u5b89\u88c5\u6298\u521d\u59cb\u5316\u90a3\u91cc\u5c31\u4f1a\u88ab\u6c38\u8fdc\u5361\u4f4f,\u65e0\u6cd5\u5b89\u88c5\u6210\u529f,\u5982\u679c\u662f\u81ea\u52a8\u66f4\u65b0,\u90a3\u4e48\u5c06\u4f1a\u66f4\u65b0\u5931\u8d25.","title":"\u719f\u6089\u7f51\u7edc\u914d\u7f6e\u547d\u4ee4"},{"location":"Usages/netconfig/netconfig/#_3","text":"\u4e00\u822c\u60c5\u51b5\u4e0b,\u5bf9\u4e8eenp2s0,enp4s0,\u5982\u679c\u8def\u7531\u5668\u7aef\u63d0\u4f9b\u4e86\u81ea\u52a8\u83b7\u53d6IP\u5730\u5740\u529f\u80fd\uff0c\u5219\u65e0\u9700\u914d\u7f6e\uff0c\u7f51\u7ebf\u63d2\u5165\u5373\u53ef\u4f7f\u7528\u3002 \u4f46\u662f\u5bf9\u4e8e\u6bd4\u8f83\u590d\u6742\u7684\u7f51\u7edc\u5219\u9700\u8981\u914d\u7f6e\uff0c\u540c\u6837\uff0c\u5982\u679c\u60f3\u4f7f\u7528wifi\u7f51\u7edc,\u4e5f\u9700\u8981\u914d\u7f6e . \u914d\u7f6e\u7f51\u7edc\u7684\u547d\u4ee4\u5982\u4e0b: ha > net update Usage: ha network update [interface] [flags] Aliases: update, set, up Examples: ha network update eth0 --ipv4-method auto --ipv6-method disabled Flags: -e, --disabled Disable interface -h, --help help for update --ipv4-address stringArray IPv4 address for the interface in the 192.168.1.5/24 --ipv4-gateway string The IPv4 gateway the interface should use --ipv4-method string Method on IPv4: static|auto|disabled --ipv4-nameserver stringArray IPv4 address of upstream DNS servers. Use multiple times for multiple servers. --ipv6-address stringArray IPv6 address for the interface in the 2001:0db8:85a3:0000:0000:8a2e:0370:7334/64 --ipv6-gateway string The IPv6 gateway the interface should use --ipv6-method string Method on IPv6: static|auto|disabled --ipv6-nameserver stringArray IPv6 address for upstream DNS servers. Use multiple times for multiple servers. --wifi-auth string Used authentication: open, wep, wpa-psk --wifi-mode string Wifi mode: infrastructure, adhoc, mesh or ap --wifi-psk string Shared authentication key for wep or wpa --wifi-ssid string SSID for wifi connection Global Flags: --api-token string Home Assistant Supervisor API token --config string Optional config file (default is $HOME/.homeassistant.yaml) --endpoint string Endpoint for Home Assistant Supervisor (default is `supervisor`) --log-level string Log level (defaults to Warn) --no-progress Disable the progress spinner --raw-json Output raw JSON from the API \u8fd9\u6761\u547d\u4ee4ha network update [interface] [flags],\u63d0\u4f9b\u4e86\u5f88\u591a\u529f\u80fd,\u5b83\u53ef\u4ee5\u914d\u7f6ewif\u7f51\u7edc,\u53ef\u4ee5\u5bf9\u6307\u5b9a\u7684\u7f51\u5361\u914d\u7f6eip4/6\u7684IP\u5730\u5740\uff0c\u7f51\u5173\uff0c\u662f\u5426\u542f\u7528\u7b49.\u56e0\u6b64\u53ef\u4ee5\u5728\u5b9e\u9645\u5de5\u4f5c\u4e2d\u7075\u6d3b\u4f7f\u7528. \u5177\u4f53\u7528\u6cd5\u7b80\u8bd1\u5982\u4e0b ha > net update Usage: ha network update [interface] [flags] Aliases: update, set, up Examples: ha network update eth0 --ipv4-method auto --ipv6-method disabled Flags: -e, --disabled \u7981\u7528\u63a5\u53e3 -h, --help \u663e\u793a\u66f4\u65b0\u7684\u5e2e\u52a9\u4fe1\u606f --ipv4-address stringArray \u63a5\u53e3\u7684 IPv4 \u5730\u5740\uff0c\u4f8b\u5982 192.168.1.5/24 --ipv4-gateway string \u63a5\u53e3\u4f7f\u7528\u7684 IPv4 \u7f51\u5173 --ipv4-method string IPv4 \u65b9\u6cd5: static|auto|disabled --ipv4-nameserver stringArray \u4e0a\u6e38 DNS \u670d\u52a1\u5668\u7684 IPv4 \u5730\u5740\uff0c\u53ef\u591a\u6b21\u4f7f\u7528\u4ee5\u6307\u5b9a\u591a\u4e2a\u670d\u52a1\u5668 --ipv6-address stringArray \u63a5\u53e3\u7684 IPv6 \u5730\u5740\uff0c\u4f8b\u5982 2001:0db8:85a3:0000:0000:8a2e:0370:7334/64 --ipv6-gateway string \u63a5\u53e3\u4f7f\u7528\u7684 IPv6 \u7f51\u5173 --ipv6-method string IPv6 \u65b9\u6cd5: static|auto|disabled --ipv6-nameserver stringArray \u4e0a\u6e38 DNS \u670d\u52a1\u5668\u7684 IPv6 \u5730\u5740\uff0c\u53ef\u591a\u6b21\u4f7f\u7528\u4ee5\u6307\u5b9a\u591a\u4e2a\u670d\u52a1\u5668 --wifi-auth string \u4f7f\u7528\u7684\u8ba4\u8bc1\u65b9\u5f0f: open, wep, wpa-psk --wifi-mode string WiFi \u6a21\u5f0f: infrastructure, adhoc, mesh \u6216 ap --wifi-psk string WEP \u6216 WPA \u7684\u5171\u4eab\u8ba4\u8bc1\u5bc6\u94a5 --wifi-ssid string WiFi \u8fde\u63a5\u7684 SSID Global Flags: --api-token string Home Assistant Supervisor API \u4ee4\u724c --config string \u53ef\u9009\u7684\u914d\u7f6e\u6587\u4ef6\u8def\u5f84\uff08\u9ed8\u8ba4\u503c\u4e3a $HOME/.homeassistant.yaml\uff09 --endpoint string Home Assistant Supervisor \u7684\u7aef\u70b9\uff08\u9ed8\u8ba4\u503c\u4e3a `supervisor`\uff09 --log-level string \u65e5\u5fd7\u7ea7\u522b\uff08\u9ed8\u8ba4\u503c\u4e3a Warn\uff09 --no-progress \u7981\u7528\u8fdb\u5ea6\u6761 --raw-json \u4ee5\u539f\u59cb JSON \u683c\u5f0f\u8f93\u51fa API \u6570\u636e FATA[0000] Error while executing rootCmd: accepts 1 arg(s), received 0 \u4e0b\u9762,\u6211\u4eec\u5c31\u4ee5\u914d\u7f6ewifi\u8054\u63a5\u5230\u7f51\u7edc\u4e3a\u4f8b\u8bf4\u660e\u4e00\u4e0b: \u6bd4\u5982\u6211\u4eec\u9ed8\u8ba4\u7684WIFI\u70ed\u70b9\u5982\u4e0b: wifi info: ssid:DT_IoT_GateWay passWord:HnczjTyrb0 \u90a3\u6839\u636e\u6211\u4eec\u4e0a\u6587\u67e5\u770b\u5230\u7684\u65e0\u7ebf\u7f51\u5361\u7684\u540d\u79f0: wlp3s0 \u6211\u4eec\u4f7f\u7528\u5982\u4e0b\u914d\u7f6e\u547d\u4ee4,\u6765\u8ba9haos\u5c0f\u5de5\u63a7\u673a\u8054\u4e0awifi\u7f51\u7edc: ha network update wlp3s0 --wifi-auth wpa-psk --wifi-psk \"HmczjTYrb0\" --wifi-mode infrastructure --wifi-ssid \"DT_IoT_GateWay\" --ipv4-method auto --ipv6-method disabled \u8fd9\u6761\u547d\u4ee4\u89e3\u91ca\u5982\u4e0b: \u6307\u5b9awifi\u7684\u5bc6\u7801\u65b9\u5f0f\u4e3a:wpa-psk (--wifi-auth wpa-psk). \u6307\u5b9awif\u7684\u5bc6\u7801\u4e3a:HnczjTyrb0 (--wifi-psk \"HmczjYrb0\"). \u6307\u5b9a\u7f51\u5361\u63a5\u53e3\u6a21\u5f0f\u4e3a:infrastructure \u5373\u5e38\u89c4\u6a21\u5f0f (--wifi-mode infrastructure). \u6307\u5b9a\u8981\u8054\u63a5\u7684\u7f51\u7edcSSID:DT_IoT_GateWay (--wifi-ssid \"DT_IoT_GateWay\"). \u6307\u5b9aIP\u5730\u5740\u83b7\u53d6\u65b9\u5f0f\uff08\u9759\u6001\u3001\u81ea\u52a8\u3001\u7981\u7528\uff09\uff1a\u81ea\u52a8 ( --ipv4-method auto). \u6307\u5b9a\u662f\u5426\u7981\u7528IpV6:\u7981\u7528 (--ipv6-method disabled) \u5982\u4e0b\u56fe\u6240\u793a,\u6211\u4eec\u6210\u529f\u7684\u4f7f\u7528\u8fd9\u6761\u6307\u4ee4,\u914d\u7f6e\u597d\u4e86wifi\u7f51\u7edc: \u5982\u4e0b\u6240\u793a,\u914d\u7f51\u6210\u529f\u540e,\u8def\u7531\u5668\u5df2\u81ea\u52a8\u4e3a\u5176\u5206\u914d\u597d\u4e86ip\u5730\u5740: \u6b64\u65f6,\u6211\u4eec\u5728\u6d4f\u89c8\u5668\u4e2d\u8f93\u5165\u7f51\u5740 http://192.168.3.2:8123 \u5373\u53ef\u8fdb\u5165haos\u7684web\u9875\u9762. \u4e0b\u56fe\u662f\u65e0\u7ebf\u7f51\u5361\u4e0e\u6709\u7ebf\u7f51\u5361\u540c\u65f6\u542f\u7528\u7684\u60c5\u51b5,\u53ef\u4ee5\u770b\u5230,\u4e24\u4e2a\u7f51\u5361\u90fd\u88ab\u6b63\u786e\u7684\u5206\u914d\u5230\u4e86IP\u5730\u5740\uff1a","title":"\u914d\u7f6e\u7f51\u7edc"},{"location":"Usages/netconfig/netconfig/#_4","text":"\u7cfb\u7edf\u521d\u59cb\u5316\u5b8c\u6210\u540e,\u4ecd\u7136\u53ef\u4ee5\u8c03\u6574\u914d\u7f6e\u7f51\u7edc, \u8bbe\u7f6e-\u7cfb\u7edf-\u7f51\u7edc \u4e2d\u914d\u7f6e\u7f51\u7edc\u63a5\u53e3\u53ef\u4ee5\u8fdb\u884c\u7f51\u7edc\u914d\u7f6e \u5728\u8fd9\u91cc\u4f60\u53ef\u4ee5\u770b\u5230\u6211\u4eec\u7684\u4e09\u5757\u7f51\u5361,wlp3s0,enp2s0,enp4s0,\u53ef\u5728\u6b64\u5904\u914d\u7f6e,\u6bcf\u4e2a\u7f51\u5361\u7684IP\uff0c\u5b50\u7f51\uff0c\u7f51\u5173\uff0cDNS\u7b49\uff0c\u4e5f\u53ef\u4ee5\u914d\u7f6ewi-fi\u70ed\u70b9.","title":"\u5728\u7cfb\u7edf\u5b89\u88c5\u597d\u521d\u59cb\u5316\u5b8c\u6210\u540e\u914d\u7f6e\u7f51\u7edc"},{"location":"install-guide/BackupAndRestore/","text":"\u7cfb\u7edf\u7684\u5907\u4efd\u4e0e\u8fd8\u539f(\u786c\u76d8) \u00b6 HomeAssistant \u7684\u5b89\u88c5\u914d\u7f6e\u8fc7\u7a0b\u8f83\u591a,\u8017\u65f6\u8f83\u957f,\u4e3a\u6b64\u6211\u4eec\u7814\u7a76\u4e86\u4e00\u4e2a,\u5feb\u901f\u7684\u5c06\u63d0\u524d\u88c5\u597d\u7684HomeAssistant\u786c\u76d8,\u6574\u5907\u5907\u4efd\u4e0e\u6062\u590d\u7684\u529e\u6cd5. \u955c\u50cf\u6587\u4ef6\u4e0b\u8f7d \u00b6 \u955c\u50cf\u6587\u4ef6\u662f\u6211\u4eec\u63d0\u524d\u5236\u4f5c\u597d\u5e76\u5907\u4efd\u78c1\u76d8\u653e\u5230\u4e91\u7aef\u7684\uff0c\u6587\u4ef6\u8f83\u5927\uff0c\u9700\u8981\u5728\u5236\u4f5c\u597dWINpe\u7cfb\u7edf\u540e,\u4e0b\u8f7d\u5e76\u653e\u5230U\u76d8\u4e2d\u3002 \u70b9\u51fb\u6b64\u4e0b\u8f7d \u5de5\u5177\u7684\u51c6\u5907 \u00b6 \u5907\u4efd\u8fd8\u539f\u786c\u76d8\uff0c\u6211\u4eec\u5747\u662f\u5730windowsPE\u4e2d\u8fdb\u884c\u7684,\u4e3a\u6b64\u6211\u4eec\u9700\u51c6\u5907\u5982\u4e0b\u5de5\u5177: windowsPE(\u5fc5\u987b) windows\u7684PE\u5236\u4f5c\u5de5\u5177\u6709\u5f88\u591a\uff0c\u6bd4\u5982\u8001\u6bdb\u6843,\u5927\u767d\u83dc,\u7b49,\u4f46\u8fd9\u4e9b\u5927\u591a\u4f1a\u6709\u503c\u5165\u5e7f\u544a\u7b49,\u7528\u4e8e\u5b89\u88c5windows\u7cfb\u7edf\u4f1a\u6709\u8bb8\u591a\u5783\u573e\u8f6f\u4ef6,\u8fd9\u91cc\u63a8\u8350\u4f7f\u7528\" \u5faePE\u5de5\u5177\u7bb1 \",\u5176\u81ea\u5e26\u7684Diskgenus\u5e94\u5f53\u662f\u5df2\u7ecf\u662f\u4e13\u4e1a\u7834\u89e3\u7248\u4e86,\u53ef\u4ee5\u64cd\u4f5c\u5927\u4e8e4G\u7684\u955c\u50cf\u3002\u6240\u4ee5\u4e00\u822c\u60c5\u51b5\u4e0b\u4e0d\u5fc5\u518d\u53e6\u5916\u627e\u5de5\u5177\u3002\u5f53\u9009\u7b2c\u4e09\u65b9PE\uff0c\u6216\u7b2c\u4e09\u65b9PE\u5e26\u7684Diskgenus\u4e0d\u80fd\u6ee1\u8db3\u9700\u8981,\u4e0d\u80fd\u6b63\u5e38\u7684\u5907\u4efd\u4e0e\u8fd8\u539f\u955c\u50cf\u65f6,\u9700\u8981\u9009\u75282\u63d0\u4f9b\u7684\u4e13\u4e1a\u7248 ,\u5e76\u5c06\u5176\u590d\u5236\u5230U\u76d8\u4e2d\u3002 Diskgenus\u4e13\u4e1a\u7834\u89e3\u7248.(\u53ef\u9009) \u200b \u70b9\u51fb\u6b64\u5904\u4e0b\u8f7d \u7528winPE\u5f15\u5bfcU\u76d8\uff0c\u5f15\u5bfc\u7cfb\u7edf\uff0c\u8fdb\u5165PE,\u542f\u52a8SiskGenius \u5206\u533a\u52a9\u624b\u7a0b\u5e8f,\u9009\u4e2d\u8981\u64cd\u4f5c\u7684\u78c1\u76d8.\u7136\u540e,\u70b9\u51fb \u83dc\u5355 \u78c1\u76d8 \u4ece\u786c\u76d8\u955c\u50cf\u6062\u590d \u00b6 \u9009\u62e9\u201c\u4ece\u6620\u50cf\u6062\u590d\u78c1\u76d8\",\u7136\u540e\u9009\u62e9U\u76d8\u4e2d\uff0c\u63d0\u524d\u51c6\u5907\u597d\u7684*.pmfx\u6587\u4ef6,\u7136\u540e\u9009\u62e9\u76ee\u6807\u78c1\u76d8,\u8fd8\u539f\u65b9\u5f0f\u4e3a:\u8fd8\u539f\u6240\u6709\u6247\u533a,\u7136\u540e\u70b9\u51fb\u5f00\u59cb,\u7cfb\u7edf\u5c31\u4f1a\u5f00\u59cb\u8fd8\u539f. \u8fd8\u539f\u5b8c\u6210\u540e,\u5982\u4e0b\u56fe\u6240\u793a: \u7136\u540e,\u79fb\u9664U\u76d8\uff0c\u91cd\u65b0\u542f\u52a8\uff0c\u5373\u53ef\u5b8c\u6210\u5b89\u88c5\uff0c\u5982\u4e0b\u56fe\u6240\u793a \u5907\u4efd\u6574\u4e2a\u786c\u76d8 \u00b6 \u9009\u62e9\"\u5907\u4efd\u78c1\u78c1\u76d8\u5230\u6620\\\u50cf\u6587\u4ef6\",\u5907\u4efd\u6a21\u5f0f\u4e3a:\u6240\u6709\u6247\u533a,\u9009\u62e9\u955c\u50cf\u6587\u4ef6,\u4e3a\u4e0b\u8f7d\u597d\u5e76\u63d0\u524d\u653e\u5165U\u76d8\u7684\u6269\u5c55\u540d\u4e3apmfx\u7684\u6620\u50cf\u6587\u4ef6,\u7136\u540e\u70b9\u51fb\"\u5f00\u59cb\" \u5927\u7ea6\u534a\u4e2a\u591a\u5c0f\u65f6,\u80fd\u5199\u5165\u5b8c\u6210.\u5982\u4e0b\u56fe\u6240\u793a,\u6620\u50cf\u6587\u4ef6\u5df2\u751f\u6210\u7ea6\u67095G\uff0c\u4fdd\u5b58\u5230\u5408\u9002\u7684\u5730\u65b9\uff0c\u53ef\u4ee5\u7528\u6765\u88c5\u673a\u6216\u8fd8\u539f\u7528\u3002","title":"BackupAndRestore"},{"location":"install-guide/BackupAndRestore/#_1","text":"HomeAssistant \u7684\u5b89\u88c5\u914d\u7f6e\u8fc7\u7a0b\u8f83\u591a,\u8017\u65f6\u8f83\u957f,\u4e3a\u6b64\u6211\u4eec\u7814\u7a76\u4e86\u4e00\u4e2a,\u5feb\u901f\u7684\u5c06\u63d0\u524d\u88c5\u597d\u7684HomeAssistant\u786c\u76d8,\u6574\u5907\u5907\u4efd\u4e0e\u6062\u590d\u7684\u529e\u6cd5.","title":"\u7cfb\u7edf\u7684\u5907\u4efd\u4e0e\u8fd8\u539f(\u786c\u76d8)"},{"location":"install-guide/BackupAndRestore/#_2","text":"\u955c\u50cf\u6587\u4ef6\u662f\u6211\u4eec\u63d0\u524d\u5236\u4f5c\u597d\u5e76\u5907\u4efd\u78c1\u76d8\u653e\u5230\u4e91\u7aef\u7684\uff0c\u6587\u4ef6\u8f83\u5927\uff0c\u9700\u8981\u5728\u5236\u4f5c\u597dWINpe\u7cfb\u7edf\u540e,\u4e0b\u8f7d\u5e76\u653e\u5230U\u76d8\u4e2d\u3002 \u70b9\u51fb\u6b64\u4e0b\u8f7d","title":"\u955c\u50cf\u6587\u4ef6\u4e0b\u8f7d"},{"location":"install-guide/BackupAndRestore/#_3","text":"\u5907\u4efd\u8fd8\u539f\u786c\u76d8\uff0c\u6211\u4eec\u5747\u662f\u5730windowsPE\u4e2d\u8fdb\u884c\u7684,\u4e3a\u6b64\u6211\u4eec\u9700\u51c6\u5907\u5982\u4e0b\u5de5\u5177: windowsPE(\u5fc5\u987b) windows\u7684PE\u5236\u4f5c\u5de5\u5177\u6709\u5f88\u591a\uff0c\u6bd4\u5982\u8001\u6bdb\u6843,\u5927\u767d\u83dc,\u7b49,\u4f46\u8fd9\u4e9b\u5927\u591a\u4f1a\u6709\u503c\u5165\u5e7f\u544a\u7b49,\u7528\u4e8e\u5b89\u88c5windows\u7cfb\u7edf\u4f1a\u6709\u8bb8\u591a\u5783\u573e\u8f6f\u4ef6,\u8fd9\u91cc\u63a8\u8350\u4f7f\u7528\" \u5faePE\u5de5\u5177\u7bb1 \",\u5176\u81ea\u5e26\u7684Diskgenus\u5e94\u5f53\u662f\u5df2\u7ecf\u662f\u4e13\u4e1a\u7834\u89e3\u7248\u4e86,\u53ef\u4ee5\u64cd\u4f5c\u5927\u4e8e4G\u7684\u955c\u50cf\u3002\u6240\u4ee5\u4e00\u822c\u60c5\u51b5\u4e0b\u4e0d\u5fc5\u518d\u53e6\u5916\u627e\u5de5\u5177\u3002\u5f53\u9009\u7b2c\u4e09\u65b9PE\uff0c\u6216\u7b2c\u4e09\u65b9PE\u5e26\u7684Diskgenus\u4e0d\u80fd\u6ee1\u8db3\u9700\u8981,\u4e0d\u80fd\u6b63\u5e38\u7684\u5907\u4efd\u4e0e\u8fd8\u539f\u955c\u50cf\u65f6,\u9700\u8981\u9009\u75282\u63d0\u4f9b\u7684\u4e13\u4e1a\u7248 ,\u5e76\u5c06\u5176\u590d\u5236\u5230U\u76d8\u4e2d\u3002 Diskgenus\u4e13\u4e1a\u7834\u89e3\u7248.(\u53ef\u9009) \u200b \u70b9\u51fb\u6b64\u5904\u4e0b\u8f7d \u7528winPE\u5f15\u5bfcU\u76d8\uff0c\u5f15\u5bfc\u7cfb\u7edf\uff0c\u8fdb\u5165PE,\u542f\u52a8SiskGenius \u5206\u533a\u52a9\u624b\u7a0b\u5e8f,\u9009\u4e2d\u8981\u64cd\u4f5c\u7684\u78c1\u76d8.\u7136\u540e,\u70b9\u51fb \u83dc\u5355 \u78c1\u76d8","title":"\u5de5\u5177\u7684\u51c6\u5907"},{"location":"install-guide/BackupAndRestore/#_4","text":"\u9009\u62e9\u201c\u4ece\u6620\u50cf\u6062\u590d\u78c1\u76d8\",\u7136\u540e\u9009\u62e9U\u76d8\u4e2d\uff0c\u63d0\u524d\u51c6\u5907\u597d\u7684*.pmfx\u6587\u4ef6,\u7136\u540e\u9009\u62e9\u76ee\u6807\u78c1\u76d8,\u8fd8\u539f\u65b9\u5f0f\u4e3a:\u8fd8\u539f\u6240\u6709\u6247\u533a,\u7136\u540e\u70b9\u51fb\u5f00\u59cb,\u7cfb\u7edf\u5c31\u4f1a\u5f00\u59cb\u8fd8\u539f. \u8fd8\u539f\u5b8c\u6210\u540e,\u5982\u4e0b\u56fe\u6240\u793a: \u7136\u540e,\u79fb\u9664U\u76d8\uff0c\u91cd\u65b0\u542f\u52a8\uff0c\u5373\u53ef\u5b8c\u6210\u5b89\u88c5\uff0c\u5982\u4e0b\u56fe\u6240\u793a","title":"\u4ece\u786c\u76d8\u955c\u50cf\u6062\u590d"},{"location":"install-guide/BackupAndRestore/#_5","text":"\u9009\u62e9\"\u5907\u4efd\u78c1\u78c1\u76d8\u5230\u6620\\\u50cf\u6587\u4ef6\",\u5907\u4efd\u6a21\u5f0f\u4e3a:\u6240\u6709\u6247\u533a,\u9009\u62e9\u955c\u50cf\u6587\u4ef6,\u4e3a\u4e0b\u8f7d\u597d\u5e76\u63d0\u524d\u653e\u5165U\u76d8\u7684\u6269\u5c55\u540d\u4e3apmfx\u7684\u6620\u50cf\u6587\u4ef6,\u7136\u540e\u70b9\u51fb\"\u5f00\u59cb\" \u5927\u7ea6\u534a\u4e2a\u591a\u5c0f\u65f6,\u80fd\u5199\u5165\u5b8c\u6210.\u5982\u4e0b\u56fe\u6240\u793a,\u6620\u50cf\u6587\u4ef6\u5df2\u751f\u6210\u7ea6\u67095G\uff0c\u4fdd\u5b58\u5230\u5408\u9002\u7684\u5730\u65b9\uff0c\u53ef\u4ee5\u7528\u6765\u88c5\u673a\u6216\u8fd8\u539f\u7528\u3002","title":"\u5907\u4efd\u6574\u4e2a\u786c\u76d8"},{"location":"install-guide/LinuxInstall/","text":"\u57fa\u4e8elinux\u64cd\u4f5c\u7cfb\u7edf\u5199\u5165\u955c\u50cf \u00b6 \u8fd9\u79cd\u65b9\u6cd5\u7684\u64cd\u4f5c\u65b9\u6cd5\u662f: \u5148\u4e0b\u8f7d ubuntu24.04\u64cd\u4f5c\u7cfb\u7edf\u684c\u9762\u7248 \uff0c\u4fdd\u5b58\u4e3aubuntu24.04-desktip-amd.iso\u3002 \u5728\u865a\u62df\u673a\u6216\u7269\u7406\u673a\u4e2d\u5b89\u88c5\u6b64ubuntu24.04\u64cd\u4f5c\u7cfb\u7edf.(\u4e34\u65f6\u4f7f\u7528)\u3002 \u8fd9\u4e2a\u8fc7\u7a0b \uff0c\u8bf7\u53c2\u8003\u5176\u5b83\u6559\u7a0b\u3002 \u4f7f\u7528ubuntu24.04\u5236\u4f5clinux\u542f\u52a8U\u76d8ubuntu live\u3002 \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u628a\u4e0b\u8f7d\u7684ubuntu24.04-desktip-amd.iso\u653e\u5230\u65b0\u5b89\u88c5\u7684Ubuntu\u64cd\u4f5c\u7cfb\u7edf\u4e0b\u6298\u4efb\u610f\u76ee\u5f55,\u5982,\u653e\u5230 \u8fd9\u4e2a\u76ee\u5f55. \u7136\u540e,\u627e\u5230ubuntu\u81ea\u5e26\u7684\u542f\u52a8\u76d8\u5236\u4f5c\u5de5\u5177,\u5982\u56fe\u6240\u793a c\u8fd0\u884c\u542f\u52a8\u76d8\u521b\u5efa\u5668,\u5982\u4e0b \u5148\u62e9\u521a\u521a\u653e\u7f6e\u7684ubuntu24.04-desktip-amd.iso\u4f5c\u4e3a\u6e90\u955c\u50cf,\u7136\u540e\u628a\u8981\u5236\u4f5c\u542f\u52a8\u76d8\u7684U\u76d8\u63d2\u5165USB\u53e3\uff0c\u7136\u540e\uff0c\u9009 \u62e9\u4f5c\u4e3a\u8981\u4f7f\u7528\u7684\u78c1\u76d8\uff0c\u5f53\u7136\u53ef\u4ee5\u63d0\u524d\u63d2\u5165U\u76d8\u3002\u7136\u540e\u70b9\u51fb\u5236\u4f5c\u542f\u52a8\u76d8\u3002 \u5728\u5f39\u51fa\u7684\u786e\u8ba4\u6846\u4e2d\uff0c\u70b9\u51fb\u662f\uff0c \u7136\u540e\u8f93\u51fa\u5f53\u524d\u7684\u7528\u6237\u5bf9\u5e94\u7684\u5bc6\u7801\uff0c\u786e\u8ba4\uff0c \u7cfb\u7edf\u5c06\u4f1a\u81ea\u52a8\u5f00\u542f\u628aubuntu live \u542f\u52a8\u5f15\u5bfc\u76d8\u4fe1\u606f, \u5199\u5165U\u76d8\uff0c \u63d0\u793a\u5b8c\u6210\u65f6\uff0c\u70b9\u9000\u51fa\uff0c\u5f39\u51fa\u5982\u4e0b\u63d0\u793a \uff0c\u8bf4\u660e\u542f\u52a8U\u76d8\u5236\u4f5c\u6210\u529f\u4e86\u3002 \u4f7f\u7528\u542f\u52a8U\u76d8ubuntu live\u5f15\u5bfcx86\u5c0f\u5de5\u63a7\u673a. \u628aU\u76d8\u63d2\u5165\u5165X86\u5c0f\u5de5\u63a7\u673a\u5e76\u786e\u4fdd \u6b63\u786e\u914d\u7f6e\u4e86Bios \u542f\u52a8\u540e,\u6309F11\u5176\u5b83\u4e3b\u673a\u53ef\u80fd\u6709\u6240\u4e0d\u540c(\u53ef\u4ee5\u67e5\u4e3b\u677f\u8bf4\u660e\u4e66,\u6216\u54a8\u8be2\u4e3b\u677f\u5382\u5bb6),\u9009\u62e9\u4ee5U\u76d8\u5f15\u5bfc\u3002 \u516c\u53f8\u7684\u5c0f\u5de5\u63a7\u673a,\u662f\u542f\u52a8\u65f6,\u6309F11\u4e0d\u653e,\u8fdb\u5165\u7cfb\u7edf\u5f15\u5bfc\u83dc\u5355,\u6839\u636eU\u76d8\u7684\u4e0d\u540c,U\u76d8\u5f15\u5bfc\u76d8\u4e2d\u7684\u7cfb\u7edf\u7c7b\u522b\u4e0d\u540c,\u663e\u793a\u7684\u5185\u5bb9\u7565\u6709\u4e0d\u540c,\u5982\u4e0b\u56fe\u6240\u793a \u8fdb\u5165try\u6a21\u5f0f(\u4e0d\u5b89\u88c5). \u5f53\u7cfb\u7edf\u542f\u52a8\u65f6,\u8bf7\u786e\u4fdd\u9009\u62e9\u201cTry or Install Ubuntu\". \u7cfb\u7edf\u542f\u4f1a\u542f\u52a8U\u76d8\u4e2d\u7684Ubuntu live\u7cfb\u7edf, \u5728\u8fd9\u4e2a\u8fc7\u7a0b\u4e2d, \u4f1a\u6709\u51e0\u4e2a\u9009\u9879\u8981\u9009\u62e9\u5982\u4e0b\u56fe\u6240\u793a, \u9009\u62e9\u8bed\u8a00 \u6b64\u5904\u76f4\u63a5\u4e0b\u4e00\u6b65 \u6b64\u5904\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u7f51\u7edc\u8fde\u63a5\u53ef\u4ee5\u9009\u76f4\u63a5\u8fde\u63a5,\u4e5f\u53ef\u4ee5\u9009\u62e9wifi\u5f53\u7136,wifi\u5357\u8981\u914d\u7f6e\u70ed\u70b9. \u540c\u65f6,\u5728\u8fd9\u4e2a\u8fc7\u7a0b\u4e2d,\u8981\u4fdd\u6301\u7f51\u7edc\u7545\u901a( *\u4e00\u5b9a\u8981\u80fd\u6b63\u5e38\u8bbf\u95eeGoogle\u53caHomeAssistant\u5b98\u7f51 ),\u80fd\u6b63\u5e38\u7684\u8bbf\u95ee\u5e76\u4e0b\u8f7dHomeAssistantOS\u7684\u955c\u50cf. \u5728try\u6a21\u5f0f\u4e2d,\u4e0b\u8f7dha\u5b89\u65b9\u955c\u50cf \u8fdb\u5165Ubuntu Live\u7cfb\u7edf\u540e,\u6253\u5f00\u6d4f\u89c8\u5668,\u8bbf\u95eeHomeAssistant\u7684 \u5b98\u65b9\u6587\u6863 , \u8fdb\u5165HomeAssistant\u5b98\u7f51,\u70b9\\\u51fb\u83dc\u5355Installstatiion,\u8fdb\u5165\u5b89\u88c5\u8bf4\u660e \u627e\u5230GenericX86-84,\u5e76\u6253\u5f00\u8fd9\u4e2a\u5728\u9875\u9762 \u627e\u5230\u9875\u9762\u4e2d\u7684\u955c\u50cf\u4e0b\u8f7d\u5730\u5740\u5982\u4e0b\u56fe \u4e0b\u8f7d HomeAssistOs-x86-64\u955c\u50cf \u5f00\u59cb\u4e0b\u8f7d\u540e,\u5982\u4e0b\u56fe\u6240\u793a \u4e0b\u8f7d\u8fc7\u7a0b\u4e2d\u5982\u4e0b\u56fe\u6240\u793a \u4e0b\u8f7d\u5b8c\u6210\u540e \u6587\u4ef6\u4fdd\u5b58\u5728/home/Downloads/hos_Generic-86-64-15.1.img.xz \u4f7f\u7528ubuntu live\u7684\u81ea\u5e26\u7684\u78c1\u76d8\u6062\u590d\u5de5\u5177\u5199\u5165\u955c\u50cf\u5230\u786c\u76d8. \u5728Ubuntu Live\u7684\u7cfb\u7edf\u4e2d,\u627e\u5230\u663e\u793a\u5e94\u7528\u7a0b\u5e8f(\u4e00\u822c\u5728\u5de6\u4e0a\u89d2\u6216\u53f3\u4e0b\u89d2), \u641c\u7d22\u5e76\u627e\u5230Disks\u5e94\u7528\u7a0b\u5e8f,\u5e76\u6253\u5f00Disks\u5e94\u7528\u7a0b\u5e8f. \u5728\u5de6\u4fa7\u5217\u8868\u4e2d\u627e\u5230\u5e76\u9009\u62e9\u4f60\u7684\u76ee\u6807\u78c1\u76d8(\u4e00\u822c\u4e3a\u4f60\u8981\u5b89\u88c5HAOS\u7684\u786c\u76d8) \u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u83dc\u5355\u56fe\u6807\uff08\u4e09\u4e2a\u70b9\uff09\uff0c\u9009\u62e9\u201c\u6062\u590d\u78c1\u76d8\u955c\u50cf\u201d \u6d4f\u89c8\u5e76\u9009\u62e9\u4f60\u4e0b\u8f7d\u7684HAOS\u955c\u50cf\u6587\u4ef6\u3002 \u70b9\u51fb,\u5e76\u6d4f\u89c8\u5230\u4e0b\u8f7d\u7684\u6587\u4ef6 hos_Generic-86-64-15.1.img.xz \u786e\u8ba4\u76ee\u6807\u78c1\u76d8\uff0c\u5e76\u5f00\u59cb\u955c\u50cf\u6062\u590d\u8fc7\u7a0b\u3002 \u786e\u8ba4\u6807\u786c\u76d8\u6b63\u786e\u540e,\u7ee7\u7eed \u63d0\u793a\u786e\u8ba4\u65f6\u70b9\u51fb Restore \u63d0\u793a\u6388\u6743\u65f6,\u70b9\u51fb Authenticate \u786e\u5b9a\u540e,\u5c31\u4f1a\u5f00\u59cb\u628a\u955c\u50cf\u6587\u4ef6\u5199\u5165\u786c\u76d8 \u8bf7\u6ce8\u610f,\u8fd9\u4e2a\u8fc7\u7a0b\u4e00\u5c06\u4f1a,\u6e05\u9664\u786c\u76d8\u4e0a\u539f\u6709\u7684\u6570\u636e,\u8bf7\u786e\u4fdd\u5df2\u5907\u4efd\u91cd\u8981\u6570\u636e. \u5199\u5165\u5b8c\u6210\u540e,\u5982\u4e0b\u56fe\u6240\u793a \u6b64\u65f6,\u5c31\u5df2\u7ecf\u6210\u529f\u7684\u628aHA\u955c\u50cf\u5199\u5165\u5230\u786c\u548c\u808b\u4e2d\u4e86 \u79fb\u9664U\u76d8 \u4e00\u65e6Home Assistant\u64cd\u4f5c\u7cfb\u7edf\u5b89\u88c5\u5b8c\u6210\uff0c\u5173\u95ed\u7cfb\u7edf\u3002 \u5f53Ubuntu\u5173\u95ed\u540e\uff0c\u79fb\u9664USB\u95ea\u5b58\u9a71\u52a8\u5668\uff08Ubuntu\u4f1a\u901a\u77e5\u60a8\u53ef\u4ee5\u5b89\u5168\u79fb\u9664\uff09\u3002 \u91cd\u542f\u7cfb\u7edf. \u73b0\u5728\uff0c\u60a8\u7684Home Assistant\u670d\u52a1\u5668\u5df2\u7ecf\u8bbe\u7f6e\u5b8c\u6bd5\uff0c\u60a8\u53ef\u4ee5\u5f00\u59cb\u4f7f\u7528\u5b83\u3002 \u8fdb\u5165HA cli\u754c\u9762 \u7cfb\u7edf\u542f\u52a8\u6210\u529f\u540e\uff0c\u5982\u4e0b\u56fe\u6240\u793a \u901a\u8fc7\u6d4f\u89c8\u5668,\u8f93\u5165\u63a7\u5236\u53f0\u63d0\u793a\u7684IP\u52a0\u7aef\u53e3 http://192.168.3:8123 \u5373\u53ef\u8fdb\u5165\u56fe\u578b\u5316\u754c\u9762,\u5982\u4e0b","title":"\u57fa\u4e8elinux\u64cd\u4f5c\u7cfb\u7edf\u5199\u5165\u955c\u50cf"},{"location":"install-guide/LinuxInstall/#linux","text":"\u8fd9\u79cd\u65b9\u6cd5\u7684\u64cd\u4f5c\u65b9\u6cd5\u662f: \u5148\u4e0b\u8f7d ubuntu24.04\u64cd\u4f5c\u7cfb\u7edf\u684c\u9762\u7248 \uff0c\u4fdd\u5b58\u4e3aubuntu24.04-desktip-amd.iso\u3002 \u5728\u865a\u62df\u673a\u6216\u7269\u7406\u673a\u4e2d\u5b89\u88c5\u6b64ubuntu24.04\u64cd\u4f5c\u7cfb\u7edf.(\u4e34\u65f6\u4f7f\u7528)\u3002 \u8fd9\u4e2a\u8fc7\u7a0b \uff0c\u8bf7\u53c2\u8003\u5176\u5b83\u6559\u7a0b\u3002 \u4f7f\u7528ubuntu24.04\u5236\u4f5clinux\u542f\u52a8U\u76d8ubuntu live\u3002 \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u628a\u4e0b\u8f7d\u7684ubuntu24.04-desktip-amd.iso\u653e\u5230\u65b0\u5b89\u88c5\u7684Ubuntu\u64cd\u4f5c\u7cfb\u7edf\u4e0b\u6298\u4efb\u610f\u76ee\u5f55,\u5982,\u653e\u5230 \u8fd9\u4e2a\u76ee\u5f55. \u7136\u540e,\u627e\u5230ubuntu\u81ea\u5e26\u7684\u542f\u52a8\u76d8\u5236\u4f5c\u5de5\u5177,\u5982\u56fe\u6240\u793a c\u8fd0\u884c\u542f\u52a8\u76d8\u521b\u5efa\u5668,\u5982\u4e0b \u5148\u62e9\u521a\u521a\u653e\u7f6e\u7684ubuntu24.04-desktip-amd.iso\u4f5c\u4e3a\u6e90\u955c\u50cf,\u7136\u540e\u628a\u8981\u5236\u4f5c\u542f\u52a8\u76d8\u7684U\u76d8\u63d2\u5165USB\u53e3\uff0c\u7136\u540e\uff0c\u9009 \u62e9\u4f5c\u4e3a\u8981\u4f7f\u7528\u7684\u78c1\u76d8\uff0c\u5f53\u7136\u53ef\u4ee5\u63d0\u524d\u63d2\u5165U\u76d8\u3002\u7136\u540e\u70b9\u51fb\u5236\u4f5c\u542f\u52a8\u76d8\u3002 \u5728\u5f39\u51fa\u7684\u786e\u8ba4\u6846\u4e2d\uff0c\u70b9\u51fb\u662f\uff0c \u7136\u540e\u8f93\u51fa\u5f53\u524d\u7684\u7528\u6237\u5bf9\u5e94\u7684\u5bc6\u7801\uff0c\u786e\u8ba4\uff0c \u7cfb\u7edf\u5c06\u4f1a\u81ea\u52a8\u5f00\u542f\u628aubuntu live \u542f\u52a8\u5f15\u5bfc\u76d8\u4fe1\u606f, \u5199\u5165U\u76d8\uff0c \u63d0\u793a\u5b8c\u6210\u65f6\uff0c\u70b9\u9000\u51fa\uff0c\u5f39\u51fa\u5982\u4e0b\u63d0\u793a \uff0c\u8bf4\u660e\u542f\u52a8U\u76d8\u5236\u4f5c\u6210\u529f\u4e86\u3002 \u4f7f\u7528\u542f\u52a8U\u76d8ubuntu live\u5f15\u5bfcx86\u5c0f\u5de5\u63a7\u673a. \u628aU\u76d8\u63d2\u5165\u5165X86\u5c0f\u5de5\u63a7\u673a\u5e76\u786e\u4fdd \u6b63\u786e\u914d\u7f6e\u4e86Bios \u542f\u52a8\u540e,\u6309F11\u5176\u5b83\u4e3b\u673a\u53ef\u80fd\u6709\u6240\u4e0d\u540c(\u53ef\u4ee5\u67e5\u4e3b\u677f\u8bf4\u660e\u4e66,\u6216\u54a8\u8be2\u4e3b\u677f\u5382\u5bb6),\u9009\u62e9\u4ee5U\u76d8\u5f15\u5bfc\u3002 \u516c\u53f8\u7684\u5c0f\u5de5\u63a7\u673a,\u662f\u542f\u52a8\u65f6,\u6309F11\u4e0d\u653e,\u8fdb\u5165\u7cfb\u7edf\u5f15\u5bfc\u83dc\u5355,\u6839\u636eU\u76d8\u7684\u4e0d\u540c,U\u76d8\u5f15\u5bfc\u76d8\u4e2d\u7684\u7cfb\u7edf\u7c7b\u522b\u4e0d\u540c,\u663e\u793a\u7684\u5185\u5bb9\u7565\u6709\u4e0d\u540c,\u5982\u4e0b\u56fe\u6240\u793a \u8fdb\u5165try\u6a21\u5f0f(\u4e0d\u5b89\u88c5). \u5f53\u7cfb\u7edf\u542f\u52a8\u65f6,\u8bf7\u786e\u4fdd\u9009\u62e9\u201cTry or Install Ubuntu\". \u7cfb\u7edf\u542f\u4f1a\u542f\u52a8U\u76d8\u4e2d\u7684Ubuntu live\u7cfb\u7edf, \u5728\u8fd9\u4e2a\u8fc7\u7a0b\u4e2d, \u4f1a\u6709\u51e0\u4e2a\u9009\u9879\u8981\u9009\u62e9\u5982\u4e0b\u56fe\u6240\u793a, \u9009\u62e9\u8bed\u8a00 \u6b64\u5904\u76f4\u63a5\u4e0b\u4e00\u6b65 \u6b64\u5904\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u7f51\u7edc\u8fde\u63a5\u53ef\u4ee5\u9009\u76f4\u63a5\u8fde\u63a5,\u4e5f\u53ef\u4ee5\u9009\u62e9wifi\u5f53\u7136,wifi\u5357\u8981\u914d\u7f6e\u70ed\u70b9. \u540c\u65f6,\u5728\u8fd9\u4e2a\u8fc7\u7a0b\u4e2d,\u8981\u4fdd\u6301\u7f51\u7edc\u7545\u901a( *\u4e00\u5b9a\u8981\u80fd\u6b63\u5e38\u8bbf\u95eeGoogle\u53caHomeAssistant\u5b98\u7f51 ),\u80fd\u6b63\u5e38\u7684\u8bbf\u95ee\u5e76\u4e0b\u8f7dHomeAssistantOS\u7684\u955c\u50cf. \u5728try\u6a21\u5f0f\u4e2d,\u4e0b\u8f7dha\u5b89\u65b9\u955c\u50cf \u8fdb\u5165Ubuntu Live\u7cfb\u7edf\u540e,\u6253\u5f00\u6d4f\u89c8\u5668,\u8bbf\u95eeHomeAssistant\u7684 \u5b98\u65b9\u6587\u6863 , \u8fdb\u5165HomeAssistant\u5b98\u7f51,\u70b9\\\u51fb\u83dc\u5355Installstatiion,\u8fdb\u5165\u5b89\u88c5\u8bf4\u660e \u627e\u5230GenericX86-84,\u5e76\u6253\u5f00\u8fd9\u4e2a\u5728\u9875\u9762 \u627e\u5230\u9875\u9762\u4e2d\u7684\u955c\u50cf\u4e0b\u8f7d\u5730\u5740\u5982\u4e0b\u56fe \u4e0b\u8f7d HomeAssistOs-x86-64\u955c\u50cf \u5f00\u59cb\u4e0b\u8f7d\u540e,\u5982\u4e0b\u56fe\u6240\u793a \u4e0b\u8f7d\u8fc7\u7a0b\u4e2d\u5982\u4e0b\u56fe\u6240\u793a \u4e0b\u8f7d\u5b8c\u6210\u540e \u6587\u4ef6\u4fdd\u5b58\u5728/home/Downloads/hos_Generic-86-64-15.1.img.xz \u4f7f\u7528ubuntu live\u7684\u81ea\u5e26\u7684\u78c1\u76d8\u6062\u590d\u5de5\u5177\u5199\u5165\u955c\u50cf\u5230\u786c\u76d8. \u5728Ubuntu Live\u7684\u7cfb\u7edf\u4e2d,\u627e\u5230\u663e\u793a\u5e94\u7528\u7a0b\u5e8f(\u4e00\u822c\u5728\u5de6\u4e0a\u89d2\u6216\u53f3\u4e0b\u89d2), \u641c\u7d22\u5e76\u627e\u5230Disks\u5e94\u7528\u7a0b\u5e8f,\u5e76\u6253\u5f00Disks\u5e94\u7528\u7a0b\u5e8f. \u5728\u5de6\u4fa7\u5217\u8868\u4e2d\u627e\u5230\u5e76\u9009\u62e9\u4f60\u7684\u76ee\u6807\u78c1\u76d8(\u4e00\u822c\u4e3a\u4f60\u8981\u5b89\u88c5HAOS\u7684\u786c\u76d8) \u70b9\u51fb\u53f3\u4e0a\u89d2\u7684\u83dc\u5355\u56fe\u6807\uff08\u4e09\u4e2a\u70b9\uff09\uff0c\u9009\u62e9\u201c\u6062\u590d\u78c1\u76d8\u955c\u50cf\u201d \u6d4f\u89c8\u5e76\u9009\u62e9\u4f60\u4e0b\u8f7d\u7684HAOS\u955c\u50cf\u6587\u4ef6\u3002 \u70b9\u51fb,\u5e76\u6d4f\u89c8\u5230\u4e0b\u8f7d\u7684\u6587\u4ef6 hos_Generic-86-64-15.1.img.xz \u786e\u8ba4\u76ee\u6807\u78c1\u76d8\uff0c\u5e76\u5f00\u59cb\u955c\u50cf\u6062\u590d\u8fc7\u7a0b\u3002 \u786e\u8ba4\u6807\u786c\u76d8\u6b63\u786e\u540e,\u7ee7\u7eed \u63d0\u793a\u786e\u8ba4\u65f6\u70b9\u51fb Restore \u63d0\u793a\u6388\u6743\u65f6,\u70b9\u51fb Authenticate \u786e\u5b9a\u540e,\u5c31\u4f1a\u5f00\u59cb\u628a\u955c\u50cf\u6587\u4ef6\u5199\u5165\u786c\u76d8 \u8bf7\u6ce8\u610f,\u8fd9\u4e2a\u8fc7\u7a0b\u4e00\u5c06\u4f1a,\u6e05\u9664\u786c\u76d8\u4e0a\u539f\u6709\u7684\u6570\u636e,\u8bf7\u786e\u4fdd\u5df2\u5907\u4efd\u91cd\u8981\u6570\u636e. \u5199\u5165\u5b8c\u6210\u540e,\u5982\u4e0b\u56fe\u6240\u793a \u6b64\u65f6,\u5c31\u5df2\u7ecf\u6210\u529f\u7684\u628aHA\u955c\u50cf\u5199\u5165\u5230\u786c\u548c\u808b\u4e2d\u4e86 \u79fb\u9664U\u76d8 \u4e00\u65e6Home Assistant\u64cd\u4f5c\u7cfb\u7edf\u5b89\u88c5\u5b8c\u6210\uff0c\u5173\u95ed\u7cfb\u7edf\u3002 \u5f53Ubuntu\u5173\u95ed\u540e\uff0c\u79fb\u9664USB\u95ea\u5b58\u9a71\u52a8\u5668\uff08Ubuntu\u4f1a\u901a\u77e5\u60a8\u53ef\u4ee5\u5b89\u5168\u79fb\u9664\uff09\u3002 \u91cd\u542f\u7cfb\u7edf. \u73b0\u5728\uff0c\u60a8\u7684Home Assistant\u670d\u52a1\u5668\u5df2\u7ecf\u8bbe\u7f6e\u5b8c\u6bd5\uff0c\u60a8\u53ef\u4ee5\u5f00\u59cb\u4f7f\u7528\u5b83\u3002 \u8fdb\u5165HA cli\u754c\u9762 \u7cfb\u7edf\u542f\u52a8\u6210\u529f\u540e\uff0c\u5982\u4e0b\u56fe\u6240\u793a \u901a\u8fc7\u6d4f\u89c8\u5668,\u8f93\u5165\u63a7\u5236\u53f0\u63d0\u793a\u7684IP\u52a0\u7aef\u53e3 http://192.168.3:8123 \u5373\u53ef\u8fdb\u5165\u56fe\u578b\u5316\u754c\u9762,\u5982\u4e0b","title":"\u57fa\u4e8elinux\u64cd\u4f5c\u7cfb\u7edf\u5199\u5165\u955c\u50cf"},{"location":"install-guide/WinPeInstall/","text":"Windows PE \u4e0b\u5199\u5165 HA \u955c\u50cf \u00b6 windows Pe\u4e0b\u5199\u5165\u786c\u76d8\u955c\u50cf\u7684\u4e3b\u8981\u601d\u8def\u662f\u4f7f\u7528Roadkilnet\u5f00\u53d1\u7684Rodakill's Disk Image\u5de5\u5177\u628aHA\u7684\u955c\u50cf\u5199\u5165\u786c\u76d8. \u4e0b\u8f7dDisk Image \u00b6 DiskImage\u7684\u5b98\u65b9\u4e0b\u8f7d\u5730\u5740\u4e3a ) https://roadkil.net/program.php?ProgramID=12&Action=NewOSID&DownloadVersion=12&Installer=NO \u8fdb\u5165\u7f51\u7ad9\u7684\u4e0b\u8f7d\u9875\u9762,\u5982\u4e0b,\u9009\u62e9windows8 10 or 11\u548cStand Alone Version\u7248\u672c,\u7136\u540e\u70b9\u51fb\u4e0b\u8f7d \u4e0b\u8f7d\u5b8c\u6210\u540e,\u5f97\u5230\u5982\u4e0bDiskImage_1_6_WinAll .exe\u6587\u4ef6 ,\u4fdd\u5b58\u597d,\u540e\u9762\u9700\u8981\u4fdd\u5b58\u4e48U\u76d8\u3002 \u5236\u4f5cWindowsPE\u5f15\u5bfcU\u76d8 \u00b6 windows\u7684PE\u5236\u4f5c\u5de5\u5177\u6709\u5f88\u591a\uff0c\u6bd4\u5982\u8001\u6bdb\u6843,\u5927\u767d\u83dc,\u7b49,\u4f46\u8fd9\u4e9b\u5927\u591a\u4f1a\u6709\u503c\u5165\u5e7f\u544a\u7b49,\u7528\u4e8e\u5b89\u88c5windows\u7cfb\u7edf\u4f1a\u6709\u8bb8\u591a\u5783\u573e\u8f6f\u4ef6,\u8fd9\u91cc\u63a8\u8350\u4f7f\u7528\" \u5faePE\u5de5\u5177\u7bb1 \",\u4e0b\u8f7d\u5b89\u88c5\u7a0b\u5e8f\u5982\u4e0b: \u8fd0\u884cWePev2.3.exe \u70b9\u51fb\u53f3\u4e0b\u89d2\u7684\u5b89\u88c5\u5230U\u76d8\u56fe\u6807 \u9009\u62e9\u6b63\u786e\u7684\u4ea7\uff0c\u5e76\u914d\u597d\u5377\u6807\uff0c\u70b9\u51fb\u7acb\u5373\u5b89\u88c5\u5230U\u76d8\uff0c \u63d0\u793a\u5f00\u59cb\u5236\u4f5cU\u76d8 \u7a0d\u7b49\u7247\u523b \u7cfb\u7edf\u63d0\u793a\u5236\u4f5c\u5b8c\u6210 \u4e0b\u8f7d\u5e76\u89e3\u538bHAOS\u955c\u50cf\u5230U\u76d8 \u00b6 \u70b9\u51fb\u8bbf\u95ee Ha-os-GenerricX86-64\u9875\u9762 ,\u627e\u5230\u4e0b\u955c\u50cf\u7684\u4e0b\u8f7d\u94fe\u63a5 \u4e5f\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u5982\u4e0b\u94fe\u63a5 \u4e0b\u8f7d,\u4f46\u5c3d\u91cf\u8fd8\u662f\u6309\u4e0a\u8ff0\u65b9\u6cd5\u4e0b\u8f7d,\u4fdd\u8bc1\u6bcf\u6b21\u4e0b\u8f7d\u7684\u90fd\u662f\u5b98\u7f51\u6700\u65b0\u7684\u7248\u672c. \u4e0b\u8f7d\u5b8c\u6210\u540e\u5982\u4e0b \u89e3\u538b\u8fd9\u4e2a\u6587\u4ef6 \u5f97\u5230haos_generic-x86-64-15.1.img,\u628a\u8fd9\u4e2a\u6587\u4ef6\u590d\u5236\u5230U\u76d8\u4e2d\u4efb\u610f\u76ee\u5f55 \u6bd4\u5982\uff0c\u6211\u653e\u5230\u4e86\u5982\u4e0b\u76ee\u5f55 \u628a\u4e4b\u524d\u4e0b\u8f7d\u597d\u7684Disk Image\u653e\u5165U\u76d8 \u00b6 \u81f3\u6b64WINpe\u5f15\u5bfcU\u76d8\u5c31\u5236\u4f5c\u597d\u4e86\u3002 \u7528\u6b64U\u76d8\u5f15\u5bfc\u5c0f\u5de5\u63a7\u673a\uff0c\u6ce8\u610f\u610f\u8981\u6b63\u786e\u7684\u914d\u7f6eBIOS\uff0c\u53ca\u8981\u7528\u6b63\u786e\u7684\u6539\u53d8\u542f\u52a8\u987a\u5e8f\u7684\u65b9\u6cd5\u5982F11\u5e38\u6309, \u5f15\u5bfc\u6210\u529f\u767d\u5e26 ,\u76f4\u5165PE\u542f\u52a8\u754c\u9762\uff0c\u9009 \u7b2c\u4e00\u9879\u9ed8\u8ba4\uff0c\u7ee7\u7eed \u7a0d\u5019\u4f1a\u8fdb\u5165PE\u7cfb\u7edf \u627e\u5230\u5e76\u542f\u52a8diskImage\u5199\u76d8\u5de5\u5177 \u70b9YES\u7ee7\u7eed \u9009 \u62e9\u4e0b\u8f7d\u597d\u7684HAOS\u7684\u5b89\u88c5\u955c\u50cfimg\u6587\u4ef6 \u63d0\u793a\u6570\u636e\u6709\u4e22\u5931\u98ce\u9669\u65f6,\u70b9\u662f \u6ce8\u610f\u5728\u5199\u5165\u4e4b\u524d,\u4e00\u5b9a\u8981\u786e\u8ba4\u662f\u786c\u76d8\u800c\u975eU\u76d8\uff0c\u4e00\u822c\u4e3aphysical disk 0 \u5199\u5165\u5b8c\u6210\u540e\u4f1a\u63d0\u793a\u5199\u5165\u6210\u529f \u91cd\u65b0\u542f\u52a8\u8fdb\u5165HA cli\u754c\u9762 \u00b6 \u7cfb\u7edf\u542f\u52a8\u6210\u529f\u540e\uff0c\u5982\u4e0b\u56fe\u6240\u793a \u901a\u8fc7\u6d4f\u89c8\u5668,\u8f93\u5165\u63a7\u5236\u53f0\u63d0\u793a\u7684IP\u52a0\u7aef\u53e3 http://192.168.3:8123 \u5373\u53ef\u8fdb\u5165\u56fe\u578b\u5316\u754c\u9762,\u5982\u4e0b","title":"Windows PE \u4e0b\u5199\u5165 HA \u955c\u50cf"},{"location":"install-guide/WinPeInstall/#windows-pe-ha","text":"windows Pe\u4e0b\u5199\u5165\u786c\u76d8\u955c\u50cf\u7684\u4e3b\u8981\u601d\u8def\u662f\u4f7f\u7528Roadkilnet\u5f00\u53d1\u7684Rodakill's Disk Image\u5de5\u5177\u628aHA\u7684\u955c\u50cf\u5199\u5165\u786c\u76d8.","title":"Windows PE \u4e0b\u5199\u5165 HA \u955c\u50cf"},{"location":"install-guide/WinPeInstall/#disk-image","text":"DiskImage\u7684\u5b98\u65b9\u4e0b\u8f7d\u5730\u5740\u4e3a ) https://roadkil.net/program.php?ProgramID=12&Action=NewOSID&DownloadVersion=12&Installer=NO \u8fdb\u5165\u7f51\u7ad9\u7684\u4e0b\u8f7d\u9875\u9762,\u5982\u4e0b,\u9009\u62e9windows8 10 or 11\u548cStand Alone Version\u7248\u672c,\u7136\u540e\u70b9\u51fb\u4e0b\u8f7d \u4e0b\u8f7d\u5b8c\u6210\u540e,\u5f97\u5230\u5982\u4e0bDiskImage_1_6_WinAll .exe\u6587\u4ef6 ,\u4fdd\u5b58\u597d,\u540e\u9762\u9700\u8981\u4fdd\u5b58\u4e48U\u76d8\u3002","title":"\u4e0b\u8f7dDisk Image"},{"location":"install-guide/WinPeInstall/#windowspeu","text":"windows\u7684PE\u5236\u4f5c\u5de5\u5177\u6709\u5f88\u591a\uff0c\u6bd4\u5982\u8001\u6bdb\u6843,\u5927\u767d\u83dc,\u7b49,\u4f46\u8fd9\u4e9b\u5927\u591a\u4f1a\u6709\u503c\u5165\u5e7f\u544a\u7b49,\u7528\u4e8e\u5b89\u88c5windows\u7cfb\u7edf\u4f1a\u6709\u8bb8\u591a\u5783\u573e\u8f6f\u4ef6,\u8fd9\u91cc\u63a8\u8350\u4f7f\u7528\" \u5faePE\u5de5\u5177\u7bb1 \",\u4e0b\u8f7d\u5b89\u88c5\u7a0b\u5e8f\u5982\u4e0b: \u8fd0\u884cWePev2.3.exe \u70b9\u51fb\u53f3\u4e0b\u89d2\u7684\u5b89\u88c5\u5230U\u76d8\u56fe\u6807 \u9009\u62e9\u6b63\u786e\u7684\u4ea7\uff0c\u5e76\u914d\u597d\u5377\u6807\uff0c\u70b9\u51fb\u7acb\u5373\u5b89\u88c5\u5230U\u76d8\uff0c \u63d0\u793a\u5f00\u59cb\u5236\u4f5cU\u76d8 \u7a0d\u7b49\u7247\u523b \u7cfb\u7edf\u63d0\u793a\u5236\u4f5c\u5b8c\u6210","title":"\u5236\u4f5cWindowsPE\u5f15\u5bfcU\u76d8"},{"location":"install-guide/WinPeInstall/#haosu","text":"\u70b9\u51fb\u8bbf\u95ee Ha-os-GenerricX86-64\u9875\u9762 ,\u627e\u5230\u4e0b\u955c\u50cf\u7684\u4e0b\u8f7d\u94fe\u63a5 \u4e5f\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u5982\u4e0b\u94fe\u63a5 \u4e0b\u8f7d,\u4f46\u5c3d\u91cf\u8fd8\u662f\u6309\u4e0a\u8ff0\u65b9\u6cd5\u4e0b\u8f7d,\u4fdd\u8bc1\u6bcf\u6b21\u4e0b\u8f7d\u7684\u90fd\u662f\u5b98\u7f51\u6700\u65b0\u7684\u7248\u672c. \u4e0b\u8f7d\u5b8c\u6210\u540e\u5982\u4e0b \u89e3\u538b\u8fd9\u4e2a\u6587\u4ef6 \u5f97\u5230haos_generic-x86-64-15.1.img,\u628a\u8fd9\u4e2a\u6587\u4ef6\u590d\u5236\u5230U\u76d8\u4e2d\u4efb\u610f\u76ee\u5f55 \u6bd4\u5982\uff0c\u6211\u653e\u5230\u4e86\u5982\u4e0b\u76ee\u5f55","title":"\u4e0b\u8f7d\u5e76\u89e3\u538bHAOS\u955c\u50cf\u5230U\u76d8"},{"location":"install-guide/WinPeInstall/#disk-imageu","text":"\u81f3\u6b64WINpe\u5f15\u5bfcU\u76d8\u5c31\u5236\u4f5c\u597d\u4e86\u3002 \u7528\u6b64U\u76d8\u5f15\u5bfc\u5c0f\u5de5\u63a7\u673a\uff0c\u6ce8\u610f\u610f\u8981\u6b63\u786e\u7684\u914d\u7f6eBIOS\uff0c\u53ca\u8981\u7528\u6b63\u786e\u7684\u6539\u53d8\u542f\u52a8\u987a\u5e8f\u7684\u65b9\u6cd5\u5982F11\u5e38\u6309, \u5f15\u5bfc\u6210\u529f\u767d\u5e26 ,\u76f4\u5165PE\u542f\u52a8\u754c\u9762\uff0c\u9009 \u7b2c\u4e00\u9879\u9ed8\u8ba4\uff0c\u7ee7\u7eed \u7a0d\u5019\u4f1a\u8fdb\u5165PE\u7cfb\u7edf \u627e\u5230\u5e76\u542f\u52a8diskImage\u5199\u76d8\u5de5\u5177 \u70b9YES\u7ee7\u7eed \u9009 \u62e9\u4e0b\u8f7d\u597d\u7684HAOS\u7684\u5b89\u88c5\u955c\u50cfimg\u6587\u4ef6 \u63d0\u793a\u6570\u636e\u6709\u4e22\u5931\u98ce\u9669\u65f6,\u70b9\u662f \u6ce8\u610f\u5728\u5199\u5165\u4e4b\u524d,\u4e00\u5b9a\u8981\u786e\u8ba4\u662f\u786c\u76d8\u800c\u975eU\u76d8\uff0c\u4e00\u822c\u4e3aphysical disk 0 \u5199\u5165\u5b8c\u6210\u540e\u4f1a\u63d0\u793a\u5199\u5165\u6210\u529f","title":"\u628a\u4e4b\u524d\u4e0b\u8f7d\u597d\u7684Disk Image\u653e\u5165U\u76d8"},{"location":"install-guide/WinPeInstall/#ha-cli","text":"\u7cfb\u7edf\u542f\u52a8\u6210\u529f\u540e\uff0c\u5982\u4e0b\u56fe\u6240\u793a \u901a\u8fc7\u6d4f\u89c8\u5668,\u8f93\u5165\u63a7\u5236\u53f0\u63d0\u793a\u7684IP\u52a0\u7aef\u53e3 http://192.168.3:8123 \u5373\u53ef\u8fdb\u5165\u56fe\u578b\u5316\u754c\u9762,\u5982\u4e0b","title":"\u91cd\u65b0\u542f\u52a8\u8fdb\u5165HA cli\u754c\u9762"},{"location":"install-guide/configX86Bios/","text":"\u901a\u7528\u8bbe\u7f6e \u00b6 \u8981\u542f\u52a8Home Assistant\u64cd\u4f5c\u7cfb\u7edf\uff0cBIOS\u9700\u8981\u542f\u7528UEFI\u542f\u52a8\u6a21\u5f0f\u5e76\u7981\u7528\u5b89\u5168\u542f\u52a8\u3002 \u4ee5\u4e0b\u622a\u56fe\u6765\u81ea\u7b2c\u4e03\u4ee3\u82f1\u7279\u5c14NUC\u7cfb\u7edf\u3002\u60a8\u7684\u7cfb\u7edf\u4e0a\u7684BIOS\u83dc\u5355\u53ef\u80fd\u770b\u8d77\u6765\u4e0d\u540c\uff0c\u4f46\u9009\u9879\u5e94\u8be5\u4ecd\u7136\u5b58\u5728\u5e76\u5177\u6709\u7c7b\u4f3c\u7684\u540d\u79f0\u3002 \u8981\u8fdb\u5165BIOS\uff0c\u8bf7\u542f\u52a8\u60a8\u7684x86-64\u786c\u4ef6\u5e76\u53cd\u590d\u6309\u4e0bF2\u952e\uff08\u5728\u67d0\u4e9b\u7cfb\u7edf\u4e0a\uff0c\u8fd9\u53ef\u80fd\u662fDel\u3001F1\u6216F10\u952e\uff09\u3002 \u786e\u4fdd\u542f\u7528\u4e86UEFI\u542f\u52a8\u6a21\u5f0f\u3002 \u7981\u7528\u5b89\u5168\u542f\u52a8\u3002 \u4fdd\u5b58\u66f4\u6539\u5e76\u9000\u51fa\u3002 BIOS\u914d\u7f6e\u73b0\u5df2\u5b8c\u6210\u3002 \u516c\u53f8\u5c0f\u5de5\u63a7\u673a(1900)\u914d\u7f6e \u00b6 \u516c\u53f8\u7684\u5c0f\u5de5\u63a7\u673a\u8fdb\u5165Bios\u7684\u65b9\u5f0f,\u662f\u5f00\u673a\u65f6,\u6309DEL\u952e,\u8fdb\u5165\u5982\u4e0b\u754c\u9762 \u8fdb\u5165Bios\u540e,\u8981\u8c03OS Selection,\u9ed8\u8ba4\u4e3awindows7\u9700\u8981\u8c03\u6574\u4e3aLinux\u5982\u4e0b\u56fe \u7136\u540e\u4fdd\u5b58,\u9000\u51fa \u63d0\u793a\u4fdd\u5b58\u65f6,\u9009\u62e9YES","title":"configX86Bios"},{"location":"install-guide/configX86Bios/#_1","text":"\u8981\u542f\u52a8Home Assistant\u64cd\u4f5c\u7cfb\u7edf\uff0cBIOS\u9700\u8981\u542f\u7528UEFI\u542f\u52a8\u6a21\u5f0f\u5e76\u7981\u7528\u5b89\u5168\u542f\u52a8\u3002 \u4ee5\u4e0b\u622a\u56fe\u6765\u81ea\u7b2c\u4e03\u4ee3\u82f1\u7279\u5c14NUC\u7cfb\u7edf\u3002\u60a8\u7684\u7cfb\u7edf\u4e0a\u7684BIOS\u83dc\u5355\u53ef\u80fd\u770b\u8d77\u6765\u4e0d\u540c\uff0c\u4f46\u9009\u9879\u5e94\u8be5\u4ecd\u7136\u5b58\u5728\u5e76\u5177\u6709\u7c7b\u4f3c\u7684\u540d\u79f0\u3002 \u8981\u8fdb\u5165BIOS\uff0c\u8bf7\u542f\u52a8\u60a8\u7684x86-64\u786c\u4ef6\u5e76\u53cd\u590d\u6309\u4e0bF2\u952e\uff08\u5728\u67d0\u4e9b\u7cfb\u7edf\u4e0a\uff0c\u8fd9\u53ef\u80fd\u662fDel\u3001F1\u6216F10\u952e\uff09\u3002 \u786e\u4fdd\u542f\u7528\u4e86UEFI\u542f\u52a8\u6a21\u5f0f\u3002 \u7981\u7528\u5b89\u5168\u542f\u52a8\u3002 \u4fdd\u5b58\u66f4\u6539\u5e76\u9000\u51fa\u3002 BIOS\u914d\u7f6e\u73b0\u5df2\u5b8c\u6210\u3002","title":"\u901a\u7528\u8bbe\u7f6e"},{"location":"install-guide/configX86Bios/#1900","text":"\u516c\u53f8\u7684\u5c0f\u5de5\u63a7\u673a\u8fdb\u5165Bios\u7684\u65b9\u5f0f,\u662f\u5f00\u673a\u65f6,\u6309DEL\u952e,\u8fdb\u5165\u5982\u4e0b\u754c\u9762 \u8fdb\u5165Bios\u540e,\u8981\u8c03OS Selection,\u9ed8\u8ba4\u4e3awindows7\u9700\u8981\u8c03\u6574\u4e3aLinux\u5982\u4e0b\u56fe \u7136\u540e\u4fdd\u5b58,\u9000\u51fa \u63d0\u793a\u4fdd\u5b58\u65f6,\u9009\u62e9YES","title":"\u516c\u53f8\u5c0f\u5de5\u63a7\u673a(1900)\u914d\u7f6e"},{"location":"install-guide/installHa/","text":"\u5b89\u88c5HomeAssistant \u00b6 HomeAssistant\u7684\u5b89\u88c5\u6709\u591a\u79cd\u65b9\u5f0f\u4e0e\u65b9\u6cd5,\u6700\u5e38\u7528\u6298\u6709\u786c\u5907\u76f4\u63a5\u5b89\u88c5,docker\u5b89\u88c5\u865a\u62df\u673a\u5b89\u88c5\u7b49. \u4e0b\u9762\u6211\u4eec\u5c31\u4ee5\u786c\u76d8\u5b89\u88c5HAOS\u4e3a\u4f8b\u4ecb\u7ecd\u57fa\u4e8ex86\u786c\u4ef6\u7684\u57fa\u7840\u4e0a\u5b89\u88c5HAOS,\u57fa\u5b83\u7684\u5b89\u88c5\u65b9\u5f0f,\u540e\u7eed\u4f1a\u4ecb\u7ecd. BIOS\u914d\u7f6e \u00b6 \u91cd\u8981\u63d0\u9192 \u5728\u5b89\u88c5HAOS\u4e4b\u524d\uff0c\u8bf7\u786e\u4fdd\u60a8\u7684BIOS\u8bbe\u7f6e\u6b63\u786e\u3002\u4ee5\u4e0b\u662f\u4e00\u4e9b\u5efa\u8bae\u7684BIOS\u914d\u7f6e\uff1a \u542f\u7528\u865a\u62df\u5316\u6280\u672f\uff08VT-x\u6216AMD-V\uff09\u3002 \u7981\u7528\u5b89\u5168\u542f\u52a8\uff08Secure Boot\uff09\u3002 \u8bbe\u7f6e\u542f\u52a8\u987a\u5e8f\uff0c\u4ee5\u4fbf\u4eceUSB\u6216\u5149\u76d8\u542f\u52a8\u3002 \u8bf7\u5728\u5b89\u88c5\u4e4b\u524d\u52a1\u5fc5\u68c0\u67e5\u8fd9\u4e9b BIOS\u8bbe\u7f6e \u3002 \u516c\u53f8\u7684\u5c0f\u4e3b\u673a\u8fd9\u4e00 BIOS\u8bbe\u7f6e\u89c6\u9891\u6f14\u793a HAOS\u5b89\u88c5 \u00b6 \u5b89\u88c5\u5728X86PC\u786c\u76d8\u4e0a \u00b6 haos\u8981\u5b89\u88c5\u5728\u786c\u76d8\u4e0a,\u603b\u4f53\u601d\u8def\u662f,\u5148\u5230HA\u7684\u5b98\u7f51\u4e0b\u8f7dhaos\u7684\u5b98\u65b9\u955c\u50cf\u6587\u4ef6 ,\u4e00\u822c\u4e3a.gz\u6216.gz.xz\u7b49\u683c\u5f0f,\u7136\u540e\u518d\u7528\u5199\u76d8\u5de5\u5177,\u76f4\u63a5\u628a\u8fd9\u4e2a\u955c\u50cf\u5199\u5165\u786c\u76d8. \u5c06\u955c\u50cf\u6587\u4ef6\u5199\u5165\u786c\u76d8\u4e0a\u7ea6\u6709\u4e24\u79cd\u65b9\u6cd5: \u5728linux\u64cd\u4f5c\u7cfb\u7edf\u4e0a\u5199\u5165\u955c\u50cf \u5728windows\u5e73\u53f0\u4e0a\u5199\u5165\u955c\u50cf \u57fa\u4e8elinux\u64cd\u4f5c\u7cfb\u7edf\u5199\u5165\u955c\u50cf \u00b6 \u8fd9\u79cd\u65b9\u6cd5\u7684\u64cd\u4f5c\u65b9\u6cd5\u662f: \u5148\u4e0b\u8f7d\u5b89\u88c5ubuntu24.04\u64cd\u4f5c\u7cfb\u7edf \u5728\u865a\u62df\u673a\u6216\u7269\u7406\u673a\u4e2d\u5b89\u88c5\u6b64ubuntu24.04\u64cd\u4f5c\u7cfb\u7edf.(\u4e34\u65f6\u4f7f\u7528) \u4f7f\u7528ubuntu24.04\u5236\u4f5clinux\u542f\u52a8U\u76d8ubuntu live \u4f7f\u7528\u542f\u52a8U\u76d8ubuntu live\u5f15\u5bfcx86\u5c0f\u5de5\u63a7\u673a. \u8fdb\u5165try\u6a21\u5f0f(\u4e0d\u5b89\u88c5). \u5728try\u6a21\u5f0f\u4e2d,\u4e0b\u8f7dha\u5b89\u65b9\u955c\u50cf \u4f7f\u7528ubuntu live\u7684\u81ea\u5e26\u7684\u78c1\u76d8\u6062\u590d\u5de5\u5177\u5199\u5165\u955c\u50cf\u5230\u786c\u76d8. \u79fb\u9664U\u76d8 \u91cd\u542f\u7cfb\u7edf \u8fdb\u5165HA cli\u754c\u9762 \u6b64\u79cd\u65b9\u6cd5\u7684\u597d\u5904\u662f,\u4e0d\u7528\u62c6\u9664\u786c\u76d8,\u76f4\u63a5\u5728\u5c0f\u5de5\u63a7\u673a\u4e0a\u5c31\u80fd\u5b9e\u73b0\u64cd\u4f5c. \u57fa\u4e8e windows\u64cd\u4f5c\u7cfb\u7edf\u5199\u5165\u955c\u50cf. \u00b6 \u5b98\u65b9\u5728\u4ecb\u7ecd\u8fd9\u79cd\u65b9\u6cd5\u662f\u8ba9\u7528\u6237\u628a\u5c0f\u5de5\u63a7\u673a\u7684\u786c\u76d8\u62c6\u4e0b,\u88c5\u5165\u7528\u6237\u81ea\u5df2\u7684\u7535\u8111\u4e2d,\u5e76\u7528balenaEtcher\u5199\u76d8\u5de5\u5177\u5c06\u955c\u50cf\u5199\u5165\u5c0f\u5de5\u63a7\u7684\u673a\u7684\u786c\u76d8\u540e,\u518d\u628a\u5c0f\u5de5\u63a7\u673a\u673a\u7684\u786c\u76d8\u88c5\u5165\u5c0f\u5de5\u63a7\u673a.\u8fd9\u65b9\u6cd5\u65b9\u4fbf\u5feb\u6377,\u4f46\u662f\u9700\u8981\u62c6\u673a,\u6709\u9700\u8981\u7684\u7528\u6237\u53ef\u4ee5\u5230\u5b98\u65b9\u4ecb\u7ecd\u9875\u9762 Geneic x86-64 \u53bb\u770b\u5177\u4f53\u64cd\u4f5c\u65b9\u6cd5. \u6211\u4eec\u5e38\u7528\u7684\u65b9\u6cd5\u5982\u4e0b: \u5236\u4f5c\u4e00\u4e2a\u5176\u4e8ewindows PE\u7cfb\u7edf\u7684\u5f15\u5bfcU\u76d8. \u4e0b\u8f7d\u5b98\u65b9\u955c\u50cf\u5230U\u76d8\u4e2d\u3002 \u89e3\u538b\u955c\u50cf\u4e3a.img\u6587\u4ef6 \u7528PE\u5e26\u7684\u5199\u76d8\u5de5\u5177\uff0c\u5c06HA\u955c\u50cf\u5199\u5165\u786c\u76d8\u3002 \u79fb\u9664U\u76d8\u3002 \u91cd\u542f\u8fdb\u5165HA ClI. \u76f4\u63a5 \u8fd8\u539f\u6574\u4e2a\u78c1\u76d8 \u00b6 \u56e0\u3001\u4e3aHA\u5b89\u88c5\u914d\u7f6e\uff0c\u8f83\u4e3a\u590d\u6742\uff0c\u6240\u4ee5\uff0c\u6211\u4eec\u4f7f\u7528\u78c1\u76d8\u5168\u76d8\u7684\u6620\u50cf\u6765\u8fd8\u539f\u78c1\u76d8\uff0c\u6765\u8fbe\u5230\u5feb\u901f\u5b89\u88c5\u76ee\u7684\uff0c\u6b64\u65b9\u6cd5\uff0c\u80fd\u5728\u534a\u5c0f\u65f6\u5de6\u53f3\u7684\u65f6\u95f4\uff0c\u76f4\u63a5\u5b89\u88c5\u597dHA\uff0c\u540c\u65f6\uff0c\u6240\u4ee5\u7528\u7684\u5230\u8bbe\u7f6e\u4e0e\u63d2\u4ef6\u7a0b\u5e8f\u4e0e\u540c\u6b65\u88c5\u597d\uff0c\u5927\u5927\u8282\u7701\u4e86\u65f6\u95f4\u3002 \u5b89\u88c5\u5728VMware ESXi\u4e0a \u00b6 vmware ESXi\u662f\u4e00\u4e2a\u4f01\u4e1a\u7ea7\u7684\u865a\u62df\u5316\u5e73\u53f0\uff0c\u53ef\u4ee5\u5728\u5176\u4e0a\u5b89\u88c5Home Assistant. \u8be6\u60c5\u89c1: vmwareExsi\u5b89\u88c5Ha.md","title":"\u5b89\u88c5"},{"location":"install-guide/installHa/#homeassistant","text":"HomeAssistant\u7684\u5b89\u88c5\u6709\u591a\u79cd\u65b9\u5f0f\u4e0e\u65b9\u6cd5,\u6700\u5e38\u7528\u6298\u6709\u786c\u5907\u76f4\u63a5\u5b89\u88c5,docker\u5b89\u88c5\u865a\u62df\u673a\u5b89\u88c5\u7b49. \u4e0b\u9762\u6211\u4eec\u5c31\u4ee5\u786c\u76d8\u5b89\u88c5HAOS\u4e3a\u4f8b\u4ecb\u7ecd\u57fa\u4e8ex86\u786c\u4ef6\u7684\u57fa\u7840\u4e0a\u5b89\u88c5HAOS,\u57fa\u5b83\u7684\u5b89\u88c5\u65b9\u5f0f,\u540e\u7eed\u4f1a\u4ecb\u7ecd.","title":"\u5b89\u88c5HomeAssistant"},{"location":"install-guide/installHa/#bios","text":"\u91cd\u8981\u63d0\u9192 \u5728\u5b89\u88c5HAOS\u4e4b\u524d\uff0c\u8bf7\u786e\u4fdd\u60a8\u7684BIOS\u8bbe\u7f6e\u6b63\u786e\u3002\u4ee5\u4e0b\u662f\u4e00\u4e9b\u5efa\u8bae\u7684BIOS\u914d\u7f6e\uff1a \u542f\u7528\u865a\u62df\u5316\u6280\u672f\uff08VT-x\u6216AMD-V\uff09\u3002 \u7981\u7528\u5b89\u5168\u542f\u52a8\uff08Secure Boot\uff09\u3002 \u8bbe\u7f6e\u542f\u52a8\u987a\u5e8f\uff0c\u4ee5\u4fbf\u4eceUSB\u6216\u5149\u76d8\u542f\u52a8\u3002 \u8bf7\u5728\u5b89\u88c5\u4e4b\u524d\u52a1\u5fc5\u68c0\u67e5\u8fd9\u4e9b BIOS\u8bbe\u7f6e \u3002 \u516c\u53f8\u7684\u5c0f\u4e3b\u673a\u8fd9\u4e00 BIOS\u8bbe\u7f6e\u89c6\u9891\u6f14\u793a","title":"BIOS\u914d\u7f6e"},{"location":"install-guide/installHa/#haos","text":"","title":"HAOS\u5b89\u88c5"},{"location":"install-guide/installHa/#x86pc","text":"haos\u8981\u5b89\u88c5\u5728\u786c\u76d8\u4e0a,\u603b\u4f53\u601d\u8def\u662f,\u5148\u5230HA\u7684\u5b98\u7f51\u4e0b\u8f7dhaos\u7684\u5b98\u65b9\u955c\u50cf\u6587\u4ef6 ,\u4e00\u822c\u4e3a.gz\u6216.gz.xz\u7b49\u683c\u5f0f,\u7136\u540e\u518d\u7528\u5199\u76d8\u5de5\u5177,\u76f4\u63a5\u628a\u8fd9\u4e2a\u955c\u50cf\u5199\u5165\u786c\u76d8. \u5c06\u955c\u50cf\u6587\u4ef6\u5199\u5165\u786c\u76d8\u4e0a\u7ea6\u6709\u4e24\u79cd\u65b9\u6cd5: \u5728linux\u64cd\u4f5c\u7cfb\u7edf\u4e0a\u5199\u5165\u955c\u50cf \u5728windows\u5e73\u53f0\u4e0a\u5199\u5165\u955c\u50cf","title":"\u5b89\u88c5\u5728X86PC\u786c\u76d8\u4e0a"},{"location":"install-guide/installHa/#linux","text":"\u8fd9\u79cd\u65b9\u6cd5\u7684\u64cd\u4f5c\u65b9\u6cd5\u662f: \u5148\u4e0b\u8f7d\u5b89\u88c5ubuntu24.04\u64cd\u4f5c\u7cfb\u7edf \u5728\u865a\u62df\u673a\u6216\u7269\u7406\u673a\u4e2d\u5b89\u88c5\u6b64ubuntu24.04\u64cd\u4f5c\u7cfb\u7edf.(\u4e34\u65f6\u4f7f\u7528) \u4f7f\u7528ubuntu24.04\u5236\u4f5clinux\u542f\u52a8U\u76d8ubuntu live \u4f7f\u7528\u542f\u52a8U\u76d8ubuntu live\u5f15\u5bfcx86\u5c0f\u5de5\u63a7\u673a. \u8fdb\u5165try\u6a21\u5f0f(\u4e0d\u5b89\u88c5). \u5728try\u6a21\u5f0f\u4e2d,\u4e0b\u8f7dha\u5b89\u65b9\u955c\u50cf \u4f7f\u7528ubuntu live\u7684\u81ea\u5e26\u7684\u78c1\u76d8\u6062\u590d\u5de5\u5177\u5199\u5165\u955c\u50cf\u5230\u786c\u76d8. \u79fb\u9664U\u76d8 \u91cd\u542f\u7cfb\u7edf \u8fdb\u5165HA cli\u754c\u9762 \u6b64\u79cd\u65b9\u6cd5\u7684\u597d\u5904\u662f,\u4e0d\u7528\u62c6\u9664\u786c\u76d8,\u76f4\u63a5\u5728\u5c0f\u5de5\u63a7\u673a\u4e0a\u5c31\u80fd\u5b9e\u73b0\u64cd\u4f5c.","title":"\u57fa\u4e8elinux\u64cd\u4f5c\u7cfb\u7edf\u5199\u5165\u955c\u50cf"},{"location":"install-guide/installHa/#windows","text":"\u5b98\u65b9\u5728\u4ecb\u7ecd\u8fd9\u79cd\u65b9\u6cd5\u662f\u8ba9\u7528\u6237\u628a\u5c0f\u5de5\u63a7\u673a\u7684\u786c\u76d8\u62c6\u4e0b,\u88c5\u5165\u7528\u6237\u81ea\u5df2\u7684\u7535\u8111\u4e2d,\u5e76\u7528balenaEtcher\u5199\u76d8\u5de5\u5177\u5c06\u955c\u50cf\u5199\u5165\u5c0f\u5de5\u63a7\u7684\u673a\u7684\u786c\u76d8\u540e,\u518d\u628a\u5c0f\u5de5\u63a7\u673a\u673a\u7684\u786c\u76d8\u88c5\u5165\u5c0f\u5de5\u63a7\u673a.\u8fd9\u65b9\u6cd5\u65b9\u4fbf\u5feb\u6377,\u4f46\u662f\u9700\u8981\u62c6\u673a,\u6709\u9700\u8981\u7684\u7528\u6237\u53ef\u4ee5\u5230\u5b98\u65b9\u4ecb\u7ecd\u9875\u9762 Geneic x86-64 \u53bb\u770b\u5177\u4f53\u64cd\u4f5c\u65b9\u6cd5. \u6211\u4eec\u5e38\u7528\u7684\u65b9\u6cd5\u5982\u4e0b: \u5236\u4f5c\u4e00\u4e2a\u5176\u4e8ewindows PE\u7cfb\u7edf\u7684\u5f15\u5bfcU\u76d8. \u4e0b\u8f7d\u5b98\u65b9\u955c\u50cf\u5230U\u76d8\u4e2d\u3002 \u89e3\u538b\u955c\u50cf\u4e3a.img\u6587\u4ef6 \u7528PE\u5e26\u7684\u5199\u76d8\u5de5\u5177\uff0c\u5c06HA\u955c\u50cf\u5199\u5165\u786c\u76d8\u3002 \u79fb\u9664U\u76d8\u3002 \u91cd\u542f\u8fdb\u5165HA ClI.","title":"\u57fa\u4e8ewindows\u64cd\u4f5c\u7cfb\u7edf\u5199\u5165\u955c\u50cf."},{"location":"install-guide/installHa/#_1","text":"\u56e0\u3001\u4e3aHA\u5b89\u88c5\u914d\u7f6e\uff0c\u8f83\u4e3a\u590d\u6742\uff0c\u6240\u4ee5\uff0c\u6211\u4eec\u4f7f\u7528\u78c1\u76d8\u5168\u76d8\u7684\u6620\u50cf\u6765\u8fd8\u539f\u78c1\u76d8\uff0c\u6765\u8fbe\u5230\u5feb\u901f\u5b89\u88c5\u76ee\u7684\uff0c\u6b64\u65b9\u6cd5\uff0c\u80fd\u5728\u534a\u5c0f\u65f6\u5de6\u53f3\u7684\u65f6\u95f4\uff0c\u76f4\u63a5\u5b89\u88c5\u597dHA\uff0c\u540c\u65f6\uff0c\u6240\u4ee5\u7528\u7684\u5230\u8bbe\u7f6e\u4e0e\u63d2\u4ef6\u7a0b\u5e8f\u4e0e\u540c\u6b65\u88c5\u597d\uff0c\u5927\u5927\u8282\u7701\u4e86\u65f6\u95f4\u3002","title":"\u76f4\u63a5\u8fd8\u539f\u6574\u4e2a\u78c1\u76d8"},{"location":"install-guide/installHa/#vmware-esxi","text":"vmware ESXi\u662f\u4e00\u4e2a\u4f01\u4e1a\u7ea7\u7684\u865a\u62df\u5316\u5e73\u53f0\uff0c\u53ef\u4ee5\u5728\u5176\u4e0a\u5b89\u88c5Home Assistant. \u8be6\u60c5\u89c1: vmwareExsi\u5b89\u88c5Ha.md","title":"\u5b89\u88c5\u5728VMware ESXi\u4e0a"},{"location":"install-guide/vmwareExsi%E5%AE%89%E8%A3%85Ha/","text":"\u57fa\u4e8evmWare Exsi\u5b89\u88c5HA \u00b6 1. \u51c6\u5907\u5de5\u4f5c \u00b6 \u4e0b\u8f7dVMware ESXi\u5b89\u88c5\u955c\u50cf. \u6253\u5f00\u9875\u9762 https://www.home-assistant.io/installation/alternative \u70b9\u51fb\u4e0b\u8f7d\u201c VMware ESXi/vSphere \u7684 .ova \u683c\u5f0f\u955c\u50cf\u6587\u4ef6\u201d \u6ce8\u610f1 \u4f7f\u7528 E1000 \u6216 E1000E \u865a\u62df\u7f51\u7edc\u9002\u914d\u5668\u3002\u5f53\u4f7f\u7528 VMware \u7684 VMXnet3 \u865a\u62df\u7f51\u7edc\u9002\u914d\u5668\u65f6\uff0c\u5df2\u786e\u8ba4\u5b58\u5728 mDNS/\u591a\u64ad\u53d1\u73b0\u95ee\u9898\u3002 \u89e3\u6790\uff1a E1000 \u548c E1000E\uff1a\u63a8\u8350\u7684\u865a\u62df\u7f51\u7edc\u9002\u914d\u5668 VMXnet3\uff1a\u53ef\u80fd\u4f1a\u5bfc\u81f4\u7f51\u7edc\u53d1\u73b0\u95ee\u9898 mDNS\uff1a\u591a\u64ad\u57df\u540d\u7cfb\u7edf \u591a\u64ad\u53d1\u73b0\uff1a\u8bbe\u5907\u5728\u7f51\u7edc\u4e0a\u81ea\u52a8\u53d1\u73b0\u548c\u901a\u4fe1\u7684\u673a\u5236 \u5efa\u8bae\uff1a \u5728 VMware ESXi \u521b\u5efa\u865a\u62df\u673a\u65f6 \u7f51\u7edc\u9002\u914d\u5668\u9009\u62e9 E1000 \u6216 E1000E \u907f\u514d\u4f7f\u7528 VMXnet3 \u6ce8\u610f2 \u5728ESXi\u4e0a\u901a\u8fc7OVF/OVA\u955c\u50cf\u5b89\u88c5\u865a\u62df\u673a\uff0c\u4e3b\u8981\u6b65\u9aa4\u5305\u62ec\uff1a\u767b\u5f55ESXi\u4e3b\u673a\uff0c\u9009\u62e9\u521b\u5efa/\u6ce8\u518c\u865a\u62df\u673a\uff0c\u9009\u62e9\u201c\u4eceOVF\u6216OVA\u6587\u4ef6\u90e8\u7f72\u865a\u62df\u673a\u201d\uff0c\u7136\u540e\u9009\u62e9OVF\u6216OVA\u6587\u4ef6\u5e76\u5b8c\u6210\u540e\u7eed\u8bbe\u7f6e\u3002\ufeff \u5177\u4f53\u6b65\u9aa4\u5982\u4e0b\uff1a \u767b\u5f55ESXi\u4e3b\u673a\uff1a:\u4f7f\u7528Web Client\u6216vSphere Client\u767b\u5f55\u5230\u60a8\u7684ESXi\u4e3b\u673a\u3002\ufeff \u521b\u5efa/\u6ce8\u518c\u865a\u62df\u673a\uff1a:\u5728ESXi\u754c\u9762\u4e2d\uff0c\u627e\u5230\u5e76\u70b9\u51fb\u201c\u521b\u5efa/\u6ce8\u518c\u865a\u62df\u673a\u201d\u9009\u9879\u3002\ufeff \u9009\u62e9\u90e8\u7f72\u7c7b\u578b\uff1a:\u9009\u62e9\u201c\u4eceOVF\u6216OVA\u6587\u4ef6\u90e8\u7f72\u865a\u62df\u673a\u201d\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002\ufeff \u9009\u62e9OVF/OVA\u6587\u4ef6\uff1a:\u8f93\u5165\u865a\u62df\u673a\u540d\u79f0\uff0c\u7136\u540e\u9009\u62e9\u8981\u90e8\u7f72\u7684OVF\u6216OVA\u6587\u4ef6\uff0c\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002\ufeff \u9009\u62e9\u5b58\u50a8\u4f4d\u7f6e\uff1a:\u9009\u62e9\u865a\u62df\u673a\u5b58\u50a8\u7684\u4f4d\u7f6e\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002\ufeff \u9009\u62e9\u90e8\u7f72\u9009\u9879\uff1a:\u6839\u636e\u9700\u8981\u9009\u62e9\u90e8\u7f72\u9009\u9879\uff0c\u4f8b\u5982\u7f51\u7edc\u914d\u7f6e\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002\ufeff \u5b8c\u6210\u90e8\u7f72\uff1a:\u5728\u201c\u5373\u5c06\u5b8c\u6210\u201d\u9875\u9762\uff0c\u68c0\u67e5\u8bbe\u7f6e\uff0c\u7136\u540e\u70b9\u51fb\u201c\u5b8c\u6210\u201d\u3002\ufeff \u542f\u52a8\u865a\u62df\u673a\uff1a:\u90e8\u7f72\u5b8c\u6210\u540e\uff0c\u542f\u52a8\u65b0\u521b\u5efa\u7684\u865a\u62df\u673a\u5373\u53ef\u3002\ufeff \u6ce8\u610f\u4e8b\u9879\uff1a \u5982\u679c\u4f7f\u7528OVF\u6587\u4ef6\uff0c\u901a\u5e38\u9700\u8981\u914d\u5408VMDK\u7b49\u865a\u62df\u78c1\u76d8\u6587\u4ef6\u4e00\u8d77\u4f7f\u7528\u3002\ufeff \u786e\u4fddOVF\u6587\u4ef6\u548c\u76f8\u5173\u7684\u865a\u62df\u78c1\u76d8\u6587\u4ef6\u90fd\u5728\u540c\u4e00\u4e2a\u76ee\u5f55\u4e0b\uff0c\u6216\u8005\u4e0a\u4f20\u5230ESXi\u7684\u5b58\u50a8\u3002\ufeff \u5728\u201c\u90e8\u7f72\u9009\u9879\u201d\u9875\u9762\uff0c\u53ef\u4ee5\u6839\u636e\u9700\u8981\u914d\u7f6e\u865a\u62df\u673a\u7684\u7f51\u7edc\u3001\u8d44\u6e90\u7b49\u8bbe\u7f6e\u3002\ufeff \u5982\u679c\u9047\u5230\u201c\u7f3a\u5c11\u78c1\u76d8\u955c\u50cf\u201d\u7b49\u62a5\u9519\uff0c\u53ef\u80fd\u662f\u7531\u4e8eOVF\u6587\u4ef6\u4e2d\u5f15\u7528\u7684\u78c1\u76d8\u6587\u4ef6\u8def\u5f84\u4e0d\u6b63\u786e\uff0c\u6216\u8005\u78c1\u76d8\u6587\u4ef6\u672a\u6b63\u786e\u4e0a\u4f20\u5230ESXi\u7684\u5b58\u50a8\uff0c\u9700\u8981\u68c0\u67e5\u5e76\u4fee\u6b63\u3002\ufeff \u5bf9\u4e8e\u67d0\u4e9bOVF\u6a21\u677f\uff0c\u53ef\u80fd\u9700\u8981\u8fdb\u884c\u4e00\u4e9b\u989d\u5916\u7684\u914d\u7f6e\uff0c\u4f8b\u5982\u4fee\u6539\u865a\u62df\u673a\u7684\u786c\u4ef6\u7248\u672c\u4ee5\u517c\u5bb9ESXi\u7248\u672c\u3002\ufeff \u901a\u8fc7\u4ee5\u4e0a\u6b65\u9aa4\uff0c\u60a8\u5c31\u53ef\u4ee5\u6210\u529f\u5730\u5728ESXi\u4e0a\u901a\u8fc7OVF/OVA\u955c\u50cf\u5b89\u88c5\u865a\u62df\u673a\u4e86 2. \u5b89\u88c5\u6b65\u9aa4 \u00b6 \u767b\u5f55\u5230ESXi\u4e3b\u673a\u7684Web\u754c\u9762\u3002 \u5728\u5de6\u4fa7\u5bfc\u822a\u680f\u4e2d\uff0c\u70b9\u51fb\u201c\u865a\u62df\u673a\u201d\u3002 \u70b9\u51fb\u201c\u521b\u5efa/\u6ce8\u518c\u865a\u62df\u673a\u201d\u6309\u94ae\u3002 \u9009\u62e9\u201c\u4eceOVF\u6216OVA\u6587\u4ef6\u90e8\u7f72\u865a\u62df\u673a\u201d\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002 \u8f93\u5165\u865a\u62df\u673a\u540d\u79f0\uff0c\u5e76\u9009\u62e9\u4e0b\u8f7d\u7684Home Assistant OVA\u6587\u4ef6\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002 \u9009\u62e9\u5b58\u50a8\u4f4d\u7f6e\uff0c\u901a\u5e38\u9009\u62e9\u9ed8\u8ba4\u7684\u5b58\u50a8\u4f4d\u7f6e\u5373\u53ef\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002 \u5728\u201c\u7f51\u7edc\u6620\u5c04\u201d\u9875\u9762\uff0c\u9009\u62e9\u9002\u5f53\u7684\u7f51\u7edc\u9002\u914d\u5668\uff08\u786e\u4fdd\u4f7f\u7528E1000\u6216E1000E\uff09\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002 \u5728\u201c\u5373\u5c06\u5b8c\u6210\u201d\u9875\u9762\uff0c\u68c0\u67e5\u8bbe\u7f6e\uff0c\u7136\u540e\u70b9\u51fb\u201c\u5b8c\u6210\u201d\u3002 \u9875\u9762\u5e95\u90e8\u4f1a\u663e\u793a\u90e8\u7f72\u8fdb\u5ea6\uff0c\u7b49\u5f85\u90e8\u7f72\u5b8c\u6210\u3002 \u90e8\u7f72\u5b8c\u6210\u540e\uff0c\u60a8\u53ef\u4ee5\u5728\u865a\u62df\u673a\u5217\u8868\u4e2d\u770b\u5230\u65b0\u521b\u5efa\u7684Home Assistant\u865a\u62df\u673a\u3002 \u9009\u4e2dHome Assistant\u865a\u62df\u673a\uff0c\u70b9\u51fb\u201c\u542f\u52a8\u201d\u6309\u94ae\u6765\u542f\u52a8\u865a\u673a \u9996\u6b21\u542f\u52a8\u53ef\u80fd\u9700\u8981\u4e00\u4e9b\u65f6\u95f4\uff0c\u8bf7\u8010\u5fc3\u7b49\u5f85\u3002 \u770b\u5230ha> \u8fdb\u793a\u7b26\u540e\uff0c\u53ef\u4ee5\u8bd5\u7740\u8f93\u5165 ha \u547d\u4ee4\u6765\u68c0\u67e5Home Assistant\u7684\u72b6\u6001\u3002 \u4e0a\u8ff0\u72b6\u6001\uff0c\u5982\u679c\u663e\u793a \"System is not ready with state: setup\"\uff0c\u8bf4\u660e\u7cfb\u7edf\u6b63\u5728\u5b89\u88c5\u4e2d\uff0c\u8bf7\u8010\u5fc3\u7b49\u5f85\uff0c\u76f4\u5230\u7cfb\u7edf\u5b8c\u5168\u542f\u52a8\u540e\u518d\u8bbf\u95eeWeb\u754c\u9762\u3002\u9996\u6b21\u542f\u52a8 Home Assistant \u9700\u8981\u8f83\u957f\u65f6\u95f4\uff0c\u901a\u5e38\u9700\u8981 10-30 \u5206\u949f\uff0c\u8fd9\u53d6\u51b3\u4e8e\u60a8\u7684\u786c\u4ef6\u914d\u7f6e\u3002 \u7a0d\u7b49\u4e00\u4f1a\uff0c\u6211\u4eec\u518d\u6b21\u7528ha cli info\u6765\u67e5\u770b\u72b6\u6001 \u7136\u540e\u7528 ha network info \u6765\u67e5\u770b\u7f51\u7edc\u72b6\u6001,\u53ef\u89c1\u6211\u4eec\u7684IP\u5730\u5740\u662f:192.168.1.51,\u540e\u7eed\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e2aIP\u5730\u5740\u6765\u8bbf\u95eeHome Assistant\u7684Web\u754c\u9762\u3002 \u542f\u52a8\u540e\uff0c\u60a8\u53ef\u4ee5\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95eeHome Assistant\u7684Web\u754c\u9762\uff0c\u901a\u5e38\u662f\u901a\u8fc7ESXi\u4e3b\u673a\u7684IP\u5730\u5740\u52a0\u4e0a\u7aef\u53e38123\u6765\u8bbf\u95ee\uff0c\u4f8b\u5982\uff1ahttp:// :8123\u3002 \u672c\u4f8b\u662fHttp://192.168.1.51:8123 \u5982\u4e0b\uff0c\u663e\u793a\uff0c\u8fd8\u5728\u5b89\u88c5\u4e2d \u7b49\u5f85\u5373\u53ef\uff0c\u540e\u7eed\u7684\u5b89\u88c5\u8c03\u8bd5\u7b49\uff0c\u89c1\u5176\u5b83\u6587\u6863\u3002","title":"vmwareExsi\u5b89\u88c5Ha"},{"location":"install-guide/vmwareExsi%E5%AE%89%E8%A3%85Ha/#vmware-exsiha","text":"","title":"\u57fa\u4e8evmWare Exsi\u5b89\u88c5HA"},{"location":"install-guide/vmwareExsi%E5%AE%89%E8%A3%85Ha/#1","text":"\u4e0b\u8f7dVMware ESXi\u5b89\u88c5\u955c\u50cf. \u6253\u5f00\u9875\u9762 https://www.home-assistant.io/installation/alternative \u70b9\u51fb\u4e0b\u8f7d\u201c VMware ESXi/vSphere \u7684 .ova \u683c\u5f0f\u955c\u50cf\u6587\u4ef6\u201d \u6ce8\u610f1 \u4f7f\u7528 E1000 \u6216 E1000E \u865a\u62df\u7f51\u7edc\u9002\u914d\u5668\u3002\u5f53\u4f7f\u7528 VMware \u7684 VMXnet3 \u865a\u62df\u7f51\u7edc\u9002\u914d\u5668\u65f6\uff0c\u5df2\u786e\u8ba4\u5b58\u5728 mDNS/\u591a\u64ad\u53d1\u73b0\u95ee\u9898\u3002 \u89e3\u6790\uff1a E1000 \u548c E1000E\uff1a\u63a8\u8350\u7684\u865a\u62df\u7f51\u7edc\u9002\u914d\u5668 VMXnet3\uff1a\u53ef\u80fd\u4f1a\u5bfc\u81f4\u7f51\u7edc\u53d1\u73b0\u95ee\u9898 mDNS\uff1a\u591a\u64ad\u57df\u540d\u7cfb\u7edf \u591a\u64ad\u53d1\u73b0\uff1a\u8bbe\u5907\u5728\u7f51\u7edc\u4e0a\u81ea\u52a8\u53d1\u73b0\u548c\u901a\u4fe1\u7684\u673a\u5236 \u5efa\u8bae\uff1a \u5728 VMware ESXi \u521b\u5efa\u865a\u62df\u673a\u65f6 \u7f51\u7edc\u9002\u914d\u5668\u9009\u62e9 E1000 \u6216 E1000E \u907f\u514d\u4f7f\u7528 VMXnet3 \u6ce8\u610f2 \u5728ESXi\u4e0a\u901a\u8fc7OVF/OVA\u955c\u50cf\u5b89\u88c5\u865a\u62df\u673a\uff0c\u4e3b\u8981\u6b65\u9aa4\u5305\u62ec\uff1a\u767b\u5f55ESXi\u4e3b\u673a\uff0c\u9009\u62e9\u521b\u5efa/\u6ce8\u518c\u865a\u62df\u673a\uff0c\u9009\u62e9\u201c\u4eceOVF\u6216OVA\u6587\u4ef6\u90e8\u7f72\u865a\u62df\u673a\u201d\uff0c\u7136\u540e\u9009\u62e9OVF\u6216OVA\u6587\u4ef6\u5e76\u5b8c\u6210\u540e\u7eed\u8bbe\u7f6e\u3002\ufeff \u5177\u4f53\u6b65\u9aa4\u5982\u4e0b\uff1a \u767b\u5f55ESXi\u4e3b\u673a\uff1a:\u4f7f\u7528Web Client\u6216vSphere Client\u767b\u5f55\u5230\u60a8\u7684ESXi\u4e3b\u673a\u3002\ufeff \u521b\u5efa/\u6ce8\u518c\u865a\u62df\u673a\uff1a:\u5728ESXi\u754c\u9762\u4e2d\uff0c\u627e\u5230\u5e76\u70b9\u51fb\u201c\u521b\u5efa/\u6ce8\u518c\u865a\u62df\u673a\u201d\u9009\u9879\u3002\ufeff \u9009\u62e9\u90e8\u7f72\u7c7b\u578b\uff1a:\u9009\u62e9\u201c\u4eceOVF\u6216OVA\u6587\u4ef6\u90e8\u7f72\u865a\u62df\u673a\u201d\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002\ufeff \u9009\u62e9OVF/OVA\u6587\u4ef6\uff1a:\u8f93\u5165\u865a\u62df\u673a\u540d\u79f0\uff0c\u7136\u540e\u9009\u62e9\u8981\u90e8\u7f72\u7684OVF\u6216OVA\u6587\u4ef6\uff0c\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002\ufeff \u9009\u62e9\u5b58\u50a8\u4f4d\u7f6e\uff1a:\u9009\u62e9\u865a\u62df\u673a\u5b58\u50a8\u7684\u4f4d\u7f6e\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002\ufeff \u9009\u62e9\u90e8\u7f72\u9009\u9879\uff1a:\u6839\u636e\u9700\u8981\u9009\u62e9\u90e8\u7f72\u9009\u9879\uff0c\u4f8b\u5982\u7f51\u7edc\u914d\u7f6e\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002\ufeff \u5b8c\u6210\u90e8\u7f72\uff1a:\u5728\u201c\u5373\u5c06\u5b8c\u6210\u201d\u9875\u9762\uff0c\u68c0\u67e5\u8bbe\u7f6e\uff0c\u7136\u540e\u70b9\u51fb\u201c\u5b8c\u6210\u201d\u3002\ufeff \u542f\u52a8\u865a\u62df\u673a\uff1a:\u90e8\u7f72\u5b8c\u6210\u540e\uff0c\u542f\u52a8\u65b0\u521b\u5efa\u7684\u865a\u62df\u673a\u5373\u53ef\u3002\ufeff \u6ce8\u610f\u4e8b\u9879\uff1a \u5982\u679c\u4f7f\u7528OVF\u6587\u4ef6\uff0c\u901a\u5e38\u9700\u8981\u914d\u5408VMDK\u7b49\u865a\u62df\u78c1\u76d8\u6587\u4ef6\u4e00\u8d77\u4f7f\u7528\u3002\ufeff \u786e\u4fddOVF\u6587\u4ef6\u548c\u76f8\u5173\u7684\u865a\u62df\u78c1\u76d8\u6587\u4ef6\u90fd\u5728\u540c\u4e00\u4e2a\u76ee\u5f55\u4e0b\uff0c\u6216\u8005\u4e0a\u4f20\u5230ESXi\u7684\u5b58\u50a8\u3002\ufeff \u5728\u201c\u90e8\u7f72\u9009\u9879\u201d\u9875\u9762\uff0c\u53ef\u4ee5\u6839\u636e\u9700\u8981\u914d\u7f6e\u865a\u62df\u673a\u7684\u7f51\u7edc\u3001\u8d44\u6e90\u7b49\u8bbe\u7f6e\u3002\ufeff \u5982\u679c\u9047\u5230\u201c\u7f3a\u5c11\u78c1\u76d8\u955c\u50cf\u201d\u7b49\u62a5\u9519\uff0c\u53ef\u80fd\u662f\u7531\u4e8eOVF\u6587\u4ef6\u4e2d\u5f15\u7528\u7684\u78c1\u76d8\u6587\u4ef6\u8def\u5f84\u4e0d\u6b63\u786e\uff0c\u6216\u8005\u78c1\u76d8\u6587\u4ef6\u672a\u6b63\u786e\u4e0a\u4f20\u5230ESXi\u7684\u5b58\u50a8\uff0c\u9700\u8981\u68c0\u67e5\u5e76\u4fee\u6b63\u3002\ufeff \u5bf9\u4e8e\u67d0\u4e9bOVF\u6a21\u677f\uff0c\u53ef\u80fd\u9700\u8981\u8fdb\u884c\u4e00\u4e9b\u989d\u5916\u7684\u914d\u7f6e\uff0c\u4f8b\u5982\u4fee\u6539\u865a\u62df\u673a\u7684\u786c\u4ef6\u7248\u672c\u4ee5\u517c\u5bb9ESXi\u7248\u672c\u3002\ufeff \u901a\u8fc7\u4ee5\u4e0a\u6b65\u9aa4\uff0c\u60a8\u5c31\u53ef\u4ee5\u6210\u529f\u5730\u5728ESXi\u4e0a\u901a\u8fc7OVF/OVA\u955c\u50cf\u5b89\u88c5\u865a\u62df\u673a\u4e86","title":"1. \u51c6\u5907\u5de5\u4f5c"},{"location":"install-guide/vmwareExsi%E5%AE%89%E8%A3%85Ha/#2","text":"\u767b\u5f55\u5230ESXi\u4e3b\u673a\u7684Web\u754c\u9762\u3002 \u5728\u5de6\u4fa7\u5bfc\u822a\u680f\u4e2d\uff0c\u70b9\u51fb\u201c\u865a\u62df\u673a\u201d\u3002 \u70b9\u51fb\u201c\u521b\u5efa/\u6ce8\u518c\u865a\u62df\u673a\u201d\u6309\u94ae\u3002 \u9009\u62e9\u201c\u4eceOVF\u6216OVA\u6587\u4ef6\u90e8\u7f72\u865a\u62df\u673a\u201d\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002 \u8f93\u5165\u865a\u62df\u673a\u540d\u79f0\uff0c\u5e76\u9009\u62e9\u4e0b\u8f7d\u7684Home Assistant OVA\u6587\u4ef6\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002 \u9009\u62e9\u5b58\u50a8\u4f4d\u7f6e\uff0c\u901a\u5e38\u9009\u62e9\u9ed8\u8ba4\u7684\u5b58\u50a8\u4f4d\u7f6e\u5373\u53ef\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002 \u5728\u201c\u7f51\u7edc\u6620\u5c04\u201d\u9875\u9762\uff0c\u9009\u62e9\u9002\u5f53\u7684\u7f51\u7edc\u9002\u914d\u5668\uff08\u786e\u4fdd\u4f7f\u7528E1000\u6216E1000E\uff09\uff0c\u7136\u540e\u70b9\u51fb\u201c\u4e0b\u4e00\u9875\u201d\u3002 \u5728\u201c\u5373\u5c06\u5b8c\u6210\u201d\u9875\u9762\uff0c\u68c0\u67e5\u8bbe\u7f6e\uff0c\u7136\u540e\u70b9\u51fb\u201c\u5b8c\u6210\u201d\u3002 \u9875\u9762\u5e95\u90e8\u4f1a\u663e\u793a\u90e8\u7f72\u8fdb\u5ea6\uff0c\u7b49\u5f85\u90e8\u7f72\u5b8c\u6210\u3002 \u90e8\u7f72\u5b8c\u6210\u540e\uff0c\u60a8\u53ef\u4ee5\u5728\u865a\u62df\u673a\u5217\u8868\u4e2d\u770b\u5230\u65b0\u521b\u5efa\u7684Home Assistant\u865a\u62df\u673a\u3002 \u9009\u4e2dHome Assistant\u865a\u62df\u673a\uff0c\u70b9\u51fb\u201c\u542f\u52a8\u201d\u6309\u94ae\u6765\u542f\u52a8\u865a\u673a \u9996\u6b21\u542f\u52a8\u53ef\u80fd\u9700\u8981\u4e00\u4e9b\u65f6\u95f4\uff0c\u8bf7\u8010\u5fc3\u7b49\u5f85\u3002 \u770b\u5230ha> \u8fdb\u793a\u7b26\u540e\uff0c\u53ef\u4ee5\u8bd5\u7740\u8f93\u5165 ha \u547d\u4ee4\u6765\u68c0\u67e5Home Assistant\u7684\u72b6\u6001\u3002 \u4e0a\u8ff0\u72b6\u6001\uff0c\u5982\u679c\u663e\u793a \"System is not ready with state: setup\"\uff0c\u8bf4\u660e\u7cfb\u7edf\u6b63\u5728\u5b89\u88c5\u4e2d\uff0c\u8bf7\u8010\u5fc3\u7b49\u5f85\uff0c\u76f4\u5230\u7cfb\u7edf\u5b8c\u5168\u542f\u52a8\u540e\u518d\u8bbf\u95eeWeb\u754c\u9762\u3002\u9996\u6b21\u542f\u52a8 Home Assistant \u9700\u8981\u8f83\u957f\u65f6\u95f4\uff0c\u901a\u5e38\u9700\u8981 10-30 \u5206\u949f\uff0c\u8fd9\u53d6\u51b3\u4e8e\u60a8\u7684\u786c\u4ef6\u914d\u7f6e\u3002 \u7a0d\u7b49\u4e00\u4f1a\uff0c\u6211\u4eec\u518d\u6b21\u7528ha cli info\u6765\u67e5\u770b\u72b6\u6001 \u7136\u540e\u7528 ha network info \u6765\u67e5\u770b\u7f51\u7edc\u72b6\u6001,\u53ef\u89c1\u6211\u4eec\u7684IP\u5730\u5740\u662f:192.168.1.51,\u540e\u7eed\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e2aIP\u5730\u5740\u6765\u8bbf\u95eeHome Assistant\u7684Web\u754c\u9762\u3002 \u542f\u52a8\u540e\uff0c\u60a8\u53ef\u4ee5\u901a\u8fc7\u6d4f\u89c8\u5668\u8bbf\u95eeHome Assistant\u7684Web\u754c\u9762\uff0c\u901a\u5e38\u662f\u901a\u8fc7ESXi\u4e3b\u673a\u7684IP\u5730\u5740\u52a0\u4e0a\u7aef\u53e38123\u6765\u8bbf\u95ee\uff0c\u4f8b\u5982\uff1ahttp:// :8123\u3002 \u672c\u4f8b\u662fHttp://192.168.1.51:8123 \u5982\u4e0b\uff0c\u663e\u793a\uff0c\u8fd8\u5728\u5b89\u88c5\u4e2d \u7b49\u5f85\u5373\u53ef\uff0c\u540e\u7eed\u7684\u5b89\u88c5\u8c03\u8bd5\u7b49\uff0c\u89c1\u5176\u5b83\u6587\u6863\u3002","title":"2. \u5b89\u88c5\u6b65\u9aa4"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/","text":"ModbusPoll v7.0.0 \u4f7f\u7528\u6559\u7a0b \u00b6 \u76ee\u5f55 \u00b6 \u8f6f\u4ef6\u4ecb\u7ecd \u5b89\u88c5\u4e0e\u542f\u52a8 \u57fa\u672c\u914d\u7f6e \u8fde\u63a5\u8bbe\u7f6e \u6570\u636e\u8bfb\u53d6\u914d\u7f6e \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u901a\u4fe1\u5b9e\u4f8b \u6570\u636e\u76d1\u63a7\u4e0e\u5206\u6790 \u6545\u969c\u6392\u9664 \u9ad8\u7ea7\u529f\u80fd \u8f6f\u4ef6\u4ecb\u7ecd \u00b6 ModbusPoll\u662f\u4e00\u6b3e\u4e13\u4e1a\u7684Modbus\u4e3b\u673a\u4eff\u771f\u5668\u5de5\u5177\uff0c\u4e3b\u8981\u7528\u4e8e\uff1a - \u6d4b\u8bd5\u548c\u8c03\u8bd5Modbus\u4ece\u8bbe\u5907 - \u76d1\u63a7Modbus\u8bbe\u5907\u6570\u636e - \u9a8c\u8bc1\u8bbe\u5907\u901a\u4fe1\u534f\u8bae - \u6545\u969c\u8bca\u65ad\u548c\u6392\u9664 \u4e3b\u8981\u7279\u6027 \u00b6 \u652f\u6301Modbus RTU/ASCII/TCP\u534f\u8bae \u5b9e\u65f6\u6570\u636e\u76d1\u63a7 \u591a\u79cd\u6570\u636e\u683c\u5f0f\u663e\u793a \u65e5\u5fd7\u8bb0\u5f55\u529f\u80fd \u6279\u91cf\u8bfb\u53d6\u529f\u80fd \u5b89\u88c5\u4e0e\u542f\u52a8 \u00b6 \u7cfb\u7edf\u8981\u6c42 \u00b6 Windows 7/8/10/11 .NET Framework 4.0 \u6216\u66f4\u9ad8\u7248\u672c \u81f3\u5c1150MB\u53ef\u7528\u78c1\u76d8\u7a7a\u95f4 \u5b89\u88c5\u6b65\u9aa4 \u00b6 \u4e0b\u8f7dModbusPoll-v7.0.0\u5b89\u88c5\u5305 \u53f3\u952e\u70b9\u51fb\u5b89\u88c5\u5305\uff0c\u9009\u62e9\"\u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884c\" \u6309\u7167\u5b89\u88c5\u5411\u5bfc\u5b8c\u6210\u5b89\u88c5 \u542f\u52a8\u7a0b\u5e8f\uff1a\u5f00\u59cb\u83dc\u5355 \u2192 ModbusPoll \u9996\u6b21\u542f\u52a8 \u00b6 \u542f\u52a8\u540e\u4f1a\u663e\u793a\u4e3b\u754c\u9762\uff0c\u5305\u542b\uff1a - \u83dc\u5355\u680f\uff1a\u6587\u4ef6\u3001\u8fde\u63a5\u3001\u8bbe\u7f6e\u7b49 - \u5de5\u5177\u680f\uff1a\u5e38\u7528\u529f\u80fd\u5feb\u6377\u6309\u94ae - \u6570\u636e\u663e\u793a\u533a\u57df\uff1a\u5bc4\u5b58\u5668\u6570\u636e\u8868\u683c - \u72b6\u6001\u680f\uff1a\u8fde\u63a5\u72b6\u6001\u548c\u7edf\u8ba1\u4fe1\u606f \u57fa\u672c\u914d\u7f6e \u00b6 \u8fde\u63a5\u8bbe\u7f6e \u00b6 \u4e32\u53e3\u8fde\u63a5\uff08RTU/ASCII\uff09 Connection \u2192 Connect \u6216\u70b9\u51fb\u5de5\u5177\u680f\u8fde\u63a5\u56fe\u6807 \u8fde\u63a5\u53c2\u6570\u914d\u7f6e Port : \u9009\u62e9\u4e32\u53e3\uff08COM1, COM2\u7b49\uff09 Baud Rate : \u6ce2\u7279\u7387\uff08\u5e38\u75289600, 19200, 38400\uff09 Data Bits : \u6570\u636e\u4f4d\uff08\u901a\u5e38\u4e3a8\uff09 Parity : \u6821\u9a8c\u4f4d\uff08None, Even, Odd\uff09 Stop Bits : \u505c\u6b62\u4f4d\uff081\u62162\uff09 Mode : \u9009\u62e9RTU\u6216ASCII TCP\u8fde\u63a5\u8bbe\u7f6e IP Address : \u8bbe\u5907IP\u5730\u5740 Port : \u7aef\u53e3\u53f7\uff08\u9ed8\u8ba4502\uff09 Unit ID : \u4ece\u7ad9\u5730\u5740 \u8fde\u63a5\u8bbe\u7f6e \u00b6 \u4e32\u53e3\u8fde\u63a5\u793a\u4f8b \u00b6 \u4ee5\u6c34\u5904\u7406\u673a\u4e3a\u4f8b\uff1a - Port: COM1 - Baud Rate: 9600 - Data Bits: 8 - Parity: None - Stop Bits: 1 - Mode: RTU - Response timeout: 1000ms - Delay between polls: 100ms TCP\u8fde\u63a5\u793a\u4f8b \u00b6 \u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u7f51\u7edc\u8fde\u63a5\uff1a - IP Address: 192.168.1.100 - Port: 502 - Unit ID: 1 - Response timeout: 3000ms - Delay between polls: 500ms \u6570\u636e\u8bfb\u53d6\u914d\u7f6e \u00b6 \u8bbe\u7f6e\u8bfb\u53d6\u53c2\u6570 \u00b6 Setup \u2192 Read/Write Definition \u914d\u7f6e\u8bfb\u53d6\u53c2\u6570\uff1a Slave ID : \u4ece\u7ad9\u5730\u5740\uff081-247\uff09 Function : \u529f\u80fd\u7801 01: \u8bfb\u53d6\u7ebf\u5708\u72b6\u6001 02: \u8bfb\u53d6\u8f93\u5165\u72b6\u6001 03: \u8bfb\u53d6\u4fdd\u6301\u5bc4\u5b58\u5668 04: \u8bfb\u53d6\u8f93\u5165\u5bc4\u5b58\u5668 Address : \u8d77\u59cb\u5730\u5740 Quantity : \u8bfb\u53d6\u6570\u91cf Scan Rate : \u626b\u63cf\u9891\u7387\uff08ms\uff09 \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u53c2\u6570\u914d\u7f6e\u793a\u4f8b \u00b6 \u6e29\u5ea6\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 03 (Read Holding Registers) - Address: 23 (0x0017) - Quantity: 2 - Scan Rate: 1000ms \u4f9b\u6db2\u538b\u529b\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 03 - Address: 25 (0x0019) - Quantity: 2 - Scan Rate: 500ms \u6db2\u4f4d\u72b6\u6001\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 01 (Read Coils) - Address: 0x0001 - Quantity: 16 - Scan Rate: 2000ms \u7535\u5bfc\u7387\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 03 - Address: 24 (0x0018) - Quantity: 2 - Scan Rate: 1000ms PH\u503c\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 03 - Address: 29 (0x001D) - Quantity: 2 - Scan Rate: 1000ms \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u901a\u4fe1\u5b9e\u4f8b \u00b6 \u6c34\u5904\u7406\u673a\u53c2\u6570\u8bfb\u53d6 \u00b6 \u6839\u636e\u6c34\u5904\u7406\u8bbe\u5907\u901a\u4fe1\u534f\u8bae\u914d\u7f6e\uff1a 1. \u6e29\u5ea6\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x0017\uff09 - Function: 03 - Address: 23 (0x0017) - Quantity: 2 - Data Format: Float (4\u5b57\u8282) 2. \u7535\u5bfc\u7387\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x0018\uff09 - Function: 03 - Address: 24 (0x0018) - Quantity: 2 - Data Format: Float 3. \u4f9b\u6db2\u538b\u529b\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x0019-0x001A\uff09 - Function: 03 - Address: 25 (0x0019) - Quantity: 4 - Data Format: Float (\u4f9b\u6db2\u4e00\u3001\u4f9b\u6db2\u4e8c\u538b\u529b) 4. \u6db2\u4f4d\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x001B-0x001C\uff09 - Function: 03 - Address: 27 (0x001B) - Quantity: 4 - Data Format: Float (\u50a8\u6db2\u3001\u914d\u6db2\u6db2\u4f4d) 5. PH\u503c\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x001D\uff09 - Function: 03 - Address: 29 (0x001D) - Quantity: 2 - Data Format: Float \u6279\u91cf\u8bfb\u53d6\u914d\u7f6e \u00b6 Setup \u2192 Read/Write Definition \u2192 Add Multiple \u521b\u5efa\u591a\u4e2a\u8bfb\u53d6\u7ec4\uff1a - \u7ec41\uff1a\u6e29\u5ea6\u76f8\u5173\u53c2\u6570 (0x0017-0x0018) - \u7ec42\uff1a\u538b\u529b\u76f8\u5173\u53c2\u6570 (0x0019-0x001A) - \u7ec43\uff1a\u6db2\u4f4d\u76f8\u5173\u53c2\u6570 (0x001B-0x001C) - \u7ec44\uff1aPH\u503c\u53c2\u6570 (0x001D) - \u7ec45\uff1a\u72b6\u6001\u76f8\u5173\u53c2\u6570 (0x0001-0x0010) \u6570\u636e\u76d1\u63a7\u4e0e\u5206\u6790 \u00b6 \u6570\u636e\u663e\u793a\u683c\u5f0f \u00b6 Display \u2192 Data Format \u9009\u62e9\u5408\u9002\u7684\u663e\u793a\u683c\u5f0f\uff1a Signed/Unsigned : \u6709\u7b26\u53f7/\u65e0\u7b26\u53f7 16-bit/32-bit : \u6570\u636e\u4f4d\u6570 Hex/Decimal/Binary : \u8fdb\u5236\u663e\u793a Float : \u6d6e\u70b9\u6570\u663e\u793a \u5b57\u8282\u5e8f\u914d\u7f6e\u8be6\u89e3 \u00b6 \u91cd\u8981 \uff1a\u6b63\u786e\u7684\u5b57\u8282\u5e8f\u8bbe\u7f6e\u662f\u6570\u636e\u6b63\u786e\u663e\u793a\u7684\u5173\u952e \u914d\u7f6e\u6b65\u9aa4 \uff1a 1. Display \u2192 Data Format \u2192 Advanced 2. \u5b57\u8282\u5e8f\u9009\u9879 \uff1a ``` \u25a1 Byte Swap - \u5b57\u8282\u4ea4\u6362 \u25a1 Word Swap - \u5b57\u4ea4\u6362 \u56db\u79cd\u7ec4\u5408\u5bf9\u5e94\u4e0d\u540c\u5b57\u8282\u5e8f\uff1a \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510 \u2502 \u9009\u9879\u7ec4\u5408 \u2502 \u5b57\u8282\u5e8f \u2502 \u793a\u4f8b \u2502 \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524 \u2502 \u65e0\u52fe\u9009 \u2502 ABCD \u2502 42 0C CC CD \u2502 \u2502 Byte Swap \u2502 BADC \u2502 0C 42 CD CC \u2502 \u2502 Word Swap \u2502 CDAB \u2502 CC CD 42 0C \u2502 \u2502 Both \u2502 DCBA \u2502 CD CC 0C 42 \u2502 \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518 ``` \u5b9e\u9645\u9a8c\u8bc1\u65b9\u6cd5 \uff1a \u57fa\u4e8e\u60a8\u7684\u901a\u4fe1\u6570\u636e CD CC 0C 42\uff1a 1. \u5c1d\u8bd5DCBA\u683c\u5f0f\uff1aCD CC 0C 42 \u2192 35.2\u00b0C \u2713 2. \u5176\u4ed6\u683c\u5f0f\u90fd\u4f1a\u663e\u793a\u5f02\u5e38\u503c 3. \u56e0\u6b64\u60a8\u7684\u8bbe\u5907\u4f7f\u7528DCBA\u5b57\u8282\u5e8f \u914d\u7f6e\u5efa\u8bae \uff1a - \u6c34\u5904\u7406\u8bbe\u5907\u901a\u5e38\u4f7f\u7528\u5927\u7aef\u5e8f(ABCD) - PC-based\u8bbe\u5907\u901a\u5e38\u4f7f\u7528\u5c0f\u7aef\u5e8f(DCBA) - \u6839\u636e\u5b9e\u9645\u6570\u636e\u9a8c\u8bc1\u9009\u62e9\u6b63\u786e\u683c\u5f0f \u5b9e\u65f6\u76d1\u63a7 \u00b6 View\u83dc\u5355\u9009\u9879\uff1a - Data View: \u6570\u636e\u8868\u683c\u89c6\u56fe - Register View: \u5bc4\u5b58\u5668\u89c6\u56fe - Traffic View: \u901a\u4fe1\u6d41\u91cf\u89c6\u56fe - Error View: \u9519\u8bef\u65e5\u5fd7\u89c6\u56fe \u6570\u636e\u8bb0\u5f55 \u00b6 Log \u2192 Start Logging \u8bbe\u7f6e\u65e5\u5fd7\u6587\u4ef6\u8def\u5f84\u548c\u683c\u5f0f \u9009\u62e9\u8bb0\u5f55\u95f4\u9694\u548c\u6761\u4ef6 \u5f00\u59cb\u8bb0\u5f55\u6570\u636e\u53d8\u5316 \u544a\u8b66\u8bbe\u7f6e \u00b6 Setup \u2192 Alarm Setup \u914d\u7f6e\u544a\u8b66\u6761\u4ef6\uff1a - \u6c34\u6e29\u8d85\u9650\uff1a> 40\u00b0C \u6216 < 35\u00b0C - \u4f9b\u6db2\u538b\u529b\u5f02\u5e38\uff1a< 0.1MPa \u6216 > 0.5MPa - \u7535\u5bfc\u7387\u5f02\u5e38\uff1a< 13.0 \u6216 > 15.0 mS/cm - \u8bbe\u5907\u79bb\u7ebf\uff1a\u901a\u4fe1\u8d85\u65f6 > 5\u79d2 \u6545\u969c\u6392\u9664 \u00b6 \u5e38\u89c1\u95ee\u9898\u53ca\u89e3\u51b3\u65b9\u6848 \u00b6 1. \u8fde\u63a5\u5931\u8d25 \u00b6 \u95ee\u9898\uff1a\u65e0\u6cd5\u8fde\u63a5\u5230\u8bbe\u5907 \u89e3\u51b3\u65b9\u6848\uff1a - \u68c0\u67e5\u4e32\u53e3/\u7f51\u7edc\u8fde\u63a5 - \u786e\u8ba4\u6ce2\u7279\u7387\u548c\u901a\u4fe1\u53c2\u6570 - \u68c0\u67e5\u8bbe\u5907\u5730\u5740\u662f\u5426\u6b63\u786e - \u9a8c\u8bc1\u7535\u7f06\u8fde\u63a5 2. \u6570\u636e\u8bfb\u53d6\u5f02\u5e38 \u00b6 \u95ee\u9898\uff1a\u8bfb\u53d6\u6570\u636e\u5168\u4e3a0\u6216\u5f02\u5e38\u503c \u89e3\u51b3\u65b9\u6848\uff1a - \u68c0\u67e5\u529f\u80fd\u7801\u662f\u5426\u6b63\u786e - \u786e\u8ba4\u5bc4\u5b58\u5668\u5730\u5740 - \u68c0\u67e5\u6570\u636e\u683c\u5f0f\u8bbe\u7f6e - \u9a8c\u8bc1\u8bbe\u5907\u662f\u5426\u652f\u6301\u8be5\u529f\u80fd 3. \u901a\u4fe1\u8d85\u65f6 \u00b6 \u95ee\u9898\uff1a\u9891\u7e41\u51fa\u73b0\u901a\u4fe1\u8d85\u65f6 \u89e3\u51b3\u65b9\u6848\uff1a - \u589e\u52a0Response Timeout\u65f6\u95f4 - \u51cf\u5c11\u626b\u63cf\u9891\u7387 - \u68c0\u67e5\u7f51\u7edc\u7a33\u5b9a\u6027 - \u786e\u8ba4\u8bbe\u5907\u8d1f\u8f7d\u60c5\u51b5 4. \u6570\u636e\u683c\u5f0f\u9519\u8bef \u00b6 \u95ee\u9898\uff1a\u6570\u636e\u663e\u793a\u683c\u5f0f\u4e0d\u6b63\u786e \u89e3\u51b3\u65b9\u6848\uff1a - \u68c0\u67e5\u5b57\u8282\u5e8f\u8bbe\u7f6e\uff08\u5927\u7aef/\u5c0f\u7aef\uff09 - \u786e\u8ba4\u6570\u636e\u7c7b\u578b\uff08\u6574\u6570/\u6d6e\u70b9\uff09 - \u8c03\u6574\u6570\u636e\u4f4d\u6570\u8bbe\u7f6e - \u53c2\u8003\u8bbe\u5907\u624b\u518c\u786e\u8ba4\u683c\u5f0f 5. \u5b57\u8282\u5e8f\u95ee\u9898\u8bca\u65ad \u00b6 \u95ee\u9898\uff1a\u6570\u636e\u6570\u503c\u5f02\u5e38\uff08\u8fc7\u5927\u6216\u8fc7\u5c0f\uff09 \u75c7\u72b6\uff1a - \u6e29\u5ea6\u663e\u793a\u51e0\u5343\u5ea6\u6216\u8d1f\u503c - \u538b\u529b\u663e\u793a\u5f02\u5e38\u5927\u7684\u6570\u503c - \u7535\u5bfc\u7387\u663e\u793a\u4e0d\u5408\u7406\u6570\u503c \u89e3\u51b3\u6b65\u9aa4\uff1a 1. \u67e5\u770bTraffic View\u4e2d\u7684\u539f\u59cb\u5341\u516d\u8fdb\u5236\u6570\u636e 2. \u5c1d\u8bd5\u4e0d\u540c\u5b57\u8282\u5e8f\u7ec4\u5408\uff1a - Display \u2192 Data Format \u2192 Byte Swap - Display \u2192 Data Format \u2192 Word Swap 3. \u9009\u62e9\u663e\u793a\u5408\u7406\u6570\u503c\u7684\u7ec4\u5408 4. \u9a8c\u8bc1\u591a\u4e2a\u53c2\u6570\u786e\u4fdd\u8bbe\u7f6e\u6b63\u786e \u5b9e\u4f8b\uff1a \u539f\u59cb\u6570\u636e\uff1aCD CC 0C 42 - \u9ed8\u8ba4(ABCD)\uff1a\u5f02\u5e38\u503c - Byte swap(BADC)\uff1a\u5f02\u5e38\u503c - Word swap(CDAB)\uff1a\u5f02\u5e38\u503c - Byte+Word(DCBA)\uff1a35.2\u00b0C \u2713\u6b63\u786e \u9ad8\u7ea7\u529f\u80fd \u00b6 1. \u811a\u672c\u81ea\u52a8\u5316 \u00b6 Tools \u2192 Scripting \u652f\u6301VB\u811a\u672c\u81ea\u52a8\u5316\uff1a - \u81ea\u52a8\u8fde\u63a5\u8bbe\u5907 - \u6279\u91cf\u6570\u636e\u5904\u7406 - \u6761\u4ef6\u89e6\u53d1\u64cd\u4f5c - \u62a5\u544a\u751f\u6210 2. \u6570\u636e\u5bfc\u51fa \u00b6 File \u2192 Export Data \u652f\u6301\u591a\u79cd\u683c\u5f0f\uff1a - CSV\u6587\u4ef6 - Excel\u6587\u4ef6 - XML\u683c\u5f0f - \u81ea\u5b9a\u4e49\u683c\u5f0f 3. \u591a\u8bbe\u5907\u76d1\u63a7 \u00b6 \u53ef\u540c\u65f6\u76d1\u63a7\u591a\u4e2a\u8bbe\u5907\uff1a 1. File \u2192 New Document 2. \u914d\u7f6e\u4e0d\u540c\u8bbe\u5907\u53c2\u6570 3. Window \u2192 Tile \u5e73\u94fa\u663e\u793a 4. \u5b9e\u73b0\u591a\u8bbe\u5907\u96c6\u4e2d\u76d1\u63a7 4. \u8d8b\u52bf\u5206\u6790 \u00b6 View \u2192 Trend View \u529f\u80fd\u7279\u6027\uff1a - \u5b9e\u65f6\u8d8b\u52bf\u56fe\u8868 - \u5386\u53f2\u6570\u636e\u56de\u653e - \u6570\u636e\u7edf\u8ba1\u5206\u6790 - \u5f02\u5e38\u70b9\u6807\u8bb0 \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u76d1\u63a7\u5b9e\u6218 \u00b6 \u5b8c\u6574\u76d1\u63a7\u914d\u7f6e \u00b6 # \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u76d1\u63a7\u914d\u7f6e\u793a\u4f8b \u8bbe\u5907\u4fe1\u606f : \u8bbe\u5907\u578b\u53f7 : \u6c34\u5904\u7406\u673a+\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907 \u901a\u4fe1\u65b9\u5f0f : Modbus RTU/TCP \u6ce2\u7279\u7387 : 9600 \u4ece\u7ad9\u5730\u5740 : 1 \u76d1\u63a7\u53c2\u6570 : \u6e29\u5ea6\u76d1\u63a7 : \u5730\u5740 : 0x0017 \u5355\u4f4d : \u00b0C \u544a\u8b66 : 35-40\u00b0C \u7535\u5bfc\u7387\u76d1\u63a7 : \u5730\u5740 : 0x0018 \u5355\u4f4d : mS/cm \u544a\u8b66 : 13.0-15.0 \u538b\u529b\u76d1\u63a7 : \u4f9b\u6db2\u4e00 : 0x0019 \u4f9b\u6db2\u4e8c : 0x001A \u5355\u4f4d : MPa \u544a\u8b66 : 0.1-0.5 \u6db2\u4f4d\u76d1\u63a7 : \u50a8\u6db2 : 0x001B \u914d\u6db2 : 0x001C \u5355\u4f4d : % \u544a\u8b66 : 10-90% PH\u503c\u76d1\u63a7 : \u5730\u5740 : 0x001D \u5355\u4f4d : pH \u544a\u8b66 : 6.5-7.5 \u626b\u63cf\u8bbe\u7f6e : \u6b63\u5e38\u626b\u63cf : 1000ms \u5feb\u901f\u626b\u63cf : 500ms \u6162\u901f\u626b\u63cf : 2000ms \u901a\u4fe1\u534f\u8bae\u5206\u6790 : \u57fa\u4e8e\u5b9e\u9645\u901a\u4fe1\u6570\u636e : - \u4f7f\u7528Modbus TCP\u534f\u8bae - \u529f\u80fd\u780103 (Read Holding Registers) - \u8d77\u59cb\u5730\u5740 : 0x0017 (\u6e29\u5ea6) - \u6570\u636e\u683c\u5f0f : 32\u4f4d\u6d6e\u70b9\u6570 (IEEE 754) - \u5b57\u8282\u5e8f\u5206\u6790 : * \u539f\u59cb\u6570\u636e : CD CC 0C 42 * \u9700\u8981DCBA\u5b57\u8282\u5e8f (Byte+Word Swap) * \u89e3\u6790\u7ed3\u679c : 35.2\u00b0C - \u6570\u636e\u793a\u4f8b\u9a8c\u8bc1 : * CD CC 0C 42 (\u5341\u516d\u8fdb\u5236) * \u2192 0x420CCCCD (\u91cd\u6392\u540e) * \u2192 35.2000008 (IEEE 754\u6d6e\u70b9\u6570) * \u2192 35.2\u00b0C (\u663e\u793a\u503c) \u914d\u7f6e\u8981\u70b9 : - ModbusPoll\u8bbe\u7f6e : Display \u2192 Data Format - \u52fe\u9009 : Byte Swap + Word Swap - \u6570\u636e\u7c7b\u578b : 32-bit Float - \u9a8c\u8bc1\u65b9\u6cd5 : \u89c2\u5bdf\u6e29\u5ea6\u662f\u5426\u5728\u5408\u7406\u8303\u56f4(30-50\u00b0C) \u81ea\u52a8\u5316\u811a\u672c\u793a\u4f8b \u00b6 ' \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u72b6\u6001\u68c0\u67e5\u811a\u672c Sub CheckWaterTreatmentStatus () Dim temp , pressure1 , pressure2 , conductivity , ph ' \u8bfb\u53d6\u6e29\u5ea6 (\u5730\u574023) temp = mbPoll . ReadFloat ( 1 , 3 , 23 ) ' \u8bfb\u53d6\u538b\u529b (\u5730\u574025,26) pressure1 = mbPoll . ReadFloat ( 1 , 3 , 25 ) pressure2 = mbPoll . ReadFloat ( 1 , 3 , 26 ) ' \u8bfb\u53d6\u7535\u5bfc\u7387 (\u5730\u574024) conductivity = mbPoll . ReadFloat ( 1 , 3 , 24 ) ' \u8bfb\u53d6PH\u503c (\u5730\u574029) ph = mbPoll . ReadFloat ( 1 , 3 , 29 ) ' \u68c0\u67e5\u5f02\u5e38 If temp > 40 Or temp < 35 Then MsgBox \"\u6c34\u6e29\u5f02\u5e38: \" & temp & \"\u00b0C\" End If If pressure1 < 0.1 Or pressure1 > 0.5 Then MsgBox \"\u4f9b\u6db2\u4e00\u538b\u529b\u5f02\u5e38: \" & pressure1 & \"MPa\" End If If conductivity < 13.0 Or conductivity > 15.0 Then MsgBox \"\u7535\u5bfc\u7387\u5f02\u5e38: \" & conductivity & \"mS/cm\" End If If ph < 6.5 Or ph > 7.5 Then MsgBox \"PH\u503c\u5f02\u5e38: \" & ph End If End Sub \u6700\u4f73\u5b9e\u8df5\u5efa\u8bae \u00b6 1. \u6027\u80fd\u4f18\u5316 \u00b6 \u5408\u7406\u8bbe\u7f6e\u626b\u63cf\u9891\u7387\uff0c\u907f\u514d\u8fc7\u5ea6\u8f6e\u8be2 \u4f7f\u7528\u6279\u91cf\u8bfb\u53d6\u51cf\u5c11\u901a\u4fe1\u6b21\u6570 \u5b9a\u671f\u6e05\u7406\u65e5\u5fd7\u6587\u4ef6 \u76d1\u63a7\u7cfb\u7edf\u8d44\u6e90\u4f7f\u7528\u60c5\u51b5 2. \u6570\u636e\u7ba1\u7406 \u00b6 \u5efa\u7acb\u89c4\u8303\u7684\u53c2\u6570\u547d\u540d\u89c4\u5219 \u5b9a\u671f\u5907\u4efd\u91cd\u8981\u914d\u7f6e \u8bbe\u7f6e\u5408\u7406\u7684\u6570\u636e\u4fdd\u5b58\u5468\u671f \u5b9e\u65bd\u6570\u636e\u5b89\u5168\u63aa\u65bd 3. \u7ef4\u62a4\u5efa\u8bae \u00b6 \u5b9a\u671f\u68c0\u67e5\u901a\u4fe1\u7ebf\u8def \u66f4\u65b0\u8bbe\u5907\u9a71\u52a8\u7a0b\u5e8f \u5907\u4efd\u5de5\u7a0b\u914d\u7f6e\u6587\u4ef6 \u5efa\u7acb\u6545\u969c\u5904\u7406\u6d41\u7a0b \u9644\u5f55 \u00b6 A. Modbus\u529f\u80fd\u7801\u5bf9\u7167\u8868 \u00b6 01 - Read Coils (\u8bfb\u53d6\u7ebf\u5708\u72b6\u6001) 02 - Read Discrete Inputs (\u8bfb\u53d6\u79bb\u6563\u8f93\u5165) 03 - Read Holding Registers (\u8bfb\u53d6\u4fdd\u6301\u5bc4\u5b58\u5668) 04 - Read Input Registers (\u8bfb\u53d6\u8f93\u5165\u5bc4\u5b58\u5668) 05 - Write Single Coil (\u5199\u5355\u4e2a\u7ebf\u5708) 06 - Write Single Register (\u5199\u5355\u4e2a\u5bc4\u5b58\u5668) 15 - Write Multiple Coils (\u5199\u591a\u4e2a\u7ebf\u5708) 16 - Write Multiple Registers (\u5199\u591a\u4e2a\u5bc4\u5b58\u5668) B. \u5e38\u7528\u6ce2\u7279\u7387\u8bbe\u7f6e \u00b6 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 C. \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u5e38\u7528\u5730\u5740\u6620\u5c04 \u00b6 \u57fa\u4e8e\u5b9e\u9645\u901a\u4fe1\u6570\u636e\u7684\u5730\u5740\u6620\u5c04\uff1a \u6e29\u5ea6\uff1a0x0017 (\u5341\u8fdb\u523623) \u7535\u5bfc\u7387\uff1a0x0018 (\u5341\u8fdb\u523624) \u4f9b\u6db2\u4e00\u538b\u529b\uff1a0x0019 (\u5341\u8fdb\u523625) \u4f9b\u6db2\u4e8c\u538b\u529b\uff1a0x001A (\u5341\u8fdb\u523626) \u50a8\u6db2\u6db2\u4f4d\uff1a0x001B (\u5341\u8fdb\u523627) \u914d\u6db2\u6db2\u4f4d\uff1a0x001C (\u5341\u8fdb\u523628) PH\u503c\uff1a0x001D (\u5341\u8fdb\u523629) \u72b6\u6001\u7c7b\uff1a0x0001-0x0010 \u63a7\u5236\u7c7b\uff1a0x0020-0x0030 D. \u5927\u7aef\u5c0f\u7aef\uff08\u5b57\u8282\u5e8f\uff09\u8be6\u89e3 \u00b6 \u4ec0\u4e48\u662f\u5927\u7aef\u5c0f\u7aef\uff1f \u00b6 \u5b57\u8282\u5e8f\uff08Byte Order\uff09\u662f\u6307\u591a\u5b57\u8282\u6570\u636e\u5728\u5185\u5b58\u4e2d\u7684\u5b58\u50a8\u987a\u5e8f\uff0c\u4e3b\u8981\u6709\u4e24\u79cd\uff1a \u5927\u7aef\u5e8f\uff08Big Endian\uff09 \uff1a - \u9ad8\u4f4d\u5b57\u8282\u5b58\u50a8\u5728\u4f4e\u5730\u5740 - \u7b26\u5408\u4eba\u7c7b\u9605\u8bfb\u4e60\u60ef - \u7f51\u7edc\u4f20\u8f93\u6807\u51c6\u5b57\u8282\u5e8f \u5c0f\u7aef\u5e8f\uff08Little Endian\uff09 \uff1a - \u4f4e\u4f4d\u5b57\u8282\u5b58\u50a8\u5728\u4f4e\u5730\u5740 - \u591a\u6570x86\u5904\u7406\u5668\u91c7\u7528 - Intel\u67b6\u6784\u9ed8\u8ba4\u5b57\u8282\u5e8f \u5b9e\u9645\u4f8b\u5b50\u8bf4\u660e \u00b6 \u4ee532\u4f4d\u6d6e\u70b9\u6570 35.2\u00b0C \u4e3a\u4f8b\uff1a IEEE 754 \u6d6e\u70b9\u6570\u8868\u793a\uff1a0x420C_CCCD \u5927\u7aef\u5e8f\u5b58\u50a8\uff1a \u5730\u5740 \u5185\u5bb9 0x1000 0x42 (\u6700\u9ad8\u4f4d\u5b57\u8282) 0x1001 0x0C 0x1002 0xCC 0x1003 0xCD (\u6700\u4f4e\u4f4d\u5b57\u8282) \u5c0f\u7aef\u5e8f\u5b58\u50a8\uff1a \u5730\u5740 \u5185\u5bb9 0x1000 0xCD (\u6700\u4f4e\u4f4d\u5b57\u8282) 0x1001 0xCC 0x1002 0x0C 0x1003 0x42 (\u6700\u9ad8\u4f4d\u5b57\u8282) \u5982\u4f55\u786e\u5b9a\u8bbe\u5907\u5b57\u8282\u5e8f\uff1f \u00b6 \u65b9\u6cd51\uff1a\u901a\u8fc7\u901a\u4fe1\u6570\u636e\u5206\u6790 \u4ececommdata.txt\u770b\u5230\u7684\u6570\u636e\uff1aCD CC 0C 42 1. \u5c06\u8fd94\u4e2a\u5b57\u8282\u6309\u4e0d\u540c\u5b57\u8282\u5e8f\u89e3\u91ca\uff1a - \u5927\u7aef\u5e8f\uff1a0x42_0C_CCCD = 35.2 (\u5408\u7406\u7684\u6e29\u5ea6\u503c) - \u5c0f\u7aef\u5e8f\uff1a0xCDCC_0C42 = \u975e\u5e38\u5927\u7684\u6570\u503c(\u4e0d\u5408\u7406) 2. \u7ed3\u8bba\uff1a\u8bbe\u5907\u4f7f\u7528\u5927\u7aef\u5e8f \u65b9\u6cd52\uff1a\u67e5\u770b\u8bbe\u5907\u624b\u518c \u8bbe\u5907\u6280\u672f\u6587\u6863\u901a\u5e38\u4f1a\u8bf4\u660e\uff1a - \"\u7f51\u7edc\u5b57\u8282\u5e8f\" = \u5927\u7aef\u5e8f - \"\u4e3b\u673a\u5b57\u8282\u5e8f\" = \u901a\u5e38\u662f\u5c0f\u7aef\u5e8f - \"Intel\u683c\u5f0f\" = \u5c0f\u7aef\u5e8f - \"Motorola\u683c\u5f0f\" = \u5927\u7aef\u5e8f \u65b9\u6cd53\uff1aModbusPoll\u4e2d\u7684\u9a8c\u8bc1 \u5728ModbusPoll\u4e2d\u6d4b\u8bd5\uff1a 1. Setup \u2192 Data Format \u2192 Byte Swap 2. \u89c2\u5bdf\u6570\u636e\u662f\u5426\u5408\u7406\uff1a - \u6e29\u5ea6\u5e94\u8be5\u57280-100\u00b0C\u8303\u56f4 - \u538b\u529b\u5e94\u8be5\u57280-10MPa\u8303\u56f4 - \u7535\u5bfc\u7387\u5e94\u8be5\u572810-20mS/cm\u8303\u56f4 3. \u9009\u62e9\u663e\u793a\u6b63\u786e\u6570\u503c\u7684\u5b57\u8282\u5e8f ModbusPoll\u5b57\u8282\u5e8f\u8bbe\u7f6e \u00b6 \u914d\u7f6e\u8def\u5f84 \uff1aDisplay \u2192 Data Format \u9009\u9879\u8bf4\u660e \uff1a \u25a1 Byte swap - \u4ea4\u6362\u5b57\u8282\u5e8f \u25a1 Word swap - \u4ea4\u6362\u5b57\u987a\u5e8f \u25a1 Dword swap - \u4ea4\u6362\u53cc\u5b57\u987a\u5e8f \u7ec4\u5408\u8bbe\u7f6e\u5bf9\u5e94\u4e0d\u540c\u683c\u5f0f\uff1a - \u65e0\u52fe\u9009\uff1aABCD (\u5927\u7aef\u5e8f) - Byte swap\uff1aBADC - Word swap\uff1aCDAB - Byte+Word swap\uff1aDCBA (\u5c0f\u7aef\u5e8f) \u5b9e\u9645\u5e94\u7528\u793a\u4f8b \u00b6 \u6848\u4f8b1\uff1a\u6e29\u5ea6\u8bfb\u53d6\u5f02\u5e38 \u95ee\u9898\uff1a\u8bfb\u53d6\u6e29\u5ea6\u663e\u793a\u4e3a\u51e0\u5343\u5ea6 \u539f\u56e0\uff1a\u5b57\u8282\u5e8f\u8bbe\u7f6e\u9519\u8bef \u89e3\u51b3\uff1a\u52fe\u9009\"Byte swap\"\u8c03\u6574\u5b57\u8282\u5e8f \u6848\u4f8b2\uff1a\u538b\u529b\u503c\u663e\u793a\u5f02\u5e38 \u8bfb\u53d6\u6570\u636e\uff1a12 34 56 78 \u5927\u7aef\u5e8f\u89e3\u91ca\uff1a0x12345678 = 305,419,896 (\u5f02\u5e38) \u5c0f\u7aef\u5e8f\u89e3\u91ca\uff1a0x78563412 = 2,018,915,346 (\u5f02\u5e38) \u9700\u8981Word swap\uff1a0x34127856 = 873,756,758 (\u4ecd\u5f02\u5e38) \u6b63\u786e\u8bbe\u7f6e\uff1aByte+Word swap = 0x78563412\u8f6c\u6362\u4e3a\u6d6e\u70b9\u6570 \u8c03\u8bd5\u6280\u5de7 \u00b6 \u6b65\u9aa41\uff1a\u8bb0\u5f55\u539f\u59cb\u6570\u636e \u4f7f\u7528Traffic View\u67e5\u770b\u539f\u59cb\u5341\u516d\u8fdb\u5236\u6570\u636e \u4f8b\u5982\uff1a42 0C CC CD \u6b65\u9aa42\uff1a\u624b\u52a8\u8ba1\u7b97\u9a8c\u8bc1 \u4f7f\u7528\u5728\u7ebfIEEE 754\u8f6c\u6362\u5668\uff1a - \u8f93\u5165\uff1a420CCCCD - \u8f93\u51fa\uff1a35.2000008... - \u9a8c\u8bc1\u662f\u5426\u4e3a\u5408\u7406\u6570\u503c \u6b65\u9aa43\uff1aModbusPoll\u4e2d\u6d4b\u8bd5 \u4f9d\u6b21\u5c1d\u8bd5\u56db\u79cd\u5b57\u8282\u5e8f\u7ec4\u5408\uff1a 1. ABCD - \u539f\u59cb\u987a\u5e8f 2. BADC - Byte swap 3. CDAB - Word swap 4. DCBA - Byte+Word swap \u9009\u62e9\u663e\u793a\u5408\u7406\u6570\u503c\u7684\u8bbe\u7f6e \u5e38\u89c1\u8bbe\u5907\u5b57\u8282\u5e8f \u00b6 \u5927\u7aef\u5e8f\u8bbe\u5907\uff1a - \u65bd\u8010\u5fb7PLC - \u897f\u95e8\u5b50S7\u7cfb\u5217 - ABB\u8bbe\u5907 - \u5927\u591a\u6570\u7f51\u7edc\u8bbe\u5907 \u5c0f\u7aef\u5e8f\u8bbe\u5907\uff1a - \u4e09\u83f1PLC - \u6b27\u59c6\u9f99PLC - PC-based\u63a7\u5236\u5668 - Intel\u67b6\u6784\u8bbe\u5907 \u672c\u6559\u7a0b\u57fa\u4e8eModbusPoll v7.0.0\u7248\u672c\u7f16\u5199\uff0c\u9002\u7528\u4e8e\u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u53c2\u6570\u76d1\u63a7\u7cfb\u7edf\u3002\u5982\u6709\u95ee\u9898\u8bf7\u53c2\u8003\u5b98\u65b9\u6587\u6863\u6216\u8054\u7cfb\u6280\u672f\u652f\u6301\u3002","title":"ModbusPoll-v7.0.0\u4f7f\u7528\u6559\u7a0b"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#modbuspoll-v700","text":"","title":"ModbusPoll v7.0.0 \u4f7f\u7528\u6559\u7a0b"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_1","text":"\u8f6f\u4ef6\u4ecb\u7ecd \u5b89\u88c5\u4e0e\u542f\u52a8 \u57fa\u672c\u914d\u7f6e \u8fde\u63a5\u8bbe\u7f6e \u6570\u636e\u8bfb\u53d6\u914d\u7f6e \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u901a\u4fe1\u5b9e\u4f8b \u6570\u636e\u76d1\u63a7\u4e0e\u5206\u6790 \u6545\u969c\u6392\u9664 \u9ad8\u7ea7\u529f\u80fd","title":"\u76ee\u5f55"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_2","text":"ModbusPoll\u662f\u4e00\u6b3e\u4e13\u4e1a\u7684Modbus\u4e3b\u673a\u4eff\u771f\u5668\u5de5\u5177\uff0c\u4e3b\u8981\u7528\u4e8e\uff1a - \u6d4b\u8bd5\u548c\u8c03\u8bd5Modbus\u4ece\u8bbe\u5907 - \u76d1\u63a7Modbus\u8bbe\u5907\u6570\u636e - \u9a8c\u8bc1\u8bbe\u5907\u901a\u4fe1\u534f\u8bae - \u6545\u969c\u8bca\u65ad\u548c\u6392\u9664","title":"\u8f6f\u4ef6\u4ecb\u7ecd"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_3","text":"\u652f\u6301Modbus RTU/ASCII/TCP\u534f\u8bae \u5b9e\u65f6\u6570\u636e\u76d1\u63a7 \u591a\u79cd\u6570\u636e\u683c\u5f0f\u663e\u793a \u65e5\u5fd7\u8bb0\u5f55\u529f\u80fd \u6279\u91cf\u8bfb\u53d6\u529f\u80fd","title":"\u4e3b\u8981\u7279\u6027"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_4","text":"","title":"\u5b89\u88c5\u4e0e\u542f\u52a8"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_5","text":"Windows 7/8/10/11 .NET Framework 4.0 \u6216\u66f4\u9ad8\u7248\u672c \u81f3\u5c1150MB\u53ef\u7528\u78c1\u76d8\u7a7a\u95f4","title":"\u7cfb\u7edf\u8981\u6c42"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_6","text":"\u4e0b\u8f7dModbusPoll-v7.0.0\u5b89\u88c5\u5305 \u53f3\u952e\u70b9\u51fb\u5b89\u88c5\u5305\uff0c\u9009\u62e9\"\u4ee5\u7ba1\u7406\u5458\u8eab\u4efd\u8fd0\u884c\" \u6309\u7167\u5b89\u88c5\u5411\u5bfc\u5b8c\u6210\u5b89\u88c5 \u542f\u52a8\u7a0b\u5e8f\uff1a\u5f00\u59cb\u83dc\u5355 \u2192 ModbusPoll","title":"\u5b89\u88c5\u6b65\u9aa4"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_7","text":"\u542f\u52a8\u540e\u4f1a\u663e\u793a\u4e3b\u754c\u9762\uff0c\u5305\u542b\uff1a - \u83dc\u5355\u680f\uff1a\u6587\u4ef6\u3001\u8fde\u63a5\u3001\u8bbe\u7f6e\u7b49 - \u5de5\u5177\u680f\uff1a\u5e38\u7528\u529f\u80fd\u5feb\u6377\u6309\u94ae - \u6570\u636e\u663e\u793a\u533a\u57df\uff1a\u5bc4\u5b58\u5668\u6570\u636e\u8868\u683c - \u72b6\u6001\u680f\uff1a\u8fde\u63a5\u72b6\u6001\u548c\u7edf\u8ba1\u4fe1\u606f","title":"\u9996\u6b21\u542f\u52a8"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_8","text":"","title":"\u57fa\u672c\u914d\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_9","text":"\u4e32\u53e3\u8fde\u63a5\uff08RTU/ASCII\uff09 Connection \u2192 Connect \u6216\u70b9\u51fb\u5de5\u5177\u680f\u8fde\u63a5\u56fe\u6807 \u8fde\u63a5\u53c2\u6570\u914d\u7f6e Port : \u9009\u62e9\u4e32\u53e3\uff08COM1, COM2\u7b49\uff09 Baud Rate : \u6ce2\u7279\u7387\uff08\u5e38\u75289600, 19200, 38400\uff09 Data Bits : \u6570\u636e\u4f4d\uff08\u901a\u5e38\u4e3a8\uff09 Parity : \u6821\u9a8c\u4f4d\uff08None, Even, Odd\uff09 Stop Bits : \u505c\u6b62\u4f4d\uff081\u62162\uff09 Mode : \u9009\u62e9RTU\u6216ASCII TCP\u8fde\u63a5\u8bbe\u7f6e IP Address : \u8bbe\u5907IP\u5730\u5740 Port : \u7aef\u53e3\u53f7\uff08\u9ed8\u8ba4502\uff09 Unit ID : \u4ece\u7ad9\u5730\u5740","title":"\u8fde\u63a5\u8bbe\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_10","text":"","title":"\u8fde\u63a5\u8bbe\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_11","text":"\u4ee5\u6c34\u5904\u7406\u673a\u4e3a\u4f8b\uff1a - Port: COM1 - Baud Rate: 9600 - Data Bits: 8 - Parity: None - Stop Bits: 1 - Mode: RTU - Response timeout: 1000ms - Delay between polls: 100ms","title":"\u4e32\u53e3\u8fde\u63a5\u793a\u4f8b"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#tcp","text":"\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u7f51\u7edc\u8fde\u63a5\uff1a - IP Address: 192.168.1.100 - Port: 502 - Unit ID: 1 - Response timeout: 3000ms - Delay between polls: 500ms","title":"TCP\u8fde\u63a5\u793a\u4f8b"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_12","text":"","title":"\u6570\u636e\u8bfb\u53d6\u914d\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_13","text":"Setup \u2192 Read/Write Definition \u914d\u7f6e\u8bfb\u53d6\u53c2\u6570\uff1a Slave ID : \u4ece\u7ad9\u5730\u5740\uff081-247\uff09 Function : \u529f\u80fd\u7801 01: \u8bfb\u53d6\u7ebf\u5708\u72b6\u6001 02: \u8bfb\u53d6\u8f93\u5165\u72b6\u6001 03: \u8bfb\u53d6\u4fdd\u6301\u5bc4\u5b58\u5668 04: \u8bfb\u53d6\u8f93\u5165\u5bc4\u5b58\u5668 Address : \u8d77\u59cb\u5730\u5740 Quantity : \u8bfb\u53d6\u6570\u91cf Scan Rate : \u626b\u63cf\u9891\u7387\uff08ms\uff09","title":"\u8bbe\u7f6e\u8bfb\u53d6\u53c2\u6570"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_14","text":"\u6e29\u5ea6\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 03 (Read Holding Registers) - Address: 23 (0x0017) - Quantity: 2 - Scan Rate: 1000ms \u4f9b\u6db2\u538b\u529b\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 03 - Address: 25 (0x0019) - Quantity: 2 - Scan Rate: 500ms \u6db2\u4f4d\u72b6\u6001\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 01 (Read Coils) - Address: 0x0001 - Quantity: 16 - Scan Rate: 2000ms \u7535\u5bfc\u7387\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 03 - Address: 24 (0x0018) - Quantity: 2 - Scan Rate: 1000ms PH\u503c\u76d1\u63a7\uff1a - Slave ID: 1 - Function: 03 - Address: 29 (0x001D) - Quantity: 2 - Scan Rate: 1000ms","title":"\u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u53c2\u6570\u914d\u7f6e\u793a\u4f8b"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_15","text":"","title":"\u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u901a\u4fe1\u5b9e\u4f8b"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_16","text":"\u6839\u636e\u6c34\u5904\u7406\u8bbe\u5907\u901a\u4fe1\u534f\u8bae\u914d\u7f6e\uff1a 1. \u6e29\u5ea6\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x0017\uff09 - Function: 03 - Address: 23 (0x0017) - Quantity: 2 - Data Format: Float (4\u5b57\u8282) 2. \u7535\u5bfc\u7387\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x0018\uff09 - Function: 03 - Address: 24 (0x0018) - Quantity: 2 - Data Format: Float 3. \u4f9b\u6db2\u538b\u529b\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x0019-0x001A\uff09 - Function: 03 - Address: 25 (0x0019) - Quantity: 4 - Data Format: Float (\u4f9b\u6db2\u4e00\u3001\u4f9b\u6db2\u4e8c\u538b\u529b) 4. \u6db2\u4f4d\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x001B-0x001C\uff09 - Function: 03 - Address: 27 (0x001B) - Quantity: 4 - Data Format: Float (\u50a8\u6db2\u3001\u914d\u6db2\u6db2\u4f4d) 5. PH\u503c\u53c2\u6570\uff08\u5bc4\u5b58\u5668\u5730\u5740\uff1a0x001D\uff09 - Function: 03 - Address: 29 (0x001D) - Quantity: 2 - Data Format: Float","title":"\u6c34\u5904\u7406\u673a\u53c2\u6570\u8bfb\u53d6"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_17","text":"Setup \u2192 Read/Write Definition \u2192 Add Multiple \u521b\u5efa\u591a\u4e2a\u8bfb\u53d6\u7ec4\uff1a - \u7ec41\uff1a\u6e29\u5ea6\u76f8\u5173\u53c2\u6570 (0x0017-0x0018) - \u7ec42\uff1a\u538b\u529b\u76f8\u5173\u53c2\u6570 (0x0019-0x001A) - \u7ec43\uff1a\u6db2\u4f4d\u76f8\u5173\u53c2\u6570 (0x001B-0x001C) - \u7ec44\uff1aPH\u503c\u53c2\u6570 (0x001D) - \u7ec45\uff1a\u72b6\u6001\u76f8\u5173\u53c2\u6570 (0x0001-0x0010)","title":"\u6279\u91cf\u8bfb\u53d6\u914d\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_18","text":"","title":"\u6570\u636e\u76d1\u63a7\u4e0e\u5206\u6790"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_19","text":"Display \u2192 Data Format \u9009\u62e9\u5408\u9002\u7684\u663e\u793a\u683c\u5f0f\uff1a Signed/Unsigned : \u6709\u7b26\u53f7/\u65e0\u7b26\u53f7 16-bit/32-bit : \u6570\u636e\u4f4d\u6570 Hex/Decimal/Binary : \u8fdb\u5236\u663e\u793a Float : \u6d6e\u70b9\u6570\u663e\u793a","title":"\u6570\u636e\u663e\u793a\u683c\u5f0f"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_20","text":"\u91cd\u8981 \uff1a\u6b63\u786e\u7684\u5b57\u8282\u5e8f\u8bbe\u7f6e\u662f\u6570\u636e\u6b63\u786e\u663e\u793a\u7684\u5173\u952e \u914d\u7f6e\u6b65\u9aa4 \uff1a 1. Display \u2192 Data Format \u2192 Advanced 2. \u5b57\u8282\u5e8f\u9009\u9879 \uff1a ``` \u25a1 Byte Swap - \u5b57\u8282\u4ea4\u6362 \u25a1 Word Swap - \u5b57\u4ea4\u6362 \u56db\u79cd\u7ec4\u5408\u5bf9\u5e94\u4e0d\u540c\u5b57\u8282\u5e8f\uff1a \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510 \u2502 \u9009\u9879\u7ec4\u5408 \u2502 \u5b57\u8282\u5e8f \u2502 \u793a\u4f8b \u2502 \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524 \u2502 \u65e0\u52fe\u9009 \u2502 ABCD \u2502 42 0C CC CD \u2502 \u2502 Byte Swap \u2502 BADC \u2502 0C 42 CD CC \u2502 \u2502 Word Swap \u2502 CDAB \u2502 CC CD 42 0C \u2502 \u2502 Both \u2502 DCBA \u2502 CD CC 0C 42 \u2502 \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518 ``` \u5b9e\u9645\u9a8c\u8bc1\u65b9\u6cd5 \uff1a \u57fa\u4e8e\u60a8\u7684\u901a\u4fe1\u6570\u636e CD CC 0C 42\uff1a 1. \u5c1d\u8bd5DCBA\u683c\u5f0f\uff1aCD CC 0C 42 \u2192 35.2\u00b0C \u2713 2. \u5176\u4ed6\u683c\u5f0f\u90fd\u4f1a\u663e\u793a\u5f02\u5e38\u503c 3. \u56e0\u6b64\u60a8\u7684\u8bbe\u5907\u4f7f\u7528DCBA\u5b57\u8282\u5e8f \u914d\u7f6e\u5efa\u8bae \uff1a - \u6c34\u5904\u7406\u8bbe\u5907\u901a\u5e38\u4f7f\u7528\u5927\u7aef\u5e8f(ABCD) - PC-based\u8bbe\u5907\u901a\u5e38\u4f7f\u7528\u5c0f\u7aef\u5e8f(DCBA) - \u6839\u636e\u5b9e\u9645\u6570\u636e\u9a8c\u8bc1\u9009\u62e9\u6b63\u786e\u683c\u5f0f","title":"\u5b57\u8282\u5e8f\u914d\u7f6e\u8be6\u89e3"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_21","text":"View\u83dc\u5355\u9009\u9879\uff1a - Data View: \u6570\u636e\u8868\u683c\u89c6\u56fe - Register View: \u5bc4\u5b58\u5668\u89c6\u56fe - Traffic View: \u901a\u4fe1\u6d41\u91cf\u89c6\u56fe - Error View: \u9519\u8bef\u65e5\u5fd7\u89c6\u56fe","title":"\u5b9e\u65f6\u76d1\u63a7"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_22","text":"Log \u2192 Start Logging \u8bbe\u7f6e\u65e5\u5fd7\u6587\u4ef6\u8def\u5f84\u548c\u683c\u5f0f \u9009\u62e9\u8bb0\u5f55\u95f4\u9694\u548c\u6761\u4ef6 \u5f00\u59cb\u8bb0\u5f55\u6570\u636e\u53d8\u5316","title":"\u6570\u636e\u8bb0\u5f55"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_23","text":"Setup \u2192 Alarm Setup \u914d\u7f6e\u544a\u8b66\u6761\u4ef6\uff1a - \u6c34\u6e29\u8d85\u9650\uff1a> 40\u00b0C \u6216 < 35\u00b0C - \u4f9b\u6db2\u538b\u529b\u5f02\u5e38\uff1a< 0.1MPa \u6216 > 0.5MPa - \u7535\u5bfc\u7387\u5f02\u5e38\uff1a< 13.0 \u6216 > 15.0 mS/cm - \u8bbe\u5907\u79bb\u7ebf\uff1a\u901a\u4fe1\u8d85\u65f6 > 5\u79d2","title":"\u544a\u8b66\u8bbe\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_24","text":"","title":"\u6545\u969c\u6392\u9664"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_25","text":"","title":"\u5e38\u89c1\u95ee\u9898\u53ca\u89e3\u51b3\u65b9\u6848"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#1","text":"\u95ee\u9898\uff1a\u65e0\u6cd5\u8fde\u63a5\u5230\u8bbe\u5907 \u89e3\u51b3\u65b9\u6848\uff1a - \u68c0\u67e5\u4e32\u53e3/\u7f51\u7edc\u8fde\u63a5 - \u786e\u8ba4\u6ce2\u7279\u7387\u548c\u901a\u4fe1\u53c2\u6570 - \u68c0\u67e5\u8bbe\u5907\u5730\u5740\u662f\u5426\u6b63\u786e - \u9a8c\u8bc1\u7535\u7f06\u8fde\u63a5","title":"1. \u8fde\u63a5\u5931\u8d25"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#2","text":"\u95ee\u9898\uff1a\u8bfb\u53d6\u6570\u636e\u5168\u4e3a0\u6216\u5f02\u5e38\u503c \u89e3\u51b3\u65b9\u6848\uff1a - \u68c0\u67e5\u529f\u80fd\u7801\u662f\u5426\u6b63\u786e - \u786e\u8ba4\u5bc4\u5b58\u5668\u5730\u5740 - \u68c0\u67e5\u6570\u636e\u683c\u5f0f\u8bbe\u7f6e - \u9a8c\u8bc1\u8bbe\u5907\u662f\u5426\u652f\u6301\u8be5\u529f\u80fd","title":"2. \u6570\u636e\u8bfb\u53d6\u5f02\u5e38"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#3","text":"\u95ee\u9898\uff1a\u9891\u7e41\u51fa\u73b0\u901a\u4fe1\u8d85\u65f6 \u89e3\u51b3\u65b9\u6848\uff1a - \u589e\u52a0Response Timeout\u65f6\u95f4 - \u51cf\u5c11\u626b\u63cf\u9891\u7387 - \u68c0\u67e5\u7f51\u7edc\u7a33\u5b9a\u6027 - \u786e\u8ba4\u8bbe\u5907\u8d1f\u8f7d\u60c5\u51b5","title":"3. \u901a\u4fe1\u8d85\u65f6"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#4","text":"\u95ee\u9898\uff1a\u6570\u636e\u663e\u793a\u683c\u5f0f\u4e0d\u6b63\u786e \u89e3\u51b3\u65b9\u6848\uff1a - \u68c0\u67e5\u5b57\u8282\u5e8f\u8bbe\u7f6e\uff08\u5927\u7aef/\u5c0f\u7aef\uff09 - \u786e\u8ba4\u6570\u636e\u7c7b\u578b\uff08\u6574\u6570/\u6d6e\u70b9\uff09 - \u8c03\u6574\u6570\u636e\u4f4d\u6570\u8bbe\u7f6e - \u53c2\u8003\u8bbe\u5907\u624b\u518c\u786e\u8ba4\u683c\u5f0f","title":"4. \u6570\u636e\u683c\u5f0f\u9519\u8bef"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#5","text":"\u95ee\u9898\uff1a\u6570\u636e\u6570\u503c\u5f02\u5e38\uff08\u8fc7\u5927\u6216\u8fc7\u5c0f\uff09 \u75c7\u72b6\uff1a - \u6e29\u5ea6\u663e\u793a\u51e0\u5343\u5ea6\u6216\u8d1f\u503c - \u538b\u529b\u663e\u793a\u5f02\u5e38\u5927\u7684\u6570\u503c - \u7535\u5bfc\u7387\u663e\u793a\u4e0d\u5408\u7406\u6570\u503c \u89e3\u51b3\u6b65\u9aa4\uff1a 1. \u67e5\u770bTraffic View\u4e2d\u7684\u539f\u59cb\u5341\u516d\u8fdb\u5236\u6570\u636e 2. \u5c1d\u8bd5\u4e0d\u540c\u5b57\u8282\u5e8f\u7ec4\u5408\uff1a - Display \u2192 Data Format \u2192 Byte Swap - Display \u2192 Data Format \u2192 Word Swap 3. \u9009\u62e9\u663e\u793a\u5408\u7406\u6570\u503c\u7684\u7ec4\u5408 4. \u9a8c\u8bc1\u591a\u4e2a\u53c2\u6570\u786e\u4fdd\u8bbe\u7f6e\u6b63\u786e \u5b9e\u4f8b\uff1a \u539f\u59cb\u6570\u636e\uff1aCD CC 0C 42 - \u9ed8\u8ba4(ABCD)\uff1a\u5f02\u5e38\u503c - Byte swap(BADC)\uff1a\u5f02\u5e38\u503c - Word swap(CDAB)\uff1a\u5f02\u5e38\u503c - Byte+Word(DCBA)\uff1a35.2\u00b0C \u2713\u6b63\u786e","title":"5. \u5b57\u8282\u5e8f\u95ee\u9898\u8bca\u65ad"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_26","text":"","title":"\u9ad8\u7ea7\u529f\u80fd"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#1_1","text":"Tools \u2192 Scripting \u652f\u6301VB\u811a\u672c\u81ea\u52a8\u5316\uff1a - \u81ea\u52a8\u8fde\u63a5\u8bbe\u5907 - \u6279\u91cf\u6570\u636e\u5904\u7406 - \u6761\u4ef6\u89e6\u53d1\u64cd\u4f5c - \u62a5\u544a\u751f\u6210","title":"1. \u811a\u672c\u81ea\u52a8\u5316"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#2_1","text":"File \u2192 Export Data \u652f\u6301\u591a\u79cd\u683c\u5f0f\uff1a - CSV\u6587\u4ef6 - Excel\u6587\u4ef6 - XML\u683c\u5f0f - \u81ea\u5b9a\u4e49\u683c\u5f0f","title":"2. \u6570\u636e\u5bfc\u51fa"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#3_1","text":"\u53ef\u540c\u65f6\u76d1\u63a7\u591a\u4e2a\u8bbe\u5907\uff1a 1. File \u2192 New Document 2. \u914d\u7f6e\u4e0d\u540c\u8bbe\u5907\u53c2\u6570 3. Window \u2192 Tile \u5e73\u94fa\u663e\u793a 4. \u5b9e\u73b0\u591a\u8bbe\u5907\u96c6\u4e2d\u76d1\u63a7","title":"3. \u591a\u8bbe\u5907\u76d1\u63a7"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#4_1","text":"View \u2192 Trend View \u529f\u80fd\u7279\u6027\uff1a - \u5b9e\u65f6\u8d8b\u52bf\u56fe\u8868 - \u5386\u53f2\u6570\u636e\u56de\u653e - \u6570\u636e\u7edf\u8ba1\u5206\u6790 - \u5f02\u5e38\u70b9\u6807\u8bb0","title":"4. \u8d8b\u52bf\u5206\u6790"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_27","text":"","title":"\u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u76d1\u63a7\u5b9e\u6218"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_28","text":"# \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u76d1\u63a7\u914d\u7f6e\u793a\u4f8b \u8bbe\u5907\u4fe1\u606f : \u8bbe\u5907\u578b\u53f7 : \u6c34\u5904\u7406\u673a+\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907 \u901a\u4fe1\u65b9\u5f0f : Modbus RTU/TCP \u6ce2\u7279\u7387 : 9600 \u4ece\u7ad9\u5730\u5740 : 1 \u76d1\u63a7\u53c2\u6570 : \u6e29\u5ea6\u76d1\u63a7 : \u5730\u5740 : 0x0017 \u5355\u4f4d : \u00b0C \u544a\u8b66 : 35-40\u00b0C \u7535\u5bfc\u7387\u76d1\u63a7 : \u5730\u5740 : 0x0018 \u5355\u4f4d : mS/cm \u544a\u8b66 : 13.0-15.0 \u538b\u529b\u76d1\u63a7 : \u4f9b\u6db2\u4e00 : 0x0019 \u4f9b\u6db2\u4e8c : 0x001A \u5355\u4f4d : MPa \u544a\u8b66 : 0.1-0.5 \u6db2\u4f4d\u76d1\u63a7 : \u50a8\u6db2 : 0x001B \u914d\u6db2 : 0x001C \u5355\u4f4d : % \u544a\u8b66 : 10-90% PH\u503c\u76d1\u63a7 : \u5730\u5740 : 0x001D \u5355\u4f4d : pH \u544a\u8b66 : 6.5-7.5 \u626b\u63cf\u8bbe\u7f6e : \u6b63\u5e38\u626b\u63cf : 1000ms \u5feb\u901f\u626b\u63cf : 500ms \u6162\u901f\u626b\u63cf : 2000ms \u901a\u4fe1\u534f\u8bae\u5206\u6790 : \u57fa\u4e8e\u5b9e\u9645\u901a\u4fe1\u6570\u636e : - \u4f7f\u7528Modbus TCP\u534f\u8bae - \u529f\u80fd\u780103 (Read Holding Registers) - \u8d77\u59cb\u5730\u5740 : 0x0017 (\u6e29\u5ea6) - \u6570\u636e\u683c\u5f0f : 32\u4f4d\u6d6e\u70b9\u6570 (IEEE 754) - \u5b57\u8282\u5e8f\u5206\u6790 : * \u539f\u59cb\u6570\u636e : CD CC 0C 42 * \u9700\u8981DCBA\u5b57\u8282\u5e8f (Byte+Word Swap) * \u89e3\u6790\u7ed3\u679c : 35.2\u00b0C - \u6570\u636e\u793a\u4f8b\u9a8c\u8bc1 : * CD CC 0C 42 (\u5341\u516d\u8fdb\u5236) * \u2192 0x420CCCCD (\u91cd\u6392\u540e) * \u2192 35.2000008 (IEEE 754\u6d6e\u70b9\u6570) * \u2192 35.2\u00b0C (\u663e\u793a\u503c) \u914d\u7f6e\u8981\u70b9 : - ModbusPoll\u8bbe\u7f6e : Display \u2192 Data Format - \u52fe\u9009 : Byte Swap + Word Swap - \u6570\u636e\u7c7b\u578b : 32-bit Float - \u9a8c\u8bc1\u65b9\u6cd5 : \u89c2\u5bdf\u6e29\u5ea6\u662f\u5426\u5728\u5408\u7406\u8303\u56f4(30-50\u00b0C)","title":"\u5b8c\u6574\u76d1\u63a7\u914d\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_29","text":"' \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u72b6\u6001\u68c0\u67e5\u811a\u672c Sub CheckWaterTreatmentStatus () Dim temp , pressure1 , pressure2 , conductivity , ph ' \u8bfb\u53d6\u6e29\u5ea6 (\u5730\u574023) temp = mbPoll . ReadFloat ( 1 , 3 , 23 ) ' \u8bfb\u53d6\u538b\u529b (\u5730\u574025,26) pressure1 = mbPoll . ReadFloat ( 1 , 3 , 25 ) pressure2 = mbPoll . ReadFloat ( 1 , 3 , 26 ) ' \u8bfb\u53d6\u7535\u5bfc\u7387 (\u5730\u574024) conductivity = mbPoll . ReadFloat ( 1 , 3 , 24 ) ' \u8bfb\u53d6PH\u503c (\u5730\u574029) ph = mbPoll . ReadFloat ( 1 , 3 , 29 ) ' \u68c0\u67e5\u5f02\u5e38 If temp > 40 Or temp < 35 Then MsgBox \"\u6c34\u6e29\u5f02\u5e38: \" & temp & \"\u00b0C\" End If If pressure1 < 0.1 Or pressure1 > 0.5 Then MsgBox \"\u4f9b\u6db2\u4e00\u538b\u529b\u5f02\u5e38: \" & pressure1 & \"MPa\" End If If conductivity < 13.0 Or conductivity > 15.0 Then MsgBox \"\u7535\u5bfc\u7387\u5f02\u5e38: \" & conductivity & \"mS/cm\" End If If ph < 6.5 Or ph > 7.5 Then MsgBox \"PH\u503c\u5f02\u5e38: \" & ph End If End Sub","title":"\u81ea\u52a8\u5316\u811a\u672c\u793a\u4f8b"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_30","text":"","title":"\u6700\u4f73\u5b9e\u8df5\u5efa\u8bae"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#1_2","text":"\u5408\u7406\u8bbe\u7f6e\u626b\u63cf\u9891\u7387\uff0c\u907f\u514d\u8fc7\u5ea6\u8f6e\u8be2 \u4f7f\u7528\u6279\u91cf\u8bfb\u53d6\u51cf\u5c11\u901a\u4fe1\u6b21\u6570 \u5b9a\u671f\u6e05\u7406\u65e5\u5fd7\u6587\u4ef6 \u76d1\u63a7\u7cfb\u7edf\u8d44\u6e90\u4f7f\u7528\u60c5\u51b5","title":"1. \u6027\u80fd\u4f18\u5316"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#2_2","text":"\u5efa\u7acb\u89c4\u8303\u7684\u53c2\u6570\u547d\u540d\u89c4\u5219 \u5b9a\u671f\u5907\u4efd\u91cd\u8981\u914d\u7f6e \u8bbe\u7f6e\u5408\u7406\u7684\u6570\u636e\u4fdd\u5b58\u5468\u671f \u5b9e\u65bd\u6570\u636e\u5b89\u5168\u63aa\u65bd","title":"2. \u6570\u636e\u7ba1\u7406"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#3_2","text":"\u5b9a\u671f\u68c0\u67e5\u901a\u4fe1\u7ebf\u8def \u66f4\u65b0\u8bbe\u5907\u9a71\u52a8\u7a0b\u5e8f \u5907\u4efd\u5de5\u7a0b\u914d\u7f6e\u6587\u4ef6 \u5efa\u7acb\u6545\u969c\u5904\u7406\u6d41\u7a0b","title":"3. \u7ef4\u62a4\u5efa\u8bae"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_31","text":"","title":"\u9644\u5f55"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#a-modbus","text":"01 - Read Coils (\u8bfb\u53d6\u7ebf\u5708\u72b6\u6001) 02 - Read Discrete Inputs (\u8bfb\u53d6\u79bb\u6563\u8f93\u5165) 03 - Read Holding Registers (\u8bfb\u53d6\u4fdd\u6301\u5bc4\u5b58\u5668) 04 - Read Input Registers (\u8bfb\u53d6\u8f93\u5165\u5bc4\u5b58\u5668) 05 - Write Single Coil (\u5199\u5355\u4e2a\u7ebf\u5708) 06 - Write Single Register (\u5199\u5355\u4e2a\u5bc4\u5b58\u5668) 15 - Write Multiple Coils (\u5199\u591a\u4e2a\u7ebf\u5708) 16 - Write Multiple Registers (\u5199\u591a\u4e2a\u5bc4\u5b58\u5668)","title":"A. Modbus\u529f\u80fd\u7801\u5bf9\u7167\u8868"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#b","text":"1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200","title":"B. \u5e38\u7528\u6ce2\u7279\u7387\u8bbe\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#c","text":"\u57fa\u4e8e\u5b9e\u9645\u901a\u4fe1\u6570\u636e\u7684\u5730\u5740\u6620\u5c04\uff1a \u6e29\u5ea6\uff1a0x0017 (\u5341\u8fdb\u523623) \u7535\u5bfc\u7387\uff1a0x0018 (\u5341\u8fdb\u523624) \u4f9b\u6db2\u4e00\u538b\u529b\uff1a0x0019 (\u5341\u8fdb\u523625) \u4f9b\u6db2\u4e8c\u538b\u529b\uff1a0x001A (\u5341\u8fdb\u523626) \u50a8\u6db2\u6db2\u4f4d\uff1a0x001B (\u5341\u8fdb\u523627) \u914d\u6db2\u6db2\u4f4d\uff1a0x001C (\u5341\u8fdb\u523628) PH\u503c\uff1a0x001D (\u5341\u8fdb\u523629) \u72b6\u6001\u7c7b\uff1a0x0001-0x0010 \u63a7\u5236\u7c7b\uff1a0x0020-0x0030","title":"C. \u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u5e38\u7528\u5730\u5740\u6620\u5c04"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#d","text":"","title":"D. \u5927\u7aef\u5c0f\u7aef\uff08\u5b57\u8282\u5e8f\uff09\u8be6\u89e3"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_32","text":"\u5b57\u8282\u5e8f\uff08Byte Order\uff09\u662f\u6307\u591a\u5b57\u8282\u6570\u636e\u5728\u5185\u5b58\u4e2d\u7684\u5b58\u50a8\u987a\u5e8f\uff0c\u4e3b\u8981\u6709\u4e24\u79cd\uff1a \u5927\u7aef\u5e8f\uff08Big Endian\uff09 \uff1a - \u9ad8\u4f4d\u5b57\u8282\u5b58\u50a8\u5728\u4f4e\u5730\u5740 - \u7b26\u5408\u4eba\u7c7b\u9605\u8bfb\u4e60\u60ef - \u7f51\u7edc\u4f20\u8f93\u6807\u51c6\u5b57\u8282\u5e8f \u5c0f\u7aef\u5e8f\uff08Little Endian\uff09 \uff1a - \u4f4e\u4f4d\u5b57\u8282\u5b58\u50a8\u5728\u4f4e\u5730\u5740 - \u591a\u6570x86\u5904\u7406\u5668\u91c7\u7528 - Intel\u67b6\u6784\u9ed8\u8ba4\u5b57\u8282\u5e8f","title":"\u4ec0\u4e48\u662f\u5927\u7aef\u5c0f\u7aef\uff1f"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_33","text":"\u4ee532\u4f4d\u6d6e\u70b9\u6570 35.2\u00b0C \u4e3a\u4f8b\uff1a IEEE 754 \u6d6e\u70b9\u6570\u8868\u793a\uff1a0x420C_CCCD \u5927\u7aef\u5e8f\u5b58\u50a8\uff1a \u5730\u5740 \u5185\u5bb9 0x1000 0x42 (\u6700\u9ad8\u4f4d\u5b57\u8282) 0x1001 0x0C 0x1002 0xCC 0x1003 0xCD (\u6700\u4f4e\u4f4d\u5b57\u8282) \u5c0f\u7aef\u5e8f\u5b58\u50a8\uff1a \u5730\u5740 \u5185\u5bb9 0x1000 0xCD (\u6700\u4f4e\u4f4d\u5b57\u8282) 0x1001 0xCC 0x1002 0x0C 0x1003 0x42 (\u6700\u9ad8\u4f4d\u5b57\u8282)","title":"\u5b9e\u9645\u4f8b\u5b50\u8bf4\u660e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_34","text":"\u65b9\u6cd51\uff1a\u901a\u8fc7\u901a\u4fe1\u6570\u636e\u5206\u6790 \u4ececommdata.txt\u770b\u5230\u7684\u6570\u636e\uff1aCD CC 0C 42 1. \u5c06\u8fd94\u4e2a\u5b57\u8282\u6309\u4e0d\u540c\u5b57\u8282\u5e8f\u89e3\u91ca\uff1a - \u5927\u7aef\u5e8f\uff1a0x42_0C_CCCD = 35.2 (\u5408\u7406\u7684\u6e29\u5ea6\u503c) - \u5c0f\u7aef\u5e8f\uff1a0xCDCC_0C42 = \u975e\u5e38\u5927\u7684\u6570\u503c(\u4e0d\u5408\u7406) 2. \u7ed3\u8bba\uff1a\u8bbe\u5907\u4f7f\u7528\u5927\u7aef\u5e8f \u65b9\u6cd52\uff1a\u67e5\u770b\u8bbe\u5907\u624b\u518c \u8bbe\u5907\u6280\u672f\u6587\u6863\u901a\u5e38\u4f1a\u8bf4\u660e\uff1a - \"\u7f51\u7edc\u5b57\u8282\u5e8f\" = \u5927\u7aef\u5e8f - \"\u4e3b\u673a\u5b57\u8282\u5e8f\" = \u901a\u5e38\u662f\u5c0f\u7aef\u5e8f - \"Intel\u683c\u5f0f\" = \u5c0f\u7aef\u5e8f - \"Motorola\u683c\u5f0f\" = \u5927\u7aef\u5e8f \u65b9\u6cd53\uff1aModbusPoll\u4e2d\u7684\u9a8c\u8bc1 \u5728ModbusPoll\u4e2d\u6d4b\u8bd5\uff1a 1. Setup \u2192 Data Format \u2192 Byte Swap 2. \u89c2\u5bdf\u6570\u636e\u662f\u5426\u5408\u7406\uff1a - \u6e29\u5ea6\u5e94\u8be5\u57280-100\u00b0C\u8303\u56f4 - \u538b\u529b\u5e94\u8be5\u57280-10MPa\u8303\u56f4 - \u7535\u5bfc\u7387\u5e94\u8be5\u572810-20mS/cm\u8303\u56f4 3. \u9009\u62e9\u663e\u793a\u6b63\u786e\u6570\u503c\u7684\u5b57\u8282\u5e8f","title":"\u5982\u4f55\u786e\u5b9a\u8bbe\u5907\u5b57\u8282\u5e8f\uff1f"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#modbuspoll","text":"\u914d\u7f6e\u8def\u5f84 \uff1aDisplay \u2192 Data Format \u9009\u9879\u8bf4\u660e \uff1a \u25a1 Byte swap - \u4ea4\u6362\u5b57\u8282\u5e8f \u25a1 Word swap - \u4ea4\u6362\u5b57\u987a\u5e8f \u25a1 Dword swap - \u4ea4\u6362\u53cc\u5b57\u987a\u5e8f \u7ec4\u5408\u8bbe\u7f6e\u5bf9\u5e94\u4e0d\u540c\u683c\u5f0f\uff1a - \u65e0\u52fe\u9009\uff1aABCD (\u5927\u7aef\u5e8f) - Byte swap\uff1aBADC - Word swap\uff1aCDAB - Byte+Word swap\uff1aDCBA (\u5c0f\u7aef\u5e8f)","title":"ModbusPoll\u5b57\u8282\u5e8f\u8bbe\u7f6e"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_35","text":"\u6848\u4f8b1\uff1a\u6e29\u5ea6\u8bfb\u53d6\u5f02\u5e38 \u95ee\u9898\uff1a\u8bfb\u53d6\u6e29\u5ea6\u663e\u793a\u4e3a\u51e0\u5343\u5ea6 \u539f\u56e0\uff1a\u5b57\u8282\u5e8f\u8bbe\u7f6e\u9519\u8bef \u89e3\u51b3\uff1a\u52fe\u9009\"Byte swap\"\u8c03\u6574\u5b57\u8282\u5e8f \u6848\u4f8b2\uff1a\u538b\u529b\u503c\u663e\u793a\u5f02\u5e38 \u8bfb\u53d6\u6570\u636e\uff1a12 34 56 78 \u5927\u7aef\u5e8f\u89e3\u91ca\uff1a0x12345678 = 305,419,896 (\u5f02\u5e38) \u5c0f\u7aef\u5e8f\u89e3\u91ca\uff1a0x78563412 = 2,018,915,346 (\u5f02\u5e38) \u9700\u8981Word swap\uff1a0x34127856 = 873,756,758 (\u4ecd\u5f02\u5e38) \u6b63\u786e\u8bbe\u7f6e\uff1aByte+Word swap = 0x78563412\u8f6c\u6362\u4e3a\u6d6e\u70b9\u6570","title":"\u5b9e\u9645\u5e94\u7528\u793a\u4f8b"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_36","text":"\u6b65\u9aa41\uff1a\u8bb0\u5f55\u539f\u59cb\u6570\u636e \u4f7f\u7528Traffic View\u67e5\u770b\u539f\u59cb\u5341\u516d\u8fdb\u5236\u6570\u636e \u4f8b\u5982\uff1a42 0C CC CD \u6b65\u9aa42\uff1a\u624b\u52a8\u8ba1\u7b97\u9a8c\u8bc1 \u4f7f\u7528\u5728\u7ebfIEEE 754\u8f6c\u6362\u5668\uff1a - \u8f93\u5165\uff1a420CCCCD - \u8f93\u51fa\uff1a35.2000008... - \u9a8c\u8bc1\u662f\u5426\u4e3a\u5408\u7406\u6570\u503c \u6b65\u9aa43\uff1aModbusPoll\u4e2d\u6d4b\u8bd5 \u4f9d\u6b21\u5c1d\u8bd5\u56db\u79cd\u5b57\u8282\u5e8f\u7ec4\u5408\uff1a 1. ABCD - \u539f\u59cb\u987a\u5e8f 2. BADC - Byte swap 3. CDAB - Word swap 4. DCBA - Byte+Word swap \u9009\u62e9\u663e\u793a\u5408\u7406\u6570\u503c\u7684\u8bbe\u7f6e","title":"\u8c03\u8bd5\u6280\u5de7"},{"location":"node-reds/ModbusPoll-v7.0.0%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B/#_37","text":"\u5927\u7aef\u5e8f\u8bbe\u5907\uff1a - \u65bd\u8010\u5fb7PLC - \u897f\u95e8\u5b50S7\u7cfb\u5217 - ABB\u8bbe\u5907 - \u5927\u591a\u6570\u7f51\u7edc\u8bbe\u5907 \u5c0f\u7aef\u5e8f\u8bbe\u5907\uff1a - \u4e09\u83f1PLC - \u6b27\u59c6\u9f99PLC - PC-based\u63a7\u5236\u5668 - Intel\u67b6\u6784\u8bbe\u5907 \u672c\u6559\u7a0b\u57fa\u4e8eModbusPoll v7.0.0\u7248\u672c\u7f16\u5199\uff0c\u9002\u7528\u4e8e\u6c34\u5904\u7406\u673a\u4e0e\u96c6\u4e2d\u4f9b\u6db2\u8bbe\u5907\u53c2\u6570\u76d1\u63a7\u7cfb\u7edf\u3002\u5982\u6709\u95ee\u9898\u8bf7\u53c2\u8003\u5b98\u65b9\u6587\u6863\u6216\u8054\u7cfb\u6280\u672f\u652f\u6301\u3002","title":"\u5e38\u89c1\u8bbe\u5907\u5b57\u8282\u5e8f"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/","text":"node-red\u5982\u4f55\u8fde\u63a5modbus slave\u8bbe\u5907 \u00b6 \u8bf4\u660e \u00b6 \u6211\u60f3\u5728node-red\u4e2d\u7528\u6d41\u7a0b\u56fe\u4e2d\u914d\u7f6emodbus master\u4e3b\u8bbe\u5907\u901a\u8fc7mocbus tcp rtu\u53bb\u8054\u63a5modbus slave\u8bbe\u5907\uff0c\u5982\u4f55\u914d\u7f6e\u5462\uff1f \u6b65\u9aa4\u4e00\uff1a\u5b89\u88c5Modbus\u76f8\u5173\u8282\u70b9 \u00b6 \u6253\u5f00Node-RED\u7f16\u8f91\u5668\uff08\u6d4f\u89c8\u5668\u8bbf\u95ee http://<\u4f60\u7684\u8bbe\u5907IP>:1880\uff09\u3002 \u70b9\u51fb\u53f3\u4e0a\u89d2\u83dc\u5355\uff0c\u9009\u62e9\u201cManage palette\uff08\u7ba1\u7406\u8c03\u8272\u677f\uff09\u201d\u3002 \u5728\u201cInstall\u201d\u6807\u7b7e\u9875\u4e2d\u641c\u7d22 node-red-contrib-modbus \uff0c\u70b9\u51fb\u201cInstall\u201d\u5b89\u88c5\u3002 \u6b65\u9aa4\u4e8c\uff1a\u6dfb\u52a0Modbus TCP/RTU\u8282\u70b9 \u00b6 \u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u5de6\u4fa7\u4f1a\u51fa\u73b0\u201cmodbus\u201d\u7c7b\u522b\u3002 \u62d6\u62fd modbus-read \u6216 modbus-write \u8282\u70b9\u5230\u6d41\u7a0b\u56fe\u4e2d\u3002 \u53cc\u51fb\u8282\u70b9\uff0c\u70b9\u51fb\u201cServer\u201d\u53f3\u4fa7\u7684\u94c5\u7b14\u56fe\u6807\uff0c\u65b0\u589eModbus\u670d\u52a1\u5668\u914d\u7f6e\u3002 \u6b65\u9aa4\u4e09\uff1a\u914d\u7f6eModbus\u4e3b\u8bbe\u5907\uff08Master\uff09 \u00b6 \u8fde\u63a5\u7c7b\u578b \uff1a \u5982\u679c\u662fTCP\uff0c\u9009\u62e9\u201cTCP\u201d\uff0c\u586b\u5199Slave\u8bbe\u5907\u7684IP\u548c\u7aef\u53e3\uff08\u901a\u5e38\u4e3a502\uff09\u3002 \u5982\u679c\u662fRTU\uff08\u4e32\u53e3\uff09\uff0c\u9009\u62e9\u201cSerial\u201d\uff0c\u586b\u5199\u4e32\u53e3\u8bbe\u5907\uff08\u5982 /dev/ttyUSB0 \uff09\u3001\u6ce2\u7279\u7387\u3001\u6570\u636e\u4f4d\u3001\u6821\u9a8c\u7b49\u53c2\u6570\u3002 Unit-Id \uff1a\u586b\u5199\u76ee\u6807Slave\u7684\u5730\u5740\uff08\u901a\u5e38\u4e3a1\uff09\u3002 \u5176\u4ed6\u53c2\u6570\u6309\u5b9e\u9645\u9700\u6c42\u8bbe\u7f6e\u3002 \u6b65\u9aa4\u56db\uff1a\u914d\u7f6e\u8bfb\u5199\u64cd\u4f5c \u00b6 modbus-read \u8282\u70b9\uff1a\u8bbe\u7f6e\u529f\u80fd\u7801\uff08\u598203\u8bfb\u4fdd\u6301\u5bc4\u5b58\u5668\uff09\u3001\u8d77\u59cb\u5730\u5740\u3001\u957f\u5ea6\u3001\u8f6e\u8be2\u95f4\u9694\u7b49\u3002 modbus-write \u8282\u70b9\uff1a\u8bbe\u7f6e\u529f\u80fd\u7801\u3001\u76ee\u6807\u5730\u5740\u3001\u5199\u5165\u6570\u636e\u7b49\u3002 Modbus-Read\u8282\u70b9\u53c2\u6570\u586b\u5199\u8bf4\u660e \u00b6 \u540d\u79f0 \uff1a\u81ea\u5b9a\u4e49\uff0c\u4fbf\u4e8e\u8bc6\u522b\u3002 \u4e3b\u9898\uff08Topic\uff09 \uff1a\u53ef\u7559\u7a7a\u6216\u81ea\u5b9a\u4e49\uff08\u5982\u7528\u4e8e\u6d88\u606f\u5206\u6d41\u65f6\u586b\u5199\uff09\uff0c\u4e00\u822c\u9ed8\u8ba4\u5373\u53ef\u3002 Unit-Id \uff1a\u586b\u5199\u76ee\u6807 Modbus slave \u8bbe\u5907\u7684\u5730\u5740\uff08\u901a\u5e38\u4e3a1\uff0c\u5177\u4f53\u770b\u4f60\u7684\u8bbe\u5907\u8bbe\u7f6e\uff09\u3002 FC\uff08\u529f\u80fd\u7801\uff09 \uff1a\u9009\u62e9\u4f60\u8981\u6267\u884c\u7684Modbus\u529f\u80fd\u7801\uff0c\u5e38\u7528\u5982\u4e0b\uff1a 1\uff1a\u8bfb\u7ebf\u5708\uff08Coil Status\uff09 2\uff1a\u8bfb\u79bb\u6563\u8f93\u5165\uff08Input Status\uff09 3\uff1a\u8bfb\u4fdd\u6301\u5bc4\u5b58\u5668\uff08Holding Registers\uff0c\u6700\u5e38\u7528\uff09 4\uff1a\u8bfb\u8f93\u5165\u5bc4\u5b58\u5668\uff08Input Registers\uff09 Address \uff1a\u8981\u8bfb\u53d6\u7684\u5bc4\u5b58\u5668\u6216\u7ebf\u5708\u7684\u8d77\u59cb\u5730\u5740\uff08\u901a\u5e38\u4ece0\u62161\u5f00\u59cb\uff0c\u5177\u4f53\u770b\u8bbe\u5907\u624b\u518c\uff09\u3002 Quantity \uff1a\u8bfb\u53d6\u7684\u6570\u91cf\uff08\u5982\u8981\u8bfb2\u4e2a\u5bc4\u5b58\u5668\u5c31\u586b2\uff09\u3002 Poll Rate \uff1a\u8f6e\u8be2\u5468\u671f\uff0c\u5355\u4f4d\u4e3a\u6beb\u79d2\uff08\u59821000\u8868\u793a\u6bcf\u79d2\u8bfb\u53d6\u4e00\u6b21\uff09\u3002 \u4e3e\u4f8b\uff08\u8bfb\u53d6slave\u5730\u5740\u4e3a1\uff0c\u4fdd\u6301\u5bc4\u5b58\u5668\uff0c\u8d77\u59cb\u5730\u57400\uff0c\u6570\u91cf2\uff0c\u6bcf\u79d2\u8f6e\u8be2\uff09\uff1a - Unit-Id\uff1a1 - FC\uff1a3 - Address\uff1a0 - Quantity\uff1a2 - Poll Rate\uff1a1000 \u6b65\u9aa4\u4e94\uff1a\u90e8\u7f72\u4e0e\u8c03\u8bd5 \u00b6 \u8fde\u63a5\u8282\u70b9\uff0c\u70b9\u51fb\u53f3\u4e0a\u89d2\u201c\u90e8\u7f72\u201d\u3002 \u67e5\u770bdebug\u9762\u677f\uff0c\u786e\u8ba4\u6570\u636e\u662f\u5426\u6b63\u5e38\u6536\u53d1\u3002 \u53c2\u8003\u793a\u4f8b \u00b6 [modbus-read] \u2192 [debug] \u5e38\u89c1\u95ee\u9898 \u00b6 \u786e\u8ba4\u7269\u7406\u8fde\u63a5\u548c\u4e32\u53e3\u6743\u9650\u3002 TCP\u6a21\u5f0f\u4e0b\u9632\u706b\u5899\u9700\u653e\u884c502\u7aef\u53e3\u3002 RTU\u6a21\u5f0f\u4e0b\u9700\u6b63\u786e\u914d\u7f6e\u4e32\u53e3\u53c2\u6570\u3002 \u5982\u9700\u66f4\u8be6\u7ec6\u7684\u914d\u7f6e\u8bf4\u660e\uff0c\u53ef\u53c2\u8003 node-red-contrib-modbus\u5b98\u65b9\u6587\u6863","title":"node-red\u5982\u4f55\u8fde\u63a5modbus _slave\u8bbe\u5907"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#node-redmodbus-slave","text":"","title":"node-red\u5982\u4f55\u8fde\u63a5modbus slave\u8bbe\u5907"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#_1","text":"\u6211\u60f3\u5728node-red\u4e2d\u7528\u6d41\u7a0b\u56fe\u4e2d\u914d\u7f6emodbus master\u4e3b\u8bbe\u5907\u901a\u8fc7mocbus tcp rtu\u53bb\u8054\u63a5modbus slave\u8bbe\u5907\uff0c\u5982\u4f55\u914d\u7f6e\u5462\uff1f","title":"\u8bf4\u660e"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#modbus","text":"\u6253\u5f00Node-RED\u7f16\u8f91\u5668\uff08\u6d4f\u89c8\u5668\u8bbf\u95ee http://<\u4f60\u7684\u8bbe\u5907IP>:1880\uff09\u3002 \u70b9\u51fb\u53f3\u4e0a\u89d2\u83dc\u5355\uff0c\u9009\u62e9\u201cManage palette\uff08\u7ba1\u7406\u8c03\u8272\u677f\uff09\u201d\u3002 \u5728\u201cInstall\u201d\u6807\u7b7e\u9875\u4e2d\u641c\u7d22 node-red-contrib-modbus \uff0c\u70b9\u51fb\u201cInstall\u201d\u5b89\u88c5\u3002","title":"\u6b65\u9aa4\u4e00\uff1a\u5b89\u88c5Modbus\u76f8\u5173\u8282\u70b9"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#modbus-tcprtu","text":"\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u5de6\u4fa7\u4f1a\u51fa\u73b0\u201cmodbus\u201d\u7c7b\u522b\u3002 \u62d6\u62fd modbus-read \u6216 modbus-write \u8282\u70b9\u5230\u6d41\u7a0b\u56fe\u4e2d\u3002 \u53cc\u51fb\u8282\u70b9\uff0c\u70b9\u51fb\u201cServer\u201d\u53f3\u4fa7\u7684\u94c5\u7b14\u56fe\u6807\uff0c\u65b0\u589eModbus\u670d\u52a1\u5668\u914d\u7f6e\u3002","title":"\u6b65\u9aa4\u4e8c\uff1a\u6dfb\u52a0Modbus TCP/RTU\u8282\u70b9"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#modbusmaster","text":"\u8fde\u63a5\u7c7b\u578b \uff1a \u5982\u679c\u662fTCP\uff0c\u9009\u62e9\u201cTCP\u201d\uff0c\u586b\u5199Slave\u8bbe\u5907\u7684IP\u548c\u7aef\u53e3\uff08\u901a\u5e38\u4e3a502\uff09\u3002 \u5982\u679c\u662fRTU\uff08\u4e32\u53e3\uff09\uff0c\u9009\u62e9\u201cSerial\u201d\uff0c\u586b\u5199\u4e32\u53e3\u8bbe\u5907\uff08\u5982 /dev/ttyUSB0 \uff09\u3001\u6ce2\u7279\u7387\u3001\u6570\u636e\u4f4d\u3001\u6821\u9a8c\u7b49\u53c2\u6570\u3002 Unit-Id \uff1a\u586b\u5199\u76ee\u6807Slave\u7684\u5730\u5740\uff08\u901a\u5e38\u4e3a1\uff09\u3002 \u5176\u4ed6\u53c2\u6570\u6309\u5b9e\u9645\u9700\u6c42\u8bbe\u7f6e\u3002","title":"\u6b65\u9aa4\u4e09\uff1a\u914d\u7f6eModbus\u4e3b\u8bbe\u5907\uff08Master\uff09"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#_2","text":"modbus-read \u8282\u70b9\uff1a\u8bbe\u7f6e\u529f\u80fd\u7801\uff08\u598203\u8bfb\u4fdd\u6301\u5bc4\u5b58\u5668\uff09\u3001\u8d77\u59cb\u5730\u5740\u3001\u957f\u5ea6\u3001\u8f6e\u8be2\u95f4\u9694\u7b49\u3002 modbus-write \u8282\u70b9\uff1a\u8bbe\u7f6e\u529f\u80fd\u7801\u3001\u76ee\u6807\u5730\u5740\u3001\u5199\u5165\u6570\u636e\u7b49\u3002","title":"\u6b65\u9aa4\u56db\uff1a\u914d\u7f6e\u8bfb\u5199\u64cd\u4f5c"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#modbus-read","text":"\u540d\u79f0 \uff1a\u81ea\u5b9a\u4e49\uff0c\u4fbf\u4e8e\u8bc6\u522b\u3002 \u4e3b\u9898\uff08Topic\uff09 \uff1a\u53ef\u7559\u7a7a\u6216\u81ea\u5b9a\u4e49\uff08\u5982\u7528\u4e8e\u6d88\u606f\u5206\u6d41\u65f6\u586b\u5199\uff09\uff0c\u4e00\u822c\u9ed8\u8ba4\u5373\u53ef\u3002 Unit-Id \uff1a\u586b\u5199\u76ee\u6807 Modbus slave \u8bbe\u5907\u7684\u5730\u5740\uff08\u901a\u5e38\u4e3a1\uff0c\u5177\u4f53\u770b\u4f60\u7684\u8bbe\u5907\u8bbe\u7f6e\uff09\u3002 FC\uff08\u529f\u80fd\u7801\uff09 \uff1a\u9009\u62e9\u4f60\u8981\u6267\u884c\u7684Modbus\u529f\u80fd\u7801\uff0c\u5e38\u7528\u5982\u4e0b\uff1a 1\uff1a\u8bfb\u7ebf\u5708\uff08Coil Status\uff09 2\uff1a\u8bfb\u79bb\u6563\u8f93\u5165\uff08Input Status\uff09 3\uff1a\u8bfb\u4fdd\u6301\u5bc4\u5b58\u5668\uff08Holding Registers\uff0c\u6700\u5e38\u7528\uff09 4\uff1a\u8bfb\u8f93\u5165\u5bc4\u5b58\u5668\uff08Input Registers\uff09 Address \uff1a\u8981\u8bfb\u53d6\u7684\u5bc4\u5b58\u5668\u6216\u7ebf\u5708\u7684\u8d77\u59cb\u5730\u5740\uff08\u901a\u5e38\u4ece0\u62161\u5f00\u59cb\uff0c\u5177\u4f53\u770b\u8bbe\u5907\u624b\u518c\uff09\u3002 Quantity \uff1a\u8bfb\u53d6\u7684\u6570\u91cf\uff08\u5982\u8981\u8bfb2\u4e2a\u5bc4\u5b58\u5668\u5c31\u586b2\uff09\u3002 Poll Rate \uff1a\u8f6e\u8be2\u5468\u671f\uff0c\u5355\u4f4d\u4e3a\u6beb\u79d2\uff08\u59821000\u8868\u793a\u6bcf\u79d2\u8bfb\u53d6\u4e00\u6b21\uff09\u3002 \u4e3e\u4f8b\uff08\u8bfb\u53d6slave\u5730\u5740\u4e3a1\uff0c\u4fdd\u6301\u5bc4\u5b58\u5668\uff0c\u8d77\u59cb\u5730\u57400\uff0c\u6570\u91cf2\uff0c\u6bcf\u79d2\u8f6e\u8be2\uff09\uff1a - Unit-Id\uff1a1 - FC\uff1a3 - Address\uff1a0 - Quantity\uff1a2 - Poll Rate\uff1a1000","title":"Modbus-Read\u8282\u70b9\u53c2\u6570\u586b\u5199\u8bf4\u660e"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#_3","text":"\u8fde\u63a5\u8282\u70b9\uff0c\u70b9\u51fb\u53f3\u4e0a\u89d2\u201c\u90e8\u7f72\u201d\u3002 \u67e5\u770bdebug\u9762\u677f\uff0c\u786e\u8ba4\u6570\u636e\u662f\u5426\u6b63\u5e38\u6536\u53d1\u3002","title":"\u6b65\u9aa4\u4e94\uff1a\u90e8\u7f72\u4e0e\u8c03\u8bd5"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#_4","text":"[modbus-read] \u2192 [debug]","title":"\u53c2\u8003\u793a\u4f8b"},{"location":"node-reds/node-red%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5modbus%20_slave%E8%AE%BE%E5%A4%87/#_5","text":"\u786e\u8ba4\u7269\u7406\u8fde\u63a5\u548c\u4e32\u53e3\u6743\u9650\u3002 TCP\u6a21\u5f0f\u4e0b\u9632\u706b\u5899\u9700\u653e\u884c502\u7aef\u53e3\u3002 RTU\u6a21\u5f0f\u4e0b\u9700\u6b63\u786e\u914d\u7f6e\u4e32\u53e3\u53c2\u6570\u3002 \u5982\u9700\u66f4\u8be6\u7ec6\u7684\u914d\u7f6e\u8bf4\u660e\uff0c\u53ef\u53c2\u8003 node-red-contrib-modbus\u5b98\u65b9\u6587\u6863","title":"\u5e38\u89c1\u95ee\u9898"},{"location":"node-reds/node-red%E5%B8%B8%E7%94%A8%E7%BB%84%E4%BB%B6%E5%88%97%E8%A1%A8/","text":"Node-RED \u5e38\u7528\u7ec4\u4ef6\u5217\u8868 \u00b6 \u4ee5\u4e0b\u662f\u5e38\u7528\u7684 Node-RED \u7ec4\u4ef6\u53ca\u5176\u7248\u672c\uff0c\u5efa\u8bae\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5b89\u88c5\u3002 \u7ec4\u4ef6\u540d\u79f0 \u7248\u672c \u8bf4\u660e @node-red-contrib-themes/theme-collection 4.0.11 \u4e3b\u9898\u96c6\u5408 node-red 4.0.9 Node-RED \u4e3b\u7a0b\u5e8f node-red-contrib-aedes 0.6.0 MQTT Broker \u8282\u70b9 node-red-contrib-bigtimer 2.8.6 \u5f3a\u5927\u7684\u5b9a\u65f6\u5668\u8282\u70b9 node-red-contrib-cast 0.2.17 Google Cast \u652f\u6301 node-red-contrib-counter 0.1.6 \u8ba1\u6570\u5668\u8282\u70b9 node-red-contrib-cron-plus 2.1.0 \u9ad8\u7ea7\u5b9a\u65f6\u4efb\u52a1\u8282\u70b9 node-red-contrib-home-assistant-websocket 0.77.1 Home Assistant \u96c6\u6210 node-red-contrib-influxdb 0.7.0 InfluxDB \u6570\u636e\u5e93\u652f\u6301 node-red-contrib-interval-length 0.0.6 \u95f4\u9694\u957f\u5ea6\u8ba1\u7b97 node-red-contrib-lvin-crc16 1.0.2 CRC16 \u6821\u9a8c node-red-contrib-md5 1.0.4 MD5 \u52a0\u5bc6 node-red-contrib-modbus 5.43.0 Modbus \u534f\u8bae\u652f\u6301 node-red-contrib-moment 5.0.0 \u65f6\u95f4\u5904\u7406 node-red-contrib-mqtt-broker 0.2.9 MQTT Broker \u8282\u70b9 node-red-contrib-persistent-fsm 1.2.1 \u6709\u72b6\u6001\u673a\u8282\u70b9 node-red-contrib-sunevents 3.1.1 \u65e5\u51fa\u65e5\u843d\u4e8b\u4ef6 node-red-contrib-time-range-switch 1.2.0 \u65f6\u95f4\u8303\u56f4\u5f00\u5173 node-red-dashboard 3.6.5 \u4eea\u8868\u76d8\u7ec4\u4ef6 node-red-node-base64 1.0.0 Base64 \u7f16\u7801\u89e3\u7801 node-red-node-email 3.0.3 \u90ae\u4ef6\u53d1\u9001\u8282\u70b9 node-red-node-feedparser 0.3.0 RSS Feed \u89e3\u6790 node-red-node-ping 0.3.3 Ping \u8282\u70b9 node-red-node-random 0.4.1 \u968f\u673a\u6570\u8282\u70b9 node-red-node-serialport 2.0.3 \u4e32\u53e3\u8282\u70b9 node-red-node-smooth 0.1.2 \u5e73\u6ed1\u6570\u636e\u8282\u70b9 node-red-node-suncalc 1.2.0 \u592a\u9633\u8ba1\u7b97\u8282\u70b9 node-red-node-twitter 1.2.0 Twitter \u96c6\u6210 \u5982\u9700\u8be6\u7ec6\u4f7f\u7528\u65b9\u6cd5\uff0c\u8bf7\u53c2\u8003\u5b98\u65b9\u6587\u6863\u6216\u793e\u533a\u6559\u7a0b\u3002","title":"node-red\u5e38\u7528\u7ec4\u4ef6\u5217\u8868"},{"location":"node-reds/node-red%E5%B8%B8%E7%94%A8%E7%BB%84%E4%BB%B6%E5%88%97%E8%A1%A8/#node-red","text":"\u4ee5\u4e0b\u662f\u5e38\u7528\u7684 Node-RED \u7ec4\u4ef6\u53ca\u5176\u7248\u672c\uff0c\u5efa\u8bae\u6839\u636e\u5b9e\u9645\u9700\u6c42\u9009\u62e9\u5b89\u88c5\u3002 \u7ec4\u4ef6\u540d\u79f0 \u7248\u672c \u8bf4\u660e @node-red-contrib-themes/theme-collection 4.0.11 \u4e3b\u9898\u96c6\u5408 node-red 4.0.9 Node-RED \u4e3b\u7a0b\u5e8f node-red-contrib-aedes 0.6.0 MQTT Broker \u8282\u70b9 node-red-contrib-bigtimer 2.8.6 \u5f3a\u5927\u7684\u5b9a\u65f6\u5668\u8282\u70b9 node-red-contrib-cast 0.2.17 Google Cast \u652f\u6301 node-red-contrib-counter 0.1.6 \u8ba1\u6570\u5668\u8282\u70b9 node-red-contrib-cron-plus 2.1.0 \u9ad8\u7ea7\u5b9a\u65f6\u4efb\u52a1\u8282\u70b9 node-red-contrib-home-assistant-websocket 0.77.1 Home Assistant \u96c6\u6210 node-red-contrib-influxdb 0.7.0 InfluxDB \u6570\u636e\u5e93\u652f\u6301 node-red-contrib-interval-length 0.0.6 \u95f4\u9694\u957f\u5ea6\u8ba1\u7b97 node-red-contrib-lvin-crc16 1.0.2 CRC16 \u6821\u9a8c node-red-contrib-md5 1.0.4 MD5 \u52a0\u5bc6 node-red-contrib-modbus 5.43.0 Modbus \u534f\u8bae\u652f\u6301 node-red-contrib-moment 5.0.0 \u65f6\u95f4\u5904\u7406 node-red-contrib-mqtt-broker 0.2.9 MQTT Broker \u8282\u70b9 node-red-contrib-persistent-fsm 1.2.1 \u6709\u72b6\u6001\u673a\u8282\u70b9 node-red-contrib-sunevents 3.1.1 \u65e5\u51fa\u65e5\u843d\u4e8b\u4ef6 node-red-contrib-time-range-switch 1.2.0 \u65f6\u95f4\u8303\u56f4\u5f00\u5173 node-red-dashboard 3.6.5 \u4eea\u8868\u76d8\u7ec4\u4ef6 node-red-node-base64 1.0.0 Base64 \u7f16\u7801\u89e3\u7801 node-red-node-email 3.0.3 \u90ae\u4ef6\u53d1\u9001\u8282\u70b9 node-red-node-feedparser 0.3.0 RSS Feed \u89e3\u6790 node-red-node-ping 0.3.3 Ping \u8282\u70b9 node-red-node-random 0.4.1 \u968f\u673a\u6570\u8282\u70b9 node-red-node-serialport 2.0.3 \u4e32\u53e3\u8282\u70b9 node-red-node-smooth 0.1.2 \u5e73\u6ed1\u6570\u636e\u8282\u70b9 node-red-node-suncalc 1.2.0 \u592a\u9633\u8ba1\u7b97\u8282\u70b9 node-red-node-twitter 1.2.0 Twitter \u96c6\u6210 \u5982\u9700\u8be6\u7ec6\u4f7f\u7528\u65b9\u6cd5\uff0c\u8bf7\u53c2\u8003\u5b98\u65b9\u6587\u6863\u6216\u793e\u533a\u6559\u7a0b\u3002","title":"Node-RED \u5e38\u7528\u7ec4\u4ef6\u5217\u8868"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/","text":"\u5982\u4f55\u5b89\u88c5node-red\u5b89\u88c5\u5230orangepi Zero3 \u00b6 \u64cd\u4f5c\u7cfb\u7edf \u00b6 \u57fa\u4e8eubuntu\u7684\u64cd\u4f5c\u7cfb\u7edf\u7684orangepizero3\u5b9a\u5236\u7248 \u5b89\u88c5\u6b65\u9aa4 \u00b6 1. \u66f4\u65b0\u7cfb\u7edf \u00b6 \u5728\u7ec8\u7aef\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\uff0c\u786e\u4fdd\u7cfb\u7edf\u4e3a\u6700\u65b0\uff1a sudo apt-get update && sudo apt-get upgrade -y 2. \u5b89\u88c5Node-RED \u00b6 Node-RED\u5b98\u65b9\u63d0\u4f9b\u4e86\u4e00\u952e\u5b89\u88c5\u811a\u672c\uff0c\u9002\u7528\u4e8eDebian/Ubuntu\u7cfb\u7edf\uff1a bash < ( curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered ) \u5b89\u88c5\u8fc7\u7a0b\u4e2d\u53ef\u6839\u636e\u63d0\u793a\u9009\u62e9\u201cy\u201d\u7ee7\u7eed\u3002 3. \u542f\u52a8\u4e0e\u505c\u6b62Node-RED \u00b6 \u542f\u52a8\uff1a bash node-red-start \u505c\u6b62\uff1a bash node-red-stop \u67e5\u770b\u65e5\u5fd7\uff1a bash node-red-log 4. \u8bbe\u7f6e\u5f00\u673a\u81ea\u542f \u00b6 \u901a\u5e38\u5b89\u88c5\u811a\u672c\u4f1a\u81ea\u52a8\u8bbe\u7f6e\u5f00\u673a\u81ea\u542f\uff0c\u5982\u9700\u624b\u52a8\u8bbe\u7f6e\uff1a sudo systemctl enable nodered.service 5. \u8bbf\u95eeNode-RED \u00b6 \u5728\u6d4f\u89c8\u5668\u8bbf\u95ee\uff1a http://<\u4f60\u7684OrangePi\u7684IP\u5730\u5740>:1880 \u53ef\u7528 hostname -I \u6216 ip a \u547d\u4ee4\u67e5\u8be2IP\u5730\u5740 sudo systemctl status nodered.service sudo systemctl start nodered.service sudo systemctl stop nodered.service sudo systemctl restart nodered.service \u5982\u4f55\u5b89\u88c5\u63d2\u4ef6 \u00b6 \u5982\u4f55\u8fdb\u5165\u63d2\u4ef6\u7ba1\u7406 \u00b6 \u5982\u4f55\u5b89\u88c5MQTT\u63d2\u4ef6 \u00b6","title":"\u5982\u4f55\u628anode-red\u5b89\u88c5\u5230orangepiZero"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#node-redorangepi-zero3","text":"","title":"\u5982\u4f55\u5b89\u88c5node-red\u5b89\u88c5\u5230orangepi Zero3"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#_1","text":"\u57fa\u4e8eubuntu\u7684\u64cd\u4f5c\u7cfb\u7edf\u7684orangepizero3\u5b9a\u5236\u7248","title":"\u64cd\u4f5c\u7cfb\u7edf"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#_2","text":"","title":"\u5b89\u88c5\u6b65\u9aa4"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#1","text":"\u5728\u7ec8\u7aef\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\uff0c\u786e\u4fdd\u7cfb\u7edf\u4e3a\u6700\u65b0\uff1a sudo apt-get update && sudo apt-get upgrade -y","title":"1. \u66f4\u65b0\u7cfb\u7edf"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#2-node-red","text":"Node-RED\u5b98\u65b9\u63d0\u4f9b\u4e86\u4e00\u952e\u5b89\u88c5\u811a\u672c\uff0c\u9002\u7528\u4e8eDebian/Ubuntu\u7cfb\u7edf\uff1a bash < ( curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered ) \u5b89\u88c5\u8fc7\u7a0b\u4e2d\u53ef\u6839\u636e\u63d0\u793a\u9009\u62e9\u201cy\u201d\u7ee7\u7eed\u3002","title":"2. \u5b89\u88c5Node-RED"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#3-node-red","text":"\u542f\u52a8\uff1a bash node-red-start \u505c\u6b62\uff1a bash node-red-stop \u67e5\u770b\u65e5\u5fd7\uff1a bash node-red-log","title":"3. \u542f\u52a8\u4e0e\u505c\u6b62Node-RED"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#4","text":"\u901a\u5e38\u5b89\u88c5\u811a\u672c\u4f1a\u81ea\u52a8\u8bbe\u7f6e\u5f00\u673a\u81ea\u542f\uff0c\u5982\u9700\u624b\u52a8\u8bbe\u7f6e\uff1a sudo systemctl enable nodered.service","title":"4. \u8bbe\u7f6e\u5f00\u673a\u81ea\u542f"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#5-node-red","text":"\u5728\u6d4f\u89c8\u5668\u8bbf\u95ee\uff1a http://<\u4f60\u7684OrangePi\u7684IP\u5730\u5740>:1880 \u53ef\u7528 hostname -I \u6216 ip a \u547d\u4ee4\u67e5\u8be2IP\u5730\u5740 sudo systemctl status nodered.service sudo systemctl start nodered.service sudo systemctl stop nodered.service sudo systemctl restart nodered.service","title":"5. \u8bbf\u95eeNode-RED"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#_3","text":"","title":"\u5982\u4f55\u5b89\u88c5\u63d2\u4ef6"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#_4","text":"","title":"\u5982\u4f55\u8fdb\u5165\u63d2\u4ef6\u7ba1\u7406"},{"location":"node-reds/%E5%A6%82%E4%BD%95%E6%8A%8Anode-red%E5%AE%89%E8%A3%85%E5%88%B0orangepiZero3/#mqtt","text":"","title":"\u5982\u4f55\u5b89\u88c5MQTT\u63d2\u4ef6"},{"location":"node-reds/%E5%AE%89%E8%A3%85node-red%E8%AE%B0%E5%BD%95/","text":"unning Node-RED install for user orangepi at /home/orangepi on ubuntu [sudo] password for orangepi: This can take 20-30 minutes on the slower Pi versions - please wait. Stop Node-RED \u2714 Remove old version of Node-RED \u2714 Remove old version of Node.js \u2714 Install Node 20.19.3-1nodesource1 \u2714 v20.19.3 Npm 10.8.2 Clean npm cache \u2714 Install Node-RED core \u2714 4.0.9 Move global nodes to local - Npm rebuild existing nodes \u2714 Install extra Pi nodes \u2714 Add shortcut commands \u2718 Update systemd script \u2714 Any errors will be logged to /var/log/nodered-install.log All done. You can now start Node-RED with the command node-red-start or using the icon under Menu / Programming / Node-RED Then point your browser to localhost:1880 or http://{your_pi_ip-address}:1880 Started : Wed Jul 9 12:28:33 PM CST 2025 Finished: Wed Jul 9 12:37:17 PM CST 2025 ### WARNING DO NOT EXPOSE NODE-RED TO THE OPEN INTERNET WITHOUT SECURING IT FIRST Even if your Node-RED doesn't have anything valuable, (automated) attacks will happen and could provide a foothold in your local network Follow the guide at https://nodered.org/docs/user-guide/runtime/securing-node-red to setup security. ### ADDITIONAL RECOMMENDATIONS You can customise the initial settings by running: node-red admin init Node-RED Settings File initialisation ===================================== This tool will help you create a Node-RED settings file. \u2716 Settings file \u00b7 /home/orangepi/.node-red/settings.js orangepi@orangepizero3:~$ ^C orangepi@orangepizero3:~$","title":"\u5b89\u88c5node-red\u8bb0\u5f55"}]}