Requiere autorización.
Inserta un contacto nuevo. Ve un ejemplo.
Solicitud
Solicitud HTTP
POST https://www.googleapis.com/mirror/v1/contacts
Autorización
Esta solicitud requiere autorización con el siguiente alcance (obtén más información sobre la autenticación y la autorización).
Alcance |
---|
https://www.googleapis.com/auth/glass.timeline |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporciona un Recurso de contactos con las siguientes propiedades:
Nombre de la propiedad | Valor | Descripción | Notas |
---|---|---|---|
Propiedades obligatorias | |||
acceptCommands[].type |
string |
El tipo de operación a la que corresponde este comando. Los valores permitidos son los siguientes:
|
admite escritura |
displayName |
string |
El nombre que se mostrará para este contacto. | admite escritura |
id |
string |
Es el ID de este contacto. La aplicación lo genera y se lo trata como un token opaco. | admite escritura |
imageUrls[] |
list |
Conjunto de URLs de imágenes que se muestran para un contacto. La mayoría de los contactos tienen una sola imagen, pero El contacto puede incluir hasta 8 URLs de imágenes, y se ajustará su tamaño y se recortará para formar un mosaico en el cliente. | admite escritura |
Propiedades opcionales | |||
acceptCommands[] |
list |
Una lista de comandos del menú de voz que un contacto puede controlar. Glass muestra hasta tres contactos por cada comando del menú por voz. Si hay más que eso, se mostrarán los tres contactos con la priority más alta para ese comando en particular. |
admite escritura |
acceptTypes[] |
list |
Una lista de los tipos de MIME que admite un contacto. El contacto se mostrará al usuario si alguno de sus AcceptTypes coincide con alguno de los tipos de archivos adjuntos del elemento. Si no se proporcionan AcceptTypes, se mostrará el contacto para todos los elementos. | admite escritura |
phoneNumber |
string |
Es el número de teléfono principal del contacto. Puede ser un número completamente calificado, con código de llamada del país y código de área, o un número local. | admite escritura |
priority |
unsigned integer |
Es la prioridad que tiene el contacto para determinar el orden en una lista de contactos. Los contactos con prioridades más altas se mostrarán antes que los que tengan prioridades más bajas. | admite escritura |
speakableName |
string |
Nombre de este contacto tal como se debe pronunciar. Si el nombre de este contacto debe pronunciarse como parte de un menú de desambiguación por voz, este nombre se utiliza como la pronunciación esperada. Esto es útil para los nombres de contactos con caracteres que no se pueden pronunciar o cuya ortografía no es fonética. | admite escritura |
type |
string |
Es el tipo de este contacto. Se usa para ordenar las IUs. Los valores permitidos son los siguientes:
|
admite escritura |
Respuesta
Si se aplica correctamente, este método muestra un recurso de contactos en el cuerpo de la respuesta.
Ejemplos
Nota: Los ejemplos de código disponibles para este método no representan todos los lenguajes de programación admitidos (consulta la página de bibliotecas cliente para consultar una lista de lenguajes admitidos).
Java
Usa la biblioteca cliente de Java.
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
Utiliza la biblioteca cliente.NET.
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
Utiliza la biblioteca cliente de 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; } }
Python
Utiliza la biblioteca cliente Python.
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
Rita
Utiliza la biblioteca cliente de 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
Usa la biblioteca cliente de 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 sin procesar
No utiliza una biblioteca cliente.
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"] }