Đă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ý đi kèm với SDK Trợ lý Google để nhanh chóng đăng ký hoặc cập nhật thiết bị mô hình và phiên bản.

Nếu không muốn sử dụng công cụ này, bạn có thể đăng ký theo cách thủ công hoặc cập nhật một thiết bị bằng tệp JSON và API REST. Bạn có thể làm việc này trên bất kỳ của bạn. Trước tiên, hãy lấy mã truy cập rồi chuyển đến phù 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 xác thực để 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ị ở một trang trướ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 trên thiết bị đầu cuối:

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

  3. Sao chép URL rồi dán 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 uỷ quyền thành công, bạn sẽ thấy phản hồi JSON tương tự như 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, cẩn thận 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) thành một biến môi trường:

    ACCESSTOKEN=access-token

Hoạt động trên mẫu thiết bị

Định nghĩa và đăng ký mẫu thiết bị

  1. Tạo một tệp (ví dụ: device_model.json) mô tả đặc điểm mẫu thiết bị của bạn. Xem tài liệu tham khảo về JSON 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 những phương thức sau. 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 một yêu cầu HTTPS có các thuộc tính sau:

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

Tải mẫu thiết bị

Lấy mẫu thiết bị bằng một trong các phương thức sau. 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 dưới đây.

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 các phương thức sau. Nhớ thay thế project_id được liên kết với mẫu thiết bị của bạn trong các URL dưới đây.

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

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

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

Xoá mẫu thiết bị

Xoá mẫu thiết bị bằng một trong các phương thức sau. 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 dưới đây.

Thao tác thực thể thiết bị

Định nghĩa 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. Xem tài liệu tham khảo JSON cho 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 những phương thức sau. 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 một yêu cầu HTTPS có các thuộc tính sau:

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

Tải một phiên bản thiết bị

Lấy phiên bản thiết bị bằng một trong các phương thức sau. Nhớ thay thế project_id được liên kết với mẫu thiết bị và thiết bị id trong các URL dưới đây.

Liệt kê các thực thể thiết bị

Liệt kê tất cả phiên bản thiết bị của bạn cho một dự án nhất định bằng cách sử dụ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 phiên bản 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 một 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ị bằng một trong các phương thức sau. Nhớ thay thế project_id được liên kết với mẫu thiết bị và thiết bị id trong các URL dưới đây.