Đăng ký thiết bị theo cách thủ công bằng API REST

Để phát triển nhanh, bạn có thể sử dụng công cụ đăng ký được cung cấp cùng với SDK Trợ lý Google để nhanh chóng đăng ký hoặc cập nhật mẫu và phiên bản thiết bị.

Nếu không muốn sử dụng công cụ này, bạn có thể đăng ký hoặc cập nhật thiết bị theo cách thủ công bằng cách sử dụng tệp JSON và API REST. Bạn có thể thực hiện việc này trên bất kỳ máy tính nào. Trước tiên, hãy lấy mã truy cập rồi chuyển đến phần thích hợp.

Lấy mã truy cập

  1. Đảm bảo công cụ uỷ quyền đã được cập nhật:

    python -m pip install --upgrade google-auth-oauthlib[tool]

  2. Lấy thông tin đăng nhập để có thể đăng ký mẫu thiết bị mới. Tham chiếu tệp JSON mà bạn đã sao chép vào thiết bị trong bước bước.

    google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype \
          --headless --client-secrets /path/to/client_secret_client-id.json

    Bạn sẽ thấy một URL xuất hiện trong thiết bị đầu cuối:

    Please visit this URL to authorize this application: https://...

  3. Sao chép và dán URL vào một trình duyệt (bạn có thể thực hiện việc này trên máy phát triển hoặc bất kỳ máy nào khác). Sau khi bạn phê duyệt, một mã sẽ xuất hiện trong trình duyệt của bạn, chẳng hạn như "4/XXXX". Sao chép và dán mã này vào thiết bị đầu cuối:

    Enter the authorization code:

    Nếu yêu cầu uỷ quyền thành công, bạn sẽ thấy phản hồi JSON tương tự như sau:

    {
       "scopes": ["https://www.googleapis.com/auth/assistant-sdk-prototype"],
       "token_uri": "https://accounts.google.com/o/oauth2/token",
       "token": "ya29.GlujBLa_kuXZ5GnGBPBe_A6NpczLcpOtglEC0wHVORnmEhHETzlSW",
       "client_id": "795595571889-6iesr9a3nkmnipbdfnqi6gehiklm2m28.apps.googleusercontent.com",
       "client_secret": "Un8_TNFnb55555auSAGasvAg",
       "refresh_token": "1/4ZMBhTR3bTYWVEMatYWLOxW755555hlQXZI5uC02F2U"
     }

    Nếu bạn thấy UNAUTHENTICATED thì tức là bạn đã nhập mã không hợp lệ. Hãy thử lại, nhớ sao chép và dán toàn bộ mã.

  4. Tìm token trong phản hồi JSON. Sao chép mã truy cập này (không bao gồm dấu ngoặc kép) vào một biến môi trường:

    ACCESSTOKEN=access-token

Hoạt động của mẫu thiết bị

Xác định và đăng ký mẫu thiết bị

  1. Tạo một tệp (ví dụ: device_model.json) mô tả các đặc điểm của mẫu thiết bị. Hãy xem tài liệu tham khảo JSON về mẫu thiết bị để biết thêm thông tin.

  2. Đăng ký mẫu thiết bị của bạn bằng một trong các phương thức sau. Hãy nhớ thay thế project_id liên kết với mẫu thiết bị trong các URL dưới đây.

    • Hãy sử dụng lệnh sau:

      curl -s -X POST -H "Content-Type: application/json" \
      -H "Authorization: Bearer $ACCESSTOKEN" -d @device_model.json \
      https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/
    • Gửi yêu cầu HTTPS có các thuộc tính sau:

    Đối với cả hai phương thức, máy chủ sẽ trả về bản sao của mẫu thiết bị JSON mà bạn đã gửi. Nếu mô hình này đã tồn tại trên máy chủ, bạn sẽ gặp lỗi ALREADY_EXISTS.

Tải mẫu thiết bị

Tìm mẫu thiết bị bằng một trong các phương thức sau. Hãy nhớ thay thế project_iddevice_model_id liên kết với mẫu thiết bị của bạn trong các URL bên dưới.

Liệt kê các mẫu thiết bị

Liệt kê tất cả mẫu thiết bị của bạn cho một dự án cụ thể bằng một trong những phương thức sau. Hãy nhớ thay thế project_id được liên kết với các mẫu thiết bị của bạn trong các URL dưới đây.

  • Hãy sử dụng lệnh sau:

    curl -s -X GET -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/
  • Gửi yêu cầu HTTPS có các thuộc tính sau:

Cập nhật mẫu thiết bị

Cập nhật mẫu thiết bị bằng một trong hai phương pháp sau. Hãy nhớ thay thế project_iddevice_model_id liên kết với mẫu thiết bị của bạn.

  • Hãy sử dụng lệnh sau:

    curl -s -X PUT -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" -d @device_model.json \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/device_model_id
  • Gửi yêu cầu HTTPS có các thuộc tính sau:

Đối với cả hai phương thức, máy chủ sẽ trả về một bản sao của JSON mẫu thiết bị đã cập nhật mà bạn đã gửi.

Xoá mẫu thiết bị

Xoá mẫu thiết bị bằng một trong hai phương pháp sau. Hãy nhớ thay thế project_iddevice_model_id liên kết với mẫu thiết bị của bạn trong các URL bên dưới.

Thao tác với thực thể thiết bị

Xác định và đăng ký một thực thể thiết bị

  1. Tạo một tệp (ví dụ: test_device.json) giúp nhận dạng thiết bị của bạn. Hãy xem tài liệu tham khảo JSON về phiên bản thiết bị để biết thêm thông tin.

  2. Đăng ký thiết bị của bạn bằng một trong các phương pháp sau. Hãy nhớ thay thế project_id liên kết với mẫu thiết bị trong các URL dưới đây.

    • Hãy sử dụng lệnh sau:

      curl -s -X POST -H "Content-Type: application/json" \
      -H "Authorization: Bearer $ACCESSTOKEN" -d @test_device.json \
      https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/
    • Gửi yêu cầu HTTPS có các thuộc tính sau:

    Đối với cả hai phương thức, máy chủ sẽ trả về một bản sao của JSON của phiên bản thiết bị mà bạn đã gửi. Nếu thực thể đó đã tồn tại trên máy chủ, bạn sẽ gặp lỗi ALREADY_EXISTS.

Nhận phiên bản thiết bị

Lấy phiên bản thiết bị của bạn bằng một trong hai phương thức sau. Hãy nhớ thay thế project_id liên kết với mẫu thiết bị và thiết bị id trong các URL bên dưới.

  • Hãy sử dụng lệnh sau:

    curl -s -X GET -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/id
  • Gửi yêu cầu HTTPS có các thuộc tính sau:

Liệt kê các phiên bản thiết bị

Liệt kê tất cả thực thể thiết bị của một dự án nhất định bằng một trong các phương thức sau. Hãy nhớ thay thế project_id liên kết với các thực thể thiết bị trong URL dưới đây.

  • Hãy sử dụng lệnh sau:

    curl -s -X GET -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/
  • Gửi yêu cầu HTTPS có các thuộc tính sau:

Xoá một phiên bản thiết bị

Xoá phiên bản thiết bị của bạn bằng một trong hai phương pháp sau. Hãy nhớ thay thế project_id liên kết với mẫu thiết bị và thiết bị id trong các URL bên dưới.

  • Hãy sử dụng lệnh sau:

    curl -s -X DELETE -H "Content-Type: application/json" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/id
  • Gửi yêu cầu HTTPS có các thuộc tính sau: