Kontakty umożliwiają urządzeniu Glassware otrzymywanie elementów osi czasu, które nie zostały utworzone. Użytkownicy muszą jawnie udostępnić kontaktowi element osi czasu, klikając pozycję Udostępnij w menu karty.
Jak działają
Po utworzeniu kontaktu do udostępnienia karty z osią czasu będą udostępniane w następujący sposób:
- Utwórz kontakt i określ, które typy MIME są obsługiwane przez ten kontakt.
- Wstaw kontakt na osi czasu użytkownika.
- Użytkownik otrzymuje pozycję na osi czasu z pozycją menu Udostępnij. Oprogramowanie Glassware musi wyraźnie zezwalać użytkownikom na udostępnianie elementów za pomocą tego elementu menu.
- Użytkownik klika element osi czasu, wybiera pozycję menu Udostępnij i wybiera kontakt.
- Interfejs Mirror API tworzy kopię udostępnionej osi czasu, przyznaje kontaktowi dostęp do tej kopii i umieszcza ją na osi czasu użytkownika. Urządzenie Glassware nie ma dostępu do oryginalnego elementu osi czasu.
- Jeśli masz zasubskrybowaną opcję udostępniania powiadomień, otrzymasz ładunek zawierający informacje identyfikujące kartę osi czasu. Następnie możesz pobrać element osi czasu za pomocą Timeline.get.
- Modyfikujesz udostępnioną kartę osi czasu i aktualizujesz dotychczasową kartę osi czasu za pomocą pliku Timeline.update.
Kiedy ich używać
Domyślnie Glassware nie ma dostępu do elementów osi czasu, które nie zostały utworzone przez Ciebie, dlatego kontakty pozwalają na udostępnianie danych przez oprogramowanie Glassware do Glassware za zgodą użytkownika.
Urządzenia Glassware mogą korzystać z kontaktów na dwa główne sposoby:
Zezwalaj użytkownikom na udostępnianie elementów osi czasu innym kontaktom: dodaj wbudowaną pozycję menu
SHARE
do karty osi czasu. Gdy użytkownik kliknie opcję Udostępnij w menu, Glass wyświetli listę kontaktów, którym możesz udostępnić treści.Zezwalaj użytkownikom na udostępnianie elementów osi czasu usłudze Glassware: utwórz kontakt reprezentujący oprogramowanie Glassware. Gdy użytkownicy chcą udostępnić kartę osi czasu, Twój kontakt pojawi się jako opcja. Możesz też zadeklarować listę akceptowanych typów MIME, aby kontakt pojawiał się tylko w przypadku interesujących Cię kart. Aby otrzymywać powiadomienia, gdy użytkownicy udostępnią kontaktowi kartę osi czasu, możesz zasubskrybować powiadomienia z osią czasu.
Tworzenie kontaktu
Aby umożliwić użytkownikom udostępnianie elementów osi czasu usłudze Glassware, wstaw kontakt, POSTĘPując reprezentację kontaktu w formacie JSON w punkcie końcowym REST.
Wszystkie kontakty muszą mieć określony identyfikator id
, który identyfikuje kontakt odbierający powiadomienia przez Glassware. Musisz też określić displayName
i co najmniej 1 imageUrls
, za pomocą których Glass będzie wyświetlać informacje kontaktowe użytkownikowi.
Nieprzetworzony kod HTTP
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
}
Subskrybowanie powiadomień o udostępnianiu
Interfejs Mirror API umożliwia subskrybowanie powiadomień wysyłanych, gdy użytkownik wykona określone działania na elemencie osi czasu lub po zaktualizowaniu lokalizacji użytkownika. Gdy subskrybujesz powiadomienie, podajesz adres URL wywołania zwrotnego, który przetwarza powiadomienie.
Powiadomienie z interfejsu Mirror API jest wysyłane jako żądanie POST
do subskrybowanego punktu końcowego zawierającego treść żądania JSON
.
Nieprzetworzony kod HTTP
{
"collection": "timeline",
"itemId": "3hidvm0xez6r8_dacdb3103b8b604_h8rpllg",
"operation": "INSERT",
"userToken": "harold_penguin",
"verifyToken": "random_hash_to_verify_referer",
"userActions": [
{
"type": "SHARE"
}
]
}
Atrybut itemId
to element ID
udostępnionego elementu osi czasu, którego możesz użyć z plikiem Timeline.get, aby uzyskać ten element.
Poniższy przykład pokazuje typowy element osi czasu z załączonym zdjęciem:
{
"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>"
]
}
]
}
Jeśli nie wystąpił błąd, Twoja usługa musi odpowiedzieć na interfejs API kodem stanu HTTP 200 OK
.
Jeśli usługa w odpowiedzi wyświetli kod błędu, interfejs Mirror API może spróbować ponownie wysłać powiadomienie do usługi.
Odbieram transkrypcję mowy
Użytkownicy mogą udostępniać kontaktom transkrypcję mowy za pomocą głównego menu głosowego. Twój kontakt może obecnie używać dwóch poleceń głosowych:
- „zanotuj”
- „Opublikuj aktualizację”
Użytkownik może na przykład poinformować nas o zbliżających się urodzinach Chipotle'a, mówiąc: „OK Glass... opublikuj aktualizację... Kocie strumień... Chipotle ma jutro urodziny!”
Aby użyć poleceń głosowych:
Określ właściwość
acceptCommands
za pomocą odpowiedniego parametrutype
:{ ... "displayName": "Cat Stream", "id": "CAT_STREAM", "acceptCommands": [ {"type": "POST_AN_UPDATE"} ] }
Zasubskrybuj powiadomienia z osią czasu, aby otrzymywać powiadomienia o dostępności transkrypcji mowy. Urządzenie Glassware otrzyma powiadomienie, gdy:
{ "collection": "timeline", "operation": "UPDATE", "userToken": "<USER_TOKEN>", "verifyToken": "<VERIFY_TOKEN>", "itemId": "<ITEM_ID>", "userActions": [ {"type": "LAUNCH"} ] }
Użyj narzędzia
itemId
, aby pobrać element osi czasu:{ "id": "<ITEM_ID>", "text": "Chipotle's birthday is tomorrow", "recipients": [ {"id": "CAT_STREAM"} ] }
Jeśli więcej niż 1 oprogramowanie Glassware rejestruje kontakt za pomocą tego samego polecenia głosowego, Glass wyświetla menu drugiego poziomu z
displayName
każdego kontaktu. Użytkownik może następnie odczytać na głos wybrany kontakt. Jeśli elementdisplayName
kontaktu zawiera niedozwolone znaki lub nie jest fonetyczny, użyj właściwościspeakableName
, by zadeklarować oczekiwaną wymowę kontaktu udostępniającego.
Napisy do udostępnionych zdjęć
Użytkownicy mogą udostępniać zdjęcia za pomocą Google Glassware z napisem wpisywanym za pomocą mowy. Ogólna procedura użytkownika wygląda tak:
- Użytkownik klika element na osi czasu ze zdjęciem, wybiera pozycję menu Udostępnij i wybiera kontakt.
- W krótkim czasie użytkownik ponownie klika przycisk, aby dodać do zdjęcia podpis.
- Użytkownik wypowiada podpis.
- Element osi czasu jest udostępniany usłudze Glassware w sposób opisany powyżej w sekcji Jak działają. Dodatkowo właściwość
text
elementu osi czasu zawiera napisy utworzone przez użytkownika.