نیاز به مجوز دارد
یک مخاطب جدید درج می کند. یک نمونه ببینید .
درخواست
درخواست HTTP
POST https://www.googleapis.com/mirror/v1/contacts
مجوز
این درخواست به مجوز با محدوده زیر نیاز دارد ( در مورد احراز هویت و مجوز بیشتر بخوانید ).
محدوده |
---|
https://www.googleapis.com/auth/glass.timeline |
درخواست بدن
در بدنه درخواست، یک منبع Contacts با ویژگی های زیر ارائه کنید:
نام ملک | ارزش | شرح | یادداشت |
---|---|---|---|
خواص مورد نیاز | |||
acceptCommands[]. type | string | نوع عملیات مربوط به این دستور. مقادیر مجاز عبارتند از:
| قابل نوشتن |
displayName | string | نامی که برای این مخاطب نمایش داده می شود. | قابل نوشتن |
id | string | شناسه ای برای این مخاطب این توسط برنامه ایجاد می شود و به عنوان یک نشانه غیر شفاف در نظر گرفته می شود. | قابل نوشتن |
imageUrls[] | list | مجموعه ای از URL های تصویر برای نمایش برای یک مخاطب. بیشتر مخاطبین یک تصویر واحد خواهند داشت، اما یک مخاطب "گروهی" ممکن است تا 8 URL تصویر را شامل شود و اندازه آنها تغییر کرده و به صورت موزاییکی روی مشتری برش داده می شود. | قابل نوشتن |
ویژگی های اختیاری | |||
acceptCommands[] | list | فهرستی از دستورات منوی صوتی که مخاطب می تواند از عهده آنها برآید. شیشه حداکثر سه مخاطب را برای هر فرمان منوی صوتی نشان می دهد. اگر بیشتر از آن وجود داشته باشد، سه مخاطب با بالاترین priority برای آن دستور خاص نشان داده می شوند. | قابل نوشتن |
acceptTypes[] | list | لیستی از انواع MIME که یک مخاطب از آنها پشتیبانی می کند. اگر هر یک از نوع های پذیرش آن با هر یک از انواع پیوست های موجود در مورد مطابقت داشته باشد، مخاطب به کاربر نشان داده می شود. اگر هیچ نوع AcceptType داده نشود، مخاطب برای همه موارد نشان داده می شود. | قابل نوشتن |
phoneNumber | string | شماره تلفن اصلی برای مخاطب این می تواند یک شماره کاملاً واجد شرایط، با کد تماس کشور و کد منطقه، یا یک شماره محلی باشد. | قابل نوشتن |
priority | unsigned integer | اولویت برای مخاطب برای تعیین ترتیب در لیستی از مخاطبین. مخاطبین با اولویت بالاتر قبل از مخاطبین با اولویت کمتر نشان داده می شوند. | قابل نوشتن |
speakableName | string | نام این مخاطب همانطور که باید تلفظ شود. اگر نام این مخاطب باید به عنوان بخشی از منوی ابهامزدایی صدا گفته شود، از این نام به عنوان تلفظ مورد انتظار استفاده میشود. این برای نامهای مخاطب با نویسههای غیرقابل تلفظ مفید است یا املای نمایش آنها در غیر این صورت آوایی نیست. | قابل نوشتن |
type | string | نوع این مخاطب این برای مرتب سازی در UI ها استفاده می شود. مقادیر مجاز عبارتند از:
| قابل نوشتن |
واکنش
در صورت موفقیت آمیز بودن، این روش یک منبع Contacts را در بدنه پاسخ باز می گرداند.
مثال ها
توجه: نمونههای کد موجود برای این روش همه زبانهای برنامهنویسی پشتیبانیشده را نشان نمیدهند (برای فهرست زبانهای پشتیبانیشده به صفحه کتابخانههای سرویس گیرنده مراجعه کنید).
جاوا
از کتابخانه سرویس گیرنده جاوا استفاده می کند.
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; } } // ... }
.خالص
از کتابخانه کلاینت دات نت استفاده می کند.
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 استفاده می کند.
/** * 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; } }
پایتون
از کتابخانه کلاینت پایتون استفاده می کند.
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 استفاده می کند.
## # 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 استفاده می کند.
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 }
HTTP خام
از کتابخانه مشتری استفاده نمی کند.
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"] }