Danh bạ

Người liên hệ cho phép Glassware của bạn nhận các mục trong dòng thời gian mà ứng dụng không tạo. Người dùng phải chia sẻ rõ ràng mục dòng thời gian với người liên hệ của bạn bằng cách nhấn vào Mục trong trình đơn Chia sẻ.

Cách hoạt động

Sau khi bạn tạo một người liên hệ dùng chung, việc chia sẻ thẻ dòng thời gian sẽ tuân theo quy trình chung sau đây:

  1. Tạo một địa chỉ liên hệ và xác định loại MIME mà địa chỉ liên hệ của bạn hỗ trợ.
  2. Chèn địa chỉ liên hệ vào dòng thời gian của người dùng.
  3. Người dùng nhận được một mục trong dòng thời gian có một mục trong trình đơn Chia sẻ. Đồ thuỷ tinh phải cho phép người dùng chia sẻ các mục của họ với mục trong trình đơn này một cách rõ ràng.
  4. Người dùng nhấn vào mục dòng thời gian, chọn mục trong trình đơn Chia sẻ rồi chọn người liên hệ của bạn.
  5. Mirror API tạo bản sao của thẻ dòng thời gian được chia sẻ, cấp cho địa chỉ liên hệ của bạn quyền truy cập vào bản sao và chèn bản sao vào dòng thời gian của người dùng. Đồ thuỷ tinh của bạn không thể truy cập vào mục dòng thời gian ban đầu.
  6. Nếu bạn đã đăng ký nhận thông báo chia sẻ, bạn sẽ nhận được một gói dữ liệu chứa thông tin nhận dạng của thẻ dòng thời gian. Sau đó, bạn có thể truy xuất mục dòng thời gian bằng Timeline.get.
  7. Bạn sửa đổi thẻ dòng thời gian dùng chung và cập nhật thẻ dòng thời gian hiện có bằng Timeline.update.

Khi nào nên sử dụng tiện ích vị trí đơn vị liên kết

Theo mặc định, Glassware không thể truy cập vào các mục trong dòng thời gian mà ứng dụng không tạo, vì vậy, các địa chỉ liên hệ cho phép Glassware chia sẻ dữ liệu với Glassware khi có sự đồng ý của người dùng.

Đồ thuỷ tinh của bạn có thể sử dụng danh bạ theo hai cách chính sau đây:

  • Cho phép người dùng chia sẻ các mục trên dòng thời gian với những người liên hệ khác: Thêm Mục trong trình đơn tích hợp sẵn SHARE thành một thẻ dòng thời gian. Khi người dùng nhấn vào mục trong trình đơn chia sẻ, Glass sẽ hiển thị danh sách địa chỉ liên hệ có thể chia sẻ.

  • Cho phép người dùng chia sẻ các mục trong dòng thời gian với Đồ thuỷ tinh của bạn: Tạo một người liên hệ đại diện cho Đồ thuỷ tinh của bạn. Khi người dùng muốn chia sẻ thẻ dòng thời gian, liên hệ sẽ xuất hiện dưới dạng một tuỳ chọn. Bạn cũng có thể khai báo danh sách loại MIME được chấp nhận để người liên hệ của bạn chỉ xuất hiện đối với những thẻ mà bạn quan tâm. Để nhận thông báo khi người dùng chia sẻ thẻ dòng thời gian với người liên hệ của bạn, bạn có thể đăng ký nhận thông báo về dòng thời gian.

Tạo một người liên hệ

Để cho phép người dùng chia sẻ các mục trong dòng thời gian với Glassware của bạn, hãy chèn một địa chỉ liên hệ bằng cách ĐĂNG Biểu diễn dưới dạng JSON của một địa chỉ liên hệ để chèn điểm cuối REST.

Tất cả người liên hệ phải chỉ định một id để xác định địa chỉ liên hệ với Glassware nhận thông báo. Bạn cũng phải chỉ định displayName và ít nhất một imageUrls mà Glass dùng để hiển thị thông tin liên hệ cho người dùng.

HTTP thô

POST /mirror/v1/contacts HTTP/1.1
Authorization: Bearer {auth token}
Content-Type: application/json
Content-Length: {length}

{
  "id": "harold"
  "displayName": "Harold Penguin",
  "iconUrl": "https://developers.google.com/glass/images/harold.jpg"
  "priority": 7
}

Đăng ký nhận thông báo về việc chia sẻ

Mirror API cho phép bạn đăng ký nhận thông báo được gửi khi người dùng thực hiện các hành động cụ thể trên Mục trong dòng thời gian hoặc khi vị trí của người dùng đã được cập nhật. Khi đăng ký nhận một thông báo, bạn hãy cung cấp một URL gọi lại xử lý thông báo.

Thông báo từ Mirror API được gửi dưới dạng yêu cầu POST đến điểm cuối đã đăng ký chứa nội dung yêu cầu JSON.

HTTP thô

{
  "collection": "timeline",
  "itemId": "3hidvm0xez6r8_dacdb3103b8b604_h8rpllg",
  "operation": "INSERT",
  "userToken": "harold_penguin",
  "verifyToken": "random_hash_to_verify_referer",
  "userActions": [
    {
      "type": "SHARE"
    }
  ]
}

Thuộc tính itemIdID của mục dòng thời gian dùng chung mà bạn có thể dùng bằng Timeline.get để lấy mục dòng thời gian. Ví dụ sau đây cho thấy một mục thông thường trong dòng thời gian có tệp đính kèm là ảnh:

{
  "id": "3hidvm0xez6r8_dacdb3103b8b604_h8rpllg",
  "attachments": [
      {
          "contentType": "image/jpeg",
          "id": "<ATTACHMENT_ID>"
      }
  ],
  "recipients": [
      {
          "kind": "glass#contact",
          "source": "api:<SERVICE_ID>",
          "id": "<CONTACT_ID>",
          "displayName": "<CONTACT_DISPLAY_NAME>",
          "imageUrls": [
              "<CONTACT_ICON_URL>"
          ]
      }
  ]
}

Dịch vụ của bạn phải phản hồi API bằng trạng thái HTTP 200 OK nếu không xảy ra lỗi. Nếu dịch vụ của bạn phản hồi bằng mã lỗi, Mirror API có thể hãy thử gửi lại thông báo đến dịch vụ của bạn.

Đang nhận bản chép lời lời nói

Người dùng có thể chia sẻ giọng nói được chép lời với người liên hệ của bạn thông qua trình đơn giọng nói chính. Hiện tại, người liên hệ của bạn có thể sử dụng hai lệnh thoại:

  • "ghi chú"
  • "đăng nội dung cập nhật"

Ví dụ: người dùng có thể cho chúng tôi biết về Chipotle sinh nhật sắp tới với cụm từ: "Ok Glass... đăng cập nhật lên... Luồng mèo... Ngày mai là sinh nhật của Chipotle!"

Cách sử dụng lệnh thoại:

  1. Chỉ định acceptCommands có thuộc tính thích hợp type:

    {
      ...
    
      "displayName": "Cat Stream",
      "id": "CAT_STREAM",
      "acceptCommands": [
        {"type": "POST_AN_UPDATE"}
      ]
    }
    
  2. Đăng ký nhận thông báo về dòng thời gian nhận được thông báo rằng ứng dụng có giọng nói được chép lời. Đồ thuỷ tinh của bạn nhận được thông báo khi điều này xảy ra:

    {
      "collection": "timeline",
      "operation": "UPDATE",
      "userToken": "<USER_TOKEN>",
      "verifyToken": "<VERIFY_TOKEN>",
      "itemId": "<ITEM_ID>",
      "userActions": [
        {"type": "LAUNCH"}
      ]
    }
    
  3. Sử dụng itemId để tìm nạp mục trong dòng thời gian:

    {
      "id": "<ITEM_ID>",
      "text": "Chipotle's birthday is tomorrow",
      "recipients": [
        {"id": "CAT_STREAM"}
      ]
    }
    
  4. Nếu nhiều hơn một Glassware đăng ký liên hệ bằng cùng một lệnh thoại, Glass hiển thị trình đơn cấp hai hiển thị displayName của mỗi địa chỉ liên hệ. Sau đó, người dùng có thể nói người liên hệ mà họ chọn. Nếu người liên hệ của bạn displayName chứa ký tự không thể phát âm hoặc không theo phiên âm, hãy sử dụng Thuộc tính speakableName để khai báo cách phát âm dự kiến của địa chỉ liên hệ chia sẻ của bạn.

Chú thích cho ảnh được chia sẻ

Người dùng có thể chia sẻ ảnh với Đồ thuỷ tinh của bạn khi có mà các em nhập bằng lời nói. Luồng người dùng chung là:

  1. Người dùng nhấn vào một mục trong dòng thời gian chứa ảnh rồi chọn Chia sẻ mục trong trình đơn và chọn địa chỉ liên hệ của bạn.
  2. Người dùng nhấn lại trong một khoảng thời gian ngắn để thêm chú thích vào ảnh.
  3. Người dùng nói một chú thích.
  4. Mục dòng thời gian được chia sẻ với Glassware của bạn như được mô tả trước đó trong Cách hoạt động của các từ khoá này. Ngoài ra, thuộc tính text của mục dòng thời gian là đặt với chú thích được chép lời của người dùng.