Partager via


Nouveautés pour les développeurs de fonctionnalités sociales et de collaboration dans SharePoint

Découvrez les fonctionnalités sociales et de collaboration nouvelles et modifiées pour les scénarios de développement mon site et site communautaire dans SharePoint. Les fonctionnalités sociales et de collaboration dans SharePoint permettent aux utilisateurs de communiquer facilement et de rester impliqués et informés. Le flux sociaux amélioré sur les sites personnels et les sites d'équipe permet aux utilisateurs de maintenir à jour avec les personnes et le contenu qui les intéressent. La nouvelle fonctionnalité de Site de la Communauté fournit une expérience riche Communauté qui permet aux utilisateurs de rechercher facilement et partager des informations et de rechercher des personnes qui ont les mêmes centres d'intérêt.

Pour obtenir une vue d’ensemble détaillée des nouvelles fonctionnalités sociales et de collaboration dans SharePoint, voir Nouveautés de l’informatique sociale dans SharePoint sur TechNet. Pour plus d’informations sur la programmation avec les fonctionnalités sociales et de collaboration, voir Fonctionnalités sociales et de collaboration dans SharePoint.

Fonctionnalités Mon site nouvelles et modifiées dans SharePoint

Le Mon site social API, qui inclut les profils utilisateur et données sociales, contient de nombreuses fonctionnalités de nouvelles et modifiées. Nouvelles fonctionnalités pour les sites Mon site et les sites d'équipe fournit une expérience interactive, sous forme de conversation au sein de flux qui facilite pour les utilisateurs de rester connectés aux personnes et le contenu qui comptent leur.

La page Flux d’actualités sur SharePoint affiche plusieurs de ces améliorations, notamment une zone de texte qui permet aux utilisateurs de publier rapidement des billets de microblog et un flux conversationnel interactif de publications et de mises à jour des personnes et du contenu suivis par l’utilisateur.

Nouvel espace de noms Social fournit des API pour les flux sociaux et suivi des personnes et des contenus

L'espace de noms Social contient l'API principale pour travailler avec des flux et des billets de microblog et pour le contenu et les personnes suivantes. Pour plus d'informations, voir Microsoft.SharePoint.Client.Social pour le modèle objet client .NET, SP. Mise en réseau pour le modèle d'objet JavaScript et Microsoft.Office.Server.Social pour le modèle objet serveur.

Nouvelles API clientes pour les flux sociaux, suivi de personnes et de contenu, et propriétés utilisateur dans SharePoint

SharePoint inclut de nouvelles API clientes que vous pouvez utiliser pour utiliser des flux sociaux, suivre des personnes et du contenu, et récupérer des propriétés utilisateur dans le développement en ligne, local et mobile. Si possible, vous devez utiliser les API clientes pour le développement SharePoint au lieu d’utiliser le modèle objet serveur ou les services web. API clientes inclure des modèles d'objet client géré, un modèle d'objet JavaScript et un service Representational State Transfer (REST). Si vous développez une Complément SharePoint, vous devez utiliser un client API.

Certaines fonctionnalités côté serveur dans l'assembly Microsoft.Office.Server.UserProfiles sont disponible à partir de l'API clientes. Par exemple, il n’existe aucun accès côté client à l’API dans l’espace de noms Microsoft.Office.Server.Audience , l’espace de noms Microsoft.Office.Server.ReputationModel ou l’espace de noms Microsoft.Office.Server.SocialData . Pour les API disponibles, consultez l'espace de noms Microsoft.SharePoint.Client.Social et l'espace de noms Microsoft.SharePoint.Client.UserProfiles .

Pour plus d’informations sur l’accès aux API clientes Mon site Social, voir Prise en main du développement avec les fonctionnalités de réseaux sociaux dans SharePoint. Pour plus d’informations sur les ensembles d’API dans SharePoint et sur leur utilisation, voir Choisir l’ensemble d’API approprié dans SharePoint.

La méthode ProfileLoader.CreatePersonalSiteEnqueueBulk permet de mettre en service des sites personnels et OneDrive Entreprise pour plusieurs utilisateurs (administrateurs de l'hôteSite Mon site sur SharePoint Online uniquement)

Site Mon site Administrateurs de l'hôte peuvent utiliser la méthode ProfileLoader.CreatePersonalSiteEnqueueBulk par programme mise en service des sites personnels pour plusieurs utilisateurs sur SharePoint Online, qui incluent des fonctionnalités telles que OneDrive Entreprise et la page Sites.

L'exemple de code suivant utilise le modèle d'objet client .NET dans une application console. Avant d'exécuter l'exemple, ajoutez des références à Microsoft.SharePoint.Client.dll, Microsoft.SharePoint.Client.Runtime.dll et Microsoft.SharePoint.Client.UserProfiles.dll et modifier les valeurs d'espace réservé pour les variables userName, passwordStret serverUrl. La variable serverUrl doit être l'URL de la SharePoint Online centre d'Administration.

Remarque

Pour obtenir les DLL clientes requises, téléchargez le Kit de développement logiciel (SDK) Des composants clients SharePoint Online.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Security;
using Microsoft.SharePoint.Client;
using Microsoft.SharePoint.Client.UserProfiles;

namespace CreatePersonalSiteBulkConsole
{
    class Program
    {
        static void Main(string[] args)
        {
            string userName = "administrator@contoso.onmicrosoft.com";
            string passwordStr = "password";
            string serverUrl = "https://contoso-admin.sharepoint.com/";

            using (var clientContext = new ClientContext(serverUrl))
            {
                SecureString password = new SecureString();
                Array.ForEach(passwordStr.ToCharArray(), c => password.AppendChar(c));

                var credentials = new SharePointOnlineCredentials(userName, password);

                clientContext.Credentials = credentials;

                var web = clientContext.Web;
                clientContext.Load(web);
                clientContext.ExecuteQuery();
                ProfileLoader loader = ProfileLoader.GetProfileLoader(clientContext);

                if (loader == null)
                {
                    throw new InvalidOperationException("Failed to get ProfileLoader");
                }

                string[] userEmails = { "usera@contoso.onmicrosoft.com", "userb@contoso.onmicrosoft.com" };
                loader.CreatePersonalSiteEnqueueBulk(userEmails);
                loader.Context.ExecuteQuery();
            }
        }
    }
}

Pour utiliser la méthode CreatePersonalSiteEnqueueBulk avec Windows PowerShell, tout d'abord modifier les valeurs d'espace réservé (l'URL de la SharePoint Online centre d'Administration et les noms d'utilisateur) dans les commandes suivantes, puis exécutez les commandes dans le SharePoint Management Shell.


$webUrl = "https://yoursharepointadmin.sharepoint.com"
$ctx = New-Object Microsoft.SharePoint.Client.ClientContext($webUrl)

$web = $ctx.Web
$username = "admin@myadmin.sharepoint.com"
$password = read-host -AsSecureString

$ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($username,$password)

$ctx.Load($web)
$ctx.ExecuteQuery()

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client.UserProfiles")

$loader =[Microsoft.SharePoint.Client.UserProfiles.ProfileLoader]::GetProfileLoader($ctx)

#To get profile
$profile = $loader.GetUserProfile()
$ctx.Load($profile)
$ctx.ExecuteQuery()
$profile 
#To enqueue profile
$loader.CreatePersonalSiteEnqueueBulk(@("user1@domain.com")) 
$loader.Context.ExecuteQuery()

Pour plus d’informations, voir Utiliser Windows PowerShell pour administrer SharePoint.

Nouveaux objets pour les utilisateurs et les propriétés utilisateur dans SharePoint

SharePoint inclut de nouveaux objets qui représentent les utilisateurs et les propriétés utilisateur :

Remarque

Les versions du modèle objet serveur sont l’objet SPSocialActor et l’objet PersonProperties .

SharePoint inclut également un nouvel objet UserProfile côté client qui fournit des méthodes que vous pouvez utiliser pour créer un site personnel pour l’utilisateur actuel. Cependant, il ne contient pas toutes les propriétés utilisateur que contient l'objet UserProfile côté serveur. Pour accéder à toutes les propriétés utilisateur à partir du code côté client, utilisez la méthode PeopleManager.GetMyProperties ou la méthode PeopleManager.GetPropertiesFor (les propriétés de profil utilisateur sont stockées dans la propriété PersonProperties.UserProfileProperties ) ou utilisez la méthode PeopleManager.GetUserProfilePropertiesFor ou PeopleManager.GetUserProfilePropertyFor .

Nouveau contrôle du sélecteur de personnes côté client

Le contrôle Sélecteur de Personnes côté client est un contrôle HTML et JavaScript qui fournit une prise en charge inter-navigateur pour la sélection de personnes, de groupes et de revendications. Vous pouvez configurer le sélecteur avec les mêmes paramètres que la version côté serveur du contrôle, y compris les propriétés spécifiques au contrôle (comme l’autorisation de plusieurs utilisateurs ou utilisateurs et groupes) et les paramètres de configuration au niveau de l’application web (comme services de domaine Active Directory paramètres ou le ciblage de forêts particulières). Pour plus d’informations, voir Utiliser le contrôle Sélecteur de Personnes côté client dans les compléments SharePoint hébergés par SharePoint.

Api et fonctionnalités mon site social déconseillées et supprimées

L’API et les fonctionnalités mon site social suivantes sont déconseillées dans SharePoint :

  • L’API de l’espace de noms Microsoft.Office.Server.ActivityFeed est déconseillée. L’espace de noms Social fournit l’API permettant d’utiliser par programmation des flux sociaux dans SharePoint. Pour la compatibilité descendante, les éléments ActivityEvent de SharePoint 2010 sont affichés dans les flux SharePoint en tant qu’événements auxquels il n’est pas possible de répondre. (La migration d’événements hérités doit être activée dans l’Administration centrale.)

  • Le flux RSS Mon site (ActivityFeed.aspx) est remplacé par de nouvelles API dans le service REST, le modèle objet client et le modèle objet JavaScript. Pour migrer du code SharePoint 2010 personnalisé qui utilise cette API (de préférence une API cliente), remplacez toutes les requêtes adressées à ActivityFeed.aspx par des appels à la nouvelle API et gérez les données de flux retournées au format JSON (JavaScript Object Notation).

  • Le composant WebPart Activités récentes est remplacé par un nouveau composant WebPart Flux d’actualités qui prend en charge les conversations multithread et la récupération de flux dynamique.

    Remarque

    Nous ne prenons pas en charge les personnalisations du composant WebPart Flux d’actualités ou d’autres composants WebPart de flux (par exemple, le composant WebPart Flux de site sur les sites d’équipe). Si vous personnalisez ces composants WebPart, par exemple à l’aide de remplacements JavaScript, n’oubliez pas que vos personnalisations peuvent s’interrompre dans les mises à jour de SharePoint.

  • Le composant WebPart Commentaires sur les réseaux sociaux est déconseillé.

  • Les événements d’activité suivants n’informent plus automatiquement le flux : mise à jour du profil, anniversaire à venir, anniversaire à venir de l’espace de travail, nouvelle adhésion et changement de responsable. Toutefois, vous pouvez créer des récepteurs d’événements personnalisés pour ces activités. Aucun nouvel événement social n’a été ajouté.

  • Les champs suivants de l’énumération Confidentialité sont déconseillés : Contacts, Organisation et Responsable. SharePoint offre uniquement les paramètres de confidentialité Privé ( Moi seul) et Public ( Tout le monde). Les paramètres de confidentialité existants sont conservés jusqu’à ce qu’ils soient modifiés par l’utilisateur. Pour migrer du code SharePoint 2010 personnalisé qui utilise cette API, remplacez toutes les références aux champs de confidentialité déconseillés.

  • L’API Personnes suivante accessible à partir de SocialFollowingManager remplace la fonctionnalité Collègues de SharePoint Server 2010. La page Collègues est remplacée par la page Personnes je suis. La fonctionnalité Groupes qui permettait aux utilisateurs d’organiser des collègues en groupes n’est plus disponible.

  • Les profils d’organisation sont obsolètes dans SharePoint et les types suivants sont déconseillés : OrganizationProfile, OrganizationProfileManager, OrganizationMembershipType, OrganizationNotFoundException, OrganizationProfileChangeChange, OrganizationProfileChangeQuery, OrganizationProfileMembershipChange et OrganizationProfileValueCollection.

  • La fonctionnalité Mes liens est déconseillée dans SharePoint.

Nouvelle fonctionnalité de site communautaire dans SharePoint

La nouvelle fonctionnalité Site communautaire inclut un nouveau modèle de site et une expérience de discussion améliorée. Les fonctionnalités telles que la réputation, les catégories, les discussions proposées, le type de post-question et les meilleures réponses permettent aux membres de la communauté de trouver facilement des discussions populaires, des informations pertinentes et des personnes ayant des intérêts similaires. Les membres se font une réputation au fur et à mesure qu’ils participent à des communautés.

La fonctionnalité Site communautaire n’expose pas d’API spécifique pour le développement. Pour étendre les fonctionnalités du site communautaire, vous utilisez directement les API de site et de liste SharePoint. Par exemple, vous pouvez utiliser des API SharePoint pour personnaliser les modèles de site et de liste, créer des activités personnalisées à partir de communautés pour le flux social, intégrer des informations de réputation dans les résultats de recherche, personnaliser le modèle de réputation ou créer des flux de travail pour modérer les discussions.

La liste suivante contient des informations pour le développement avec les fonctionnalités du site communautaire :

  • Les sites communautaires utilisent le modèle de site communautaire ( ID = 62). Le modèle de site n’est pas disponible pour les sites web publics. Le type de modèle de la liste du forum de discussion est DiscussionBoard (valeur = 108).

  • L’activation de la fonctionnalité Site de la communauté active le récepteur d’événements CommunityEventReceiver .

  • Pour personnaliser l’affichage de liste rendu côté client, vous devez utiliser des remplacements JavaScript pour remplacer l’affichage. Les affichages de liste ne peuvent pas être étendus via l’API SharePoint. Pour plus d’informations, voir Personnaliser un affichage liste dans les compléments SharePoint à l’aide du rendu côté client.

  • Les sites communautaires utilisent des événements asynchrones pour mettre à jour des objets. Si des événements asynchrones s’exécutent en arrière-plan, vous pouvez rencontrer des conflits Enregistrer lorsque vous tentez de mettre à jour des listes ou des éléments de liste, et votre handle pour l’objet peut devenir obsolète.

    En guise de solution de contournement, gérez les exceptions retournées par les appels de mise à jour , actualisez l’instance avant de réessayer l’appel et effectuez une boucle pour plusieurs nouvelles tentatives, comme illustré dans l’exemple de code suivant.

  
int retries = 1;
while (retries <= 10)
{
    try
    {
        spListItem.IconOverlay = urlString;
        spListItem.Update();
        break;
    }
    catch (SPException saveConflict)
    {
        spListItem = web.Lists.GetItemById(spListItem.ID);
        retries++;
        if (retries > 10) throw;
        System.Threading.Thread.Sleep(1000);
    }
}

Voir aussi