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ị của mình tuỳ thích. Các trait này không chỉ gắn với một loại thiết bị nào mà bạn có thể tuỳ ý sử dụng.

Đây là quá 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ã sau đây dưới khối mã hiện có để xử lý lệnh action.devices.commands.OnOff (không xoá khối mã hiện có).

    @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-nameChuyển đến trang trait cụ thể trong Bước 1 (ví dụ: ColorTemperature). Sử dụng một lệnh từ bảng Lệnh lệnh trên thiết bị.
    my-functionĐặt tên bất kỳ cho hàm xử lý theo ý bạn.
    parameter-nameXem lại bảng Device AlarmS (Lệnh lệnh của thiết bị) trên trang trait. Mỗi lệnh có một hoặc nhiều tham số liên kết với nó. Các dữ liệu này được liệt kê trong "params" trong JSON yêu cầu EXECUTE. Sử dụng đúng tên thông số. Xin lưu ý rằng một số tham số trong số này là các đối tượng chứa các tham số khác – chỉ cần sử dụng đối tượng cấp cao nhất.
    conditionalBạn không nhất thiết phải sử dụng điều kiện trong mã trình xử lý, nhưng điều này có thể giúp phân biệt cách bạn thực thi lệnh trên thiết bị.

    Dưới đây là một số ví dụ về các đặ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 trait 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%.

    Chọn màu xanh dương.

Bước tiếp theo

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