An application that uses the Yammer API to extract historical messages for an organisation and save them for later academic analysis.
Created for The University of Auckland ISOM Department in 2010
Technologies: C#, SQL Server, WPF
A research group within ISOM was interested in researching social media, particularly as used by organisations. Yammer is an extremely popular corporate microblogging and social network tool (like twitter but within an organisation, and is used by a number of companies in New Zealand, including the University of Auckland.
The group was interested in both qualitative (why? what use is it? how is it used? how does it help/hurt?) and quantitative (how many? how often? when? what about?) questions. This tool was designed to help answer the quantitative questions.
Yammer has a REST based API that developers can use to get access to Yammer data. It requires authorisation from a user, and is restricted to accessing only the data that user has access to. It also has rate-limits, governing how often a request can be made. There were a few items of data that were surfaced on the Yammer site that were not available through the API, and for those we used screen-scraping to extract them.
This screen, used by the researchers allowed them to browse the data collected so far, start the fetching and screen scraping processes, and export the data for analysis.
When fetching, small amounts of data are fetched at various intervals in order to respect the Yammer API's rate limits. This screen shows the status of the fetch, with an updated count of messages, users and attachments as it retrieves the data. When run for the first time, it will retrieve all data (starting with most recent first). When run subsequently, it will only retrieve the messages that have been sent since the last time it was run.
Before the researcher can use the app, they need to grant it access using the Yammer App authentication mechanism.
The screen scraping interface works the same way as the fetching interface.
This application was used to extract data about The University of Auckland's Yammer network, and that preliminary data was used as the basis of two academic papers. The researchers have plans to use it to analyse the use of Yammer in other large organisations in the future.