Nowadays, Yammer has become an integral part of Office 365 Sites. When we POST a data from our Site Collection, it gets stored in the Yammer.
When, we open the Context Menu of the File and Click on the POST, a Yammer Popup will be coming.
On the popup, we will be entering our text and click on POST. This will be reflected on the Yammer Site. There are many things, which we need to integrate with the Yammer. Let us focus them on the upcoming articles. But, Yammer and Office 365, has a tight coupling and there are lot more can be achieved, if we use them properly.
The Inserted comment can be visible on the Yammer site as below. But, if you could see, Yammer can be created with many groups. By default, “All Company” Group will be selected. And the Comment which we posted from the Office 365 will be posted in the Yammer Group “All Company”.
Now, let us see how to create a Yammer Group through the screen as well as C# Client side object model as well.
On the Yammer home page, click on the “Discover More groups” option.
On the right hand top corner, we can see the “Create Group” Button.
On the Screen, enter the group name, members, whether it is a Public or Private group.
Click on “Create Group”
That’s it. Yammer Group would have been created.
.
With this introduction, let us see, how to create a Yammer Group Programmatically.
It is a straight forward method
using Microsoft.SharePoint.Client;
using OfficeDevPnP.Core.Framework.Provisioning.Connectors;
using OfficeDevPnP.Core.Framework.Provisioning.Providers.Xml;
using System.IO;
using System.Net;
using System.Text;
namespace Office365.Console
{
class Program
{
static void Main(string[] args)
{
CreateYammerGroup();
}
public static void CreateYammerGroup()
{
string url = "https://www.yammer.com/api/v1/groups.json";
string access = "&private=false"; // This is for PUBLIC group. For Private Group - "&private=true";
string groupUrl = string.Format("{0}?name=" + "YammerGroupName" + "{1}", url, access);
string result = PostYammerJson(groupUrl, "<<ADMIN ACCESS TOKEN OF THE YAMMER TENANT>>");
}
public static string PostYammerJson(string url, string accessToken)
{
//make the request
string json = null;
HttpWebRequest YammerRequest = HttpWebRequest.Create(url) as HttpWebRequest;
YammerRequest.Method = "POST";
YammerRequest.ContentType = "application/json; odata=verbose";
YammerRequest.Accept = "application/json; odata=verbose";
YammerRequest.ContentLength = 0;
YammerRequest.Headers.Add("Authorization", string.Concat("Bearer ", accessToken));
using (HttpWebResponse response = YammerRequest.GetResponse() as HttpWebResponse)
{
Encoding encode = Encoding.GetEncoding("utf-8");
StreamReader reader = new StreamReader(response.GetResponseStream(), encode);
json = reader.ReadToEnd();
}
return json;
}
}
}
Happy Coding,
Sathish Nadarajan.
Leave a comment