Yetkilendirme gerektirir
Yeni kişi ekler. Örneğe göz atın
İstek
HTTP isteği
POST https://www.googleapis.com/mirror/v1/contacts
Yetkilendirme
Bu istek için aşağıdaki kapsamla yetkilendirme gerekiyor (kimlik doğrulama ve yetkilendirme hakkında daha fazla bilgi edinin).
Kapsam |
---|
https://www.googleapis.com/auth/glass.timeline |
İstek metni
İstek gövdesinde aşağıdaki özelliklerle bir Kişiler kaynağı sağlayın:
Mülk adı | Değer | Açıklama | Notlar |
---|---|---|---|
Zorunlu Özellikler | |||
acceptCommands[].type |
string |
Bu komutun karşılık gelen işlem türü. İzin verilen değerler şunlardır:
|
yazılabilir |
displayName |
string |
Bu kişi için görüntülenecek ad. | yazılabilir |
id |
string |
Bu kişinin kimliği. Bu uygulama tarafından oluşturulur ve opak jeton olarak kabul edilir. | yazılabilir |
imageUrls[] |
list |
Kişi için görüntülenecek resim URL'si grubu. Çoğu kişinin tek bir resmi olur ancak "grup" kişisi en fazla 8 resim URL'si içerebilir ve yeniden boyutlandırılıp istemcide mozaik olarak kırpılabilir. | yazılabilir |
İsteğe Bağlı Özellikler | |||
acceptCommands[] |
list |
Bir kişinin işleyebileceği sesli menü komutlarının listesi. Glass, her sesli menü komutu için en fazla üç kişi gösterir. Bundan daha fazla sonuç varsa söz konusu komut için en yüksek priority değerine sahip üç kişi gösterilir. |
yazılabilir |
acceptTypes[] |
list |
Bir kişinin desteklediği MIME türlerinin listesi. Kabul ettiği türlerden biri, öğedeki ek türlerinden herhangi biriyle eşleştiğinde kullanıcıya gösterilir. Hiçbir kabul Türü yoksa kişi tüm öğeler için gösterilir. | yazılabilir |
phoneNumber |
string |
Kişinin birincil telefon numarası. Bu, ülke arama kodu ve alan kodu içeren tam nitelikli bir numara veya yerel bir numara olabilir. | yazılabilir |
priority |
unsigned integer |
Kişinin, kişi listesindekilerin sırasını belirleme önceliği. Öncelikleri daha yüksek olan kişiler, daha düşük öncelikli olanlardan önce gösterilir. | yazılabilir |
speakableName |
string |
Telaffuz edilmesi gerektiğinden bu kişinin adı. Bu kişinin adının bir ses belirsizleştirme menüsünün parçası olarak söylenmesi gerekiyorsa bu ad, beklenen telaffuz olarak kullanılır. Bu özellik, telaffuz edilemeyen karakterlere sahip olan veya ekran yazımı fonetik olmayan kişi adları için kullanışlıdır. | yazılabilir |
type |
string |
Bu kişinin türü. Bu, kullanıcı arayüzlerinde sıralama için kullanılır. İzin verilen değerler şunlardır:
|
yazılabilir |
Yanıt
Başarılı olursa bu yöntem yanıt gövdesinde bir Kişiler kaynağı döndürür.
Örnekler
Not: Bu yöntem için kullanıma sunulan kod örnekleri, desteklenen tüm programlama dillerini kapsamaz (Desteklenen dillerin listesi için istemci kitaplıkları sayfasını inceleyin).
Java
Java istemci kitaplığını kullanır.
import com.google.api.services.mirror.Mirror; import com.google.api.services.mirror.model.Contact; import java.io.IOException; import java.util.Arrays; public class MyClass { // ... /** * Insert a new contact for the current user. * * @param service Authorized Mirror service. * @param contactId ID of the contact to insert. * @param displayName Display name for the contact to insert. * @param iconUrl URL of the contact's icon. * @return The inserted contact on success, {@code null} otherwise. */ public static Contact insertContact(Mirror service, String contactId, String displayName, String iconUrl) { Contact contact = new Contact(); contact.setId(contactId); contact.setDisplayName(displayName); contact.setImageUrls(Arrays.asList(iconUrl)); try { return service.contacts().insert(contact).execute(); } catch (IOException e) { System.err.println("An error occurred: " + e); return null; } } // ... }
.NET
.NET istemci kitaplığını kullanır.
using System; using System.Collections.Generic; using Google.Apis.Mirror.v1; using Google.Apis.Mirror.v1.Data; public class MyClass { // ... /// <summary> /// Insert a new contact for the current user. /// </summary> /// <param name='service'>Authorized Mirror service.</param> /// <param name='contactId'>ID of the contact to insert.</param> /// <param name='displayName'> /// Display name for the contact to insert. /// </param> /// <param name='iconUrl'>URL of the contact's icon.</param> /// <returns> /// The inserted contact on success, null otherwise. /// </returns> public static Contact InsertContact(MirrorService service, String contactId, String displayName, String iconUrl) { Contact contact = new Contact() { Id = contactId, DisplayName = displayName, ImageUrls = new List<String>() {iconUrl} }; try { return service.Contacts.Insert(contact).Fetch(); } catch (Exception e) { Console.WriteLine("An error occurred: " + e.Message); return null; } } // ... }
PHP
PHP istemci kitaplığını kullanır.
/** * Insert a new contact for the current user. * * @param Google_MirrorService $service Authorized Mirror service. * @param string $contactId ID of the contact to insert. * @param string $displayName Display name for the contact to insert. * @param string $iconUrl URL of the contact's icon. * @return Google_Contact The inserted contact on success, null otherwise. */ function insertContact($service, $contactId, $displayName, $iconUrl) { try { $contact = new Google_Contact(); $contact->setId($contactId); $contact->setDisplayName($displayName); $contact->setImageUrls(array($iconUrl)); return $service->contacts->insert($contact); } catch (Exception $e) { print 'An error occurred: ' . $e->getMessage(); return null; } }
Python
Python istemci kitaplığını kullanır.
from apiclient import errors
# ...
def insert_contact(service, contact_id, display_name, icon_url):
"""Insert a new contact for the current user.
Args:
service: Authorized Mirror service.
contact_id: ID of the contact to insert.
display_name: Display name for the contact to insert.
icon_url: URL of the contact's icon.
Returns:
The inserted contact on success, None otherwise.
"""
contact = {
'id': contact_id,
'displayName': display_name,
'imageUrls': [icon_url]
}
try:
service.contacts().insert(body=contact).execute()
except errors.HttpError, error:
print 'An error occurred: %s' % error
return None
Ruby
Ruby istemci kitaplığı kullanır.
## # Insert a new contact for the current user. # # @param [Google::APIClient] client # Authorized client instance. # @param [String] contact_id # ID of the contact to insert. # @param [String] display_name # Display name for the contact to insert. # @param [String] image_url # URL of the contact's icon. # @return [Google::APIClient::Schema::Mirror::V1::Contact] # The inserted contact on success, nil otherwise. def insert_contact(client, contact_id, display_name, image_url) mirror = client.discovered_api('mirror', 'v1') contact = mirror.contacts.insert.request_schema.new({ 'id' => contact_id, 'displayName' => display_name, 'imageUrls' => [image_url] }) result = client.execute( :api_method => mirror.contacts.insert, :body_object => contact) if result.success? return result.data else puts "An error occurred: #{result.data['error']['message']}" end end
Go
Go istemci kitaplığını kullanır.
import ( "code.google.com/p/google-api-go-client/mirror/v1" "fmt" ) // InsertContact inserts a new contact for the current user. func InsertContact(g *mirror.Service, contactId string, displayName string, iconUrl string) (*mirror.Contact, error) { s := &mirror.Contact{ Id: contactId, DisplayName: displayName, ImageUrls: []string{iconUrl}, } r, err := g.Contacts.Insert(s).Do() if err != nil { fmt.Printf("An error occurred: %v\n", err) return nil, err } return r, nil }
Ham HTTP
İstemci kitaplığı kullanmıyor.
POST /mirror/v1/contacts HTTP/1.1 Authorization: Bearer auth token Content-Type: application/json Content-Length: length { "id": "harold" "displayName": "Harold Penguin", "imageUrls": ["https://developers.google.com/glass/images/harold.jpg"] }