Wymaga autoryzacji
Aktualizuje kontakt w danym miejscu. Zobacz przykład
Żądanie
Żądanie HTTP
PUT https://www.googleapis.com/mirror/v1/contacts/id
Parametry
| Nazwa parametru | Wartość | Opis |
|---|---|---|
| Parametry ścieżki | ||
id |
string |
Identyfikator kontaktu. |
Autoryzacja
To żądanie wymaga autoryzacji w ramach tego zakresu (więcej informacji o uwierzytelnianiu i autoryzacji).
| Zakres |
|---|
https://www.googleapis.com/auth/glass.timeline |
Treść żądania
W treści żądania podaj zasób Kontakty z tymi właściwościami:
| Nazwa usługi | Wartość | Opis | Uwagi |
|---|---|---|---|
| Właściwości wymagane | |||
acceptCommands[].type |
string |
Typ operacji, której dotyczy to polecenie. Dozwolone wartości:
|
zapisywalny |
displayName |
string |
Wyświetlana nazwa kontaktu. | z możliwością zapisu |
id |
string |
Identyfikator tego kontaktu. Jest on generowany przez aplikację i traktowany jako nieprzejrzysty token. | z możliwością zapisu |
imageUrls[] |
list |
Zestaw adresów URL zdjęć, które mają być wyświetlane w przypadku kontaktu. Większość kontaktów będzie miała pojedynczy obraz, ale „grupę” kontakt może zawierać maksymalnie 8 adresów URL obrazów, a ich rozmiar zostanie zmieniony i przycięty w mozaikę na kliencie. | z możliwością zapisu |
| Właściwości opcjonalne | |||
acceptCommands[] |
list |
Lista poleceń głosowych, które może obsłużyć kontakt. Google Glass wyświetla maksymalnie 3 kontakty przy każdym poleceniem w menu głosowym. Jeśli jest ich więcej, w przypadku danego polecenia wyświetlane są 3 kontakty z najwyższym priority. |
z możliwością zapisu |
acceptTypes[] |
list |
Lista typów MIME obsługiwanych przez kontakt. Kontakt zostanie wyświetlony użytkownikowi, jeśli dowolny z jego atrybutów AcceptType będzie pasować do dowolnego typu załączników w elemencie. Jeśli nie podasz żadnych typów akceptacji, kontakt będzie wyświetlany we wszystkich elementach. | z możliwością zapisu |
phoneNumber |
string |
Podstawowy numer telefonu kontaktu. Może to być pełny numer z kodem kraju i numerem kierunkowym lub numer lokalny. | z możliwością zapisu |
priority |
unsigned integer |
Priorytet kontaktu pozwalający określić kolejność na liście kontaktów. Kontakty o wyższym priorytecie będą wyświetlane przed tymi o niższym priorytecie. | zapisywalny |
speakableName |
string |
Imię i nazwisko kontaktu. Jeśli nazwa kontaktu musi być wymawiana w ramach menu rozróżniania głosem, jest ona używana jako oczekiwana wymowa. Jest to przydatne w przypadku nazw kontaktów zawierających znaki, których nie można wymówić, lub takich, których pisownia nie jest fonetyczna. | z możliwością zapisu |
type |
string |
Typ tego kontaktu. Jest on używany do sortowania w interfejsach. Dozwolone wartości to:
|
zapisywalny |
Odpowiedź
Jeśli operacja się uda, metoda zwróci zasób Kontakty w treści odpowiedzi.
Przykłady
Uwaga: dostępne dla tej metody przykłady kodu nie odzwierciedlają wszystkich obsługiwanych języków programowania. Listę obsługiwanych języków znajdziesz na stronie z bibliotekami klienta.
Java
Używa biblioteki klienta Java.
import com.google.api.services.mirror.Mirror; import com.google.api.services.mirror.model.Contact; import java.io.IOException; public class MyClass { // ... /** * Rename an existing contact for the current user. * * @param service Authorized Mirror service. * @param contactId ID of the contact to rename. * @param newDisplayName New displayName for the contact. * @return Patched contact on success, {@code null} otherwise. */ public static Contact renameContact(Mirror service, String contactId, String newDisplayName) { try { // Get the latest version of the contact from the API. Contact contact = service.contacts().get(contactId).execute(); contact.setDisplayName(newDisplayName); // Send an update request to the API. return service. contacts().update(contactId, contact).execute(); } catch (IOException e) { System.err.println("An error occurred: " + e); return null; } } // ... }
.NET
Używa biblioteki klienta.NET.
using System; using Google.Apis.Mirror.v1; using Google.Apis.Mirror.v1.Data; public class MyClass { // ... /// <summary> /// Rename an existing contact for the current user. /// </summary> /// <param name='service'>Authorized Mirror service.</param> /// <param name='contactId'>ID of the contact to rename.</param> /// <param name='newDisplayName'> /// New displayName for the contact. /// </param> /// <returns> /// Updated contact on success, null otherwise. /// </returns> public static Contact RRenameContact(MirrorService service, String contactId, String newDisplayName) { try { Contact contact = service.Contacts.Get(contactId).Fetch(); contact.DisplayName = newDisplayName; return service.Contacts.Update(contact, contactId).Fetch(); } catch (Exception e) { Console.WriteLine("An error occurred: " + e.Message); return null; } } // ... }
PHP
Używa biblioteki klienta PHP.
/** * Rename an existing contact for the current user. * * @param Google_MirrorService $service Authorized Mirror service. * @param string $contactId ID of the contact to rename. * @param string $newDisplayName New displayName for the contact. * @return Google_Contact Updated contact on success, null otherwise. */ function renameContact($service, $contactId, $newDisplayName) { try { $updatedContact = $service->contacts->get($contactId); $updatedContact->setDisplayName($newDisplayName); return $service->contacts->update($contactId, $updatedContact); } catch (Exception $e) { print 'An error occurred: ' . $e->getMessage(); return null; } }
Python
Korzysta z biblioteki klienta Pythona.
from apiclient import errors # ... def rename_contact(service, contact_id, new_display_name): """Rename an existing contact for the current user. Args: service: Authorized Mirror service. contact_id: ID of the contact to rename. new_display_name: New displayName for the contact. Returns: return Patched contact on success, None otherwise. """ try: # Get the latest version of the contact from the API. contact = service.contacts().get(contact_id).execute() contact['displayName'] = new_display_name return service. contacts().update( id=contact_id, body=contact).execute() except errors.HttpError, e: print 'An error occurred: %s' % error return None
Ruby
Używa biblioteki klienta Ruby.
## # Rename an existing contact for the current user. # # @param [Google::APIClient] client # Authorized client instance. # @param [String] contact_id # ID of the contact to rename. # @param [String] new_display_name # New displayName for the contact. # @return [Google::APIClient::Schema::Mirror::V1::Contact] # Updated contact on success, nil otherwise. def rename_contact(client, contact_id, new_display_name) mirror = client.discovered_api('mirror', 'v1') # Get the latest version of the contact from the API. result = client.execute( :api_method => mirror.contacts.get, :parameters => { 'id' => contact_id }) if result.success? contact = result.data contact.display_name = new_display_name result = client.execute( :api_method => mirror.contacts.update, :parameters => { 'id' => contact_id }, :body_object => contact) if result.success? return result.data end end puts "An error occurred: #{result.data['error']['message']}" end
Przeczytaj
Używa biblioteki klienta Go.
import ( "code.google.com/p/google-api-go-client/mirror/v1" "fmt" ) // RenameContact renames an existing contact for the current user. func RenameContact(g *mirror.Service, contactId string, newDisplayName string) (*mirror.Contact, error) { s, err := g. Contacts.Get(contactId).Do() if err != nil { fmt.Printf("An error occurred: %v\n", err) return nil, err } s.DisplayName = newDisplayName r, err := g.Contacts.Patch(contactId, s).Do() if err != nil { fmt.Printf("An error occurred: %v\n", err) return nil, err } return r, nil }
Nieprzetworzony HTTP
Nie używa biblioteki klienta.
PUT /mirror/v1/contacts/harold HTTP/1.1 Authorization: Bearer auth token Content-Type: application/json Content-Length: length { "displayName": "Harold Penguin", "imageUrls": ["https://developers.google.com/glass/images/harold.jpg"] }