23
Building Social Tools Socal Code camp - 2014

Building Social Tools

Embed Size (px)

Citation preview

Building Social Tools

Socal Code camp - 2014

Social Tools• Action Oriented• Data Driven• Rapid Feedback

Social Tools Suite

Reviews Aggregation

Reputation Monitoring

Content Publishing

Content Discovery

AnalyticsRealtime Feeds

Reviews Aggregation

Reviews Aggregation

• Customer Reviews from Review Siteso Yelp, Edmunds, Facebook etc.o Metrics • Overall Rating• Reviews• Star Rating

• Aggregation Modelso APIo Raw Webpage Analysis

Reviews Aggregation - API

YelpTemplate yelp = new YelpTemplate('yelp.consumerKey’, 'yelp.consumerSecret’, 'yelp.token’,'yelp.tokenSecret')

Business business = yelp.findById(‘bizId’)def overallRating = business.ratingdef reviews = business.reviews

Setup:

1.Pre-negotiated security tokens2.Rate limits

Reviews Aggregation - Toolkit

o Web Based Extraction Tools• Import.IO ( http://import.io)

oConvert web pages to table data.oLittle or No Coding

Reputation Monitoring

Reputation Monitoring

• “Understanding or Influencing of an Individual’s or Business’s Reputation. “

• Look for Unstructured Information online.

• Sentiment Analysis.

• Sentiment Analysis – Computationally Identify and Categorize Opinion in a Piece of Text

Reputation Monitoring• Employ Techniques to find Information Online

o Web Crawlerso RSS o Social Media Data

Web Crawling

• 80legs.com , Scrapy.org etc.• Provide crawlable sites, depth, and # of results to

return.• Plugins to filter returned html

Create:POST https://api_token:@api.80legs.com/v2/crawls/{CRAWL_NAME}

Status:GET https://api_token:@api.80legs.com/v2/crawls/{CRAWL_NAME}

Results:GET https://api_token:@api.80legs.com/v2/results/{CRAWL_NAME}

Other Sources• RSS:

o API for RSS/Atom Feedso Rome/ Apache Abdera

URL feedUrl = new URL(url);SyndFeed feed = fetcher.retreiveFeed(url)doStuff(feed.articles)

Sentiment Analysis• Why Lots of Opinions on the web• Machine Learning/ Lexicon Based

Machine Learning Based

• Collect Data• Label Data• Prepare and Upload Data• Predict new Data• Iterate

Lexicon based

• Tokenize Words,• Lematize Them ( good gud .. ) • Assign negators/ intensifiers

Sentiment Analysis - Tools

• Google Predictions API• Stanford NLP

• Init training set• For each sentence

o Break into wordso Pass each word/phrase into training set to classify sentimento Combine each classified word and sentiment to compute overall

sentiment.

Content Discovery

Content Discovery• Discover Relevant Content• Purpose : To Engage more audience and attract

Leads• Different Channels

o RSSo Social Trends – Youtube , Twitter, Topsy…

• Youtube Trends API• Twitter Trends API

o Local News Feedso Custom APIs

Content Publishing• Publishing Interesting Content to engage Users• Oauth Permission to Act on Client’s behalf

o Provides Client Applications a ‘Secure’ Access to Server Resources on Behalf of a resource Owner

• Publish to Multiple Channels at once.

Twitter4j twit4j = Twitterfactory.getInstance()twit4j.setAuthorizationCode(…..)Tweet createdTweet = twit4j.post(“status Update”)

FacebookClient client = new FacebookClient();client.publish(“Message”, wallId);

• Most Popularo Facebook, Twitter, LinkedIn, Pinterest…

• Twitter Post

Realtime Notifications• Notifications on your social media Actions• Techniques

o HTTP Pusho Persistent Connections

• JVM Libraries Availableo Twitter4j, HTTP APIs, Native Java APIs

• Try Twitter

Analytics/Insights• Provider APIs

o Facebook Insights API• /{page-id}/insights• /{post-id}/insights

o Twitter Analytics• Analytics.twitter.com

o Impressions, engagement rateo Interests, locations etc.

• Thirdparty Providers – o Gnip , Datasifto Topsy Labs

Other Products• Hootsuite• Sprout Social• Buffer