Thêm đặc điểm và bộ xử lý khác

Bạn có thể thêm bao nhiêu đặc điểm vào mẫu thiết bị tuỳ thích. Những đặc điểm này không liên kết với chỉ một loại thiết bị, bạn có thể sử dụng chúng theo ý muốn.

Đây là quy trình thêm bất kỳ trait nào và xử lý lệnh đến:

  1. Xác định đặc điểm mà bạn muốn để thêm.

  2. Mở tệp pushtotalk.py.

    cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/grpc
    nano pushtotalk.py
  3. Thêm khối mã dưới đây bên dưới khối hiện có xử lý lệnh action.devices.commands.OnOff (đừng xoá lệnh hiện có) khối mã).

    @device_handler.command('action.devices.commands.command-name')
    def my-function(parameter-name):
        if conditional:
            logging.info('Something happened.')
        else:
            logging.info('Something else happened.')
    
  4. Tìm thông tin bạn cần cho mỗi biến trong khối mã ở trên.

    command-nameTruy cập trang đặc điểm cụ thể từ Bước 1 (ví dụ: ColorTemperature). Sử dụng lệnh trong bảng Device NDKS (Lệnh của thiết bị).
    my-functionBạn có thể đặt tên bất kỳ cho hàm xử lý của mình.
    parameter-nameXem lại lệnh S của thiết bị trên trang đặc điểm. Mỗi lệnh có một hoặc nhiều tham số liên kết với cuộc trò chuyện đó. Những vấn đề này được liệt kê trong "params" trong phần EXECUTE yêu cầu JSON. Hãy dùng đúng tên thông số. Lưu ý rằng một vài tham số là các đối tượng chứa các tham số khác. Bạn chỉ cần sử dụng tham số đối tượng cấp cao nhất.
    conditionalBạn hoàn toàn không cần sử dụng điều kiện trong mã xử lý của bạn, nhưng điều này có thể giúp phân biệt cách bạn thực thi trên thiết bị.

    Sau đây là một số ví dụ về đặc điểm Độ sángColorTemperature:

    @device_handler.command('action.devices.commands.BrightnessAbsolute')
    def brightnessCheck(brightness):
        if brightness > 50:
            logging.info('brightness > 50')
        else:
            logging.info('brightness <= 50')
    
    @device_handler.command('action.devices.commands.ColorAbsolute')
    def color(color):
        if color.get('name') == "blue":
            logging.info('color is blue')
        else:
            logging.info('color is not blue')
    
  5. Cập nhật mẫu thiết bị bằng đặc điểm bạn đã thêm ở Bước 1.

  6. Chạy mã nguồn đã sửa đổi.

    cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/grpc
    python pushtotalk.py
  7. Nhấn phím Enter và thử một truy vấn.

    Ví dụ:

    Đặt độ sáng ở mức 65%.

    Chuyển thành màu xanh dương.

Bước tiếp theo

Đăng ký thao tác tuỳ chỉnh trên thiết bị