Yammer offre deux modes pour son intégration aux sites et applications tierces : Yammer Embed ou une API REST. Voici un descriptif des possibilités offertes par chacun.
Yammer embed
Mode simplifié d’ajout de Yammer à un contenu HTML :
- Un javascript Yammer à référencer
- Un bloc HTML comme conteneur
- Une fonction d’appel avec options
<div id="embedded-feed" style="height:800px;width:400px;"></div> <script type="text/javascript" src="https://assets.yammer.com/assets/platform_embed.js"></script> <script type="text/javascript"> yam.connect.embedFeed({ container: "#embedded-feed", network: "mcnext.com", feedType: "group", feedId: "2211345"}); </script>
Note : il est possible d’obtenir cela très facilement en l’exportant directement à partir d’un groupe Yammer ou en utilisant l’utilitaire de configuration fourni par Yammer.
Fonctionnalités offertes
Les fonctionnalités offertes sont exactement les mêmes qu’à l’intérieur d’un flux Yammer :
- Lecture de messages
- Ecriture de messages avec pièces jointes
- Like
- Suivi
- Partage
- Réponse
- Ajout de sujets
- Se l’envoyer par email
Le rendu est fait dans une iframe dont la hauteur et la largeur sont fixes.
Les options disponibles
- Réseau auquel se connecter
Par défaut le réseau actif de l’utilisateur - Forcer la connexion au réseau principal de l’utilisateur, même s’il vient de visiter un réseau externe
- ID du groupe Yammer utilisé par défaut lors de la saisie d’un nouvel élément
- Texte à afficher dans la zone de saisie avant que l’utilisateur ait commencé à écrire son message
- Type de flux :
- MyFeed = flux de l’utilisateur
- Group = choix d’un groupe à afficher par ID
- User = choix d’un utilisateur à afficher par ID
- Topic = choix d’un sujet à afficher par ID
- Open Graph = commentaires sur l’élément courant (par exemple une page d’article ou un document). Plusieurs paramètres complémentaires sont disponibles pour permettre de choisir l’élément commenté, les métadonnées associées au poste…
- Si le composant utilise le SSO
Modification de l’apparence
Le composant sera affiché dans une iframe et peut être sujet à modifications dans le futur : il ne faut pas chercher à modifier son apparence.
Il est néanmoins possible d’indiquer :
- Si le header doit être affiché (nom du réseau)
- Si le footer doit être affiché (option de déconnexion)
- Si le nom du réseau doit être caché dans le header : si le header est affiché, alors il indiquera un message neutre comme « Conversations Yammer » plutôt que d’indiquer le nom du réseau
API REST
Une api REST permet d’intégrer Yammer comme souhaité au sein de n’importe quelle application. L’apparence est alors complètement personnalisable puisque tout est à la charge du développeur.
Une documentation très complète et claire est fournie sur le site de développement Yammer.
Connexion
Il faut :
- Enregistrer l’application dans Yammer
- S’authentifier en utilisant le bouton Yammer ou en OAuth.
Une ID d’application est nécessaire pour la connexion. Tous les utilisateurs devront accepter l’application.
Limites d’appels
Le nombre de requêtes par utilisateur et par application est limité. Une erreur sera retournée lorsque l’utilisateur dépassera cette limite. La limite est différente selon le type d’élément demandé :
- Messages = 10 requêtes en 30 secondes
- Notifications = 10 requêtes en 30 secondes
- Tous les autres = 10 requêtes en 10 secondes
Possibilités
Voici les différentes possibilités offertes par l’API REST :
Messages
Type de requête | Description | Commentaires |
GET | ||
Derniers messages | Il est possible de récupérer tout le thread ou uniquement le premier message de chacun.
· Tous · Flux de l’utilisateur · Top · Suivis · Envoyés · Messags privés · Reçus |
|
Messages d’un thread | ||
Messages liés à un sujet | ||
POST | ||
Ecrire un nouveau message | · Corps du message
· ID du groupe dans lequel poster · ID du message pour la réponse · Utilisateur à qui envoyer le message en privé · S’il s’agit d’un broadcast · Sujets · Pièces jointes · Objet opengraph associé |
|
Envoyer une copie d’un message par email à l’utilisateur courant | ||
Liker un message | ||
DELETE | ||
Supprimer un message | Par ID | |
Unliker un message |
Corps d’un message
- Parsed : les URL sont telles quelles, les mentions d’utilisateurs sont mises sous la forme user:id
- Plain : les URL sont telles quelles, les mentions utilisateurs sont sous la forme « Nom complet »
- Rich : HTML à afficher, avec les balises <a></a> pour les URL
Propriétés d’un message
- ID
- ID de l’utilisateur ayant posté
- Date de création
- ID du réseau
- Type de message
- Type de sender
- URL
- ID du groupe
- Body
- ID de thread
- Type de client (web, app…)
- ID des utilisateurs notifiés
- Message privé ou publique
- Pièces jointes
- ID
- Type
- Nom
- Description
- ID du réseau
- URL
- URL de la miniature
- Type d’objet
- Nom de l’objet
- URL de l’hôte
- HTML à afficher
- LikedBy : nombre + liste des utilisateurs
Utilisateurs
Type de requête | Requête | Commentaires |
GET | ||
Utilisateurs du réseau | Paginée, triée par nombre de messages, nombre de followers ou alphabétiquement | |
Utilisateur courant | ||
Utilisateur par ID | ||
Utilisateur par email | ||
Utilisateurs d’un groupe | Paginée, triée par nombre de messages, nombre de followers ou alphabétiquement | |
Utilisateurs ayant utilisé un sujet | ||
Utilisateurs ayant liké un message | ||
Relations pour l’utilisateur courant ou par ID | Supérieurs, subordonnés et collègues | |
POST | ||
Créer un utilisateur | ||
Inviter un utilisateur au réseau Yammer actif | ||
Ajouter une relation | ||
DELETE | ||
Supprimer un utilisateur | ||
PUT | ||
Modifier un utilisateur |
Propriétés d’un utilisateur
- ID
- Réseau : ID, Nom, Domaines
- Etat
- Activation : Date, auto activé ou non
- Nom complet
- URL du profil
- Image de profil (48×48)
- Date de naissance
- S’il est administrateur
- Statistiques : nombre de followers, nombre de personnes suivies
- Poste
- Département
- Emplacement
- Téléphone de travail
- Téléphone mobile
- Intérêts
- Résumé
- Expertise
- Diplômes
- Entreprises précédentes
Groupes
Type de requête | Requête | Commentaires |
GET | ||
Groupes suggérés | ||
POST | ||
Rejoindre un groupe | ||
DELETE | ||
Quitter un groupe | ||
Supprimer une suggestion de groupe |
Suivi
Type de requête | Requête | Commentaires |
GET | ||
Utilisateurs suggérés pour le suivi | ||
Vérifier si on suit un utilisateur | ||
Vérifier si on suit un thread | ||
Vérifier si on suit un sujet | ||
S’abonner à un élément | ||
DELETE | ||
Se désabonner d’un élément | ||
Supprimer une suggestion d’utilisateur à suivre |
Autres
Type de requête | Requête | Commentaires |
GET | ||
Notifications de l’utilisateur courant | ||
Recherche | Faire des requêtes de recherche, comme dans le portail Yammer | |
Liste des réseaux auxquels l’utilisateur a accès |