Agregar datos personalizados a usuarios mediante extensiones abiertas

Este artículo lo guía por medio de un ejemplo para demostrarle cómo usar las extensiones abiertas.

Imagine que está creando una aplicación que está disponible en muchas plataformas cliente distintas, como equipos de sobremesa y móviles. Quiere que los usuarios puedan configurar su experiencia de interfaz para que sea coherente sin importar en qué dispositivo inicien sesión en su aplicación. Se trata de un requisito común para la mayoría de las aplicaciones.

Para este escenario, en este artículo le mostrará cómo:

  1. Agregar una extensión abierta que represente cierta información móvil acerca del usuario.
  2. Realizar una consulta al usuario y devolver el perfil móvil.
  3. Cambiar la información del perfil móvil del usuario (el valor de extensión abierta).
  4. Eliminar la información de perfil móvil del usuario.

Nota: Este tema muestra cómo agregar, leer, actualizar y eliminar extensiones abiertas en un recurso user. Estos métodos también se admiten para los tipos de recurso administrativeUnit, contact, device, event, group, organizaton, post, todoTask y todoTaskList.
Puede actualizar los ejemplos de solicitud con cualquiera de estos tipos de recursos. Las respuestas que aparecen en los ejemplos se pueden acortar para facilitar su lectura.

1. Agregar información de perfil móvil

El usuario inicia sesión en la aplicación y configura su apariencia. La configuración de la aplicación debe ser móvil para que el usuario reciba la misma experiencia en cualquier dispositivo desde el que inicie sesión en la aplicación. Aquí veremos cómo agregar la información del perfil móvil a un recurso de usuario.

Solicitud

POST https://graph.microsoft.com/v1.0/me/extensions
Content-type: application/json
{
    "@odata.type":"microsoft.graph.openTypeExtension",
    "extensionName":"com.contoso.roamingSettings",
    "theme":"dark",
    "color":"purple",
    "lang":"Japanese"
}

Respuesta

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.type": "#microsoft.graph.openTypeExtension",
    "extensionName": "com.contoso.roamingSettings",
    "id": "com.contoso.roamingSettings",
    "theme": "dark",
    "color": "purple",
    "lang": "Japanese"
}

2. Recuperar información de perfil móvil

Cuando el usuario inicia sesión en la aplicación desde otro dispositivo, esta puede recuperar los detalles del perfil de usuario, además de su configuración móvil. Esto puede hacerse obteniendo el recurso de usuario y expandiendo la propiedad de navegación de extensión.

Solicitud

GET https://graph.microsoft.com/v1.0/me?$select=id,displayName,mail,mobilePhone&$expand=extensions

Respuesta

HTTP/1.1 200 OK
Content-Type: application/json

{
    "id": "84b80893-8749-40a3-97b7-68513b600544",
    "displayName": "John Smith",
    "mail": "john@contoso.com",
    "mobilePhone": "1-555-6589",
    "extensions": [
        {
            "@odata.type": "#microsoft.graph.openTypeExtension",
            "extensionName": "com.contoso.roamingSettings",
            "id": "com.contoso.roamingSettings",
            "theme": "dark",
            "color": "purple",
            "lang": "Japanese"
        }
    ]
}

Nota: Si tiene varias extensiones, puede filtrar por la id para obtener aquella que le interese.

3. Cambiar información de perfil móvil

El usuario puede cambiar la información de su perfil móvil. Esta actualización puede realizarse con un PATCH en el valor de extensión abierta.

Solicitud

PATCH https://graph.microsoft.com/v1.0/me/extensions/com.contoso.roamingSettings
Content-type: application/json
{
    "theme":"light",
    "color":"yellow",
    "lang":"Swahili"
}

Respuesta

HTTP/1.1 204 No content

4. Eliminar un perfil de usuario móvil

El usuario decide que ya no desea tener un perfil móvil y lo elimina. Esto puede realizarse con una solicitud DELETE en el valor de extensión abierta.

Solicitud

DELETE https://graph.microsoft.com/v1.0/me/extensions/com.contoso.roamingSettings

Respuesta

HTTP/1.1 204 No content

Consulte también