Time that used to be spent on social media is increasingly being spent in messaging apps. This makes it likely that messaging apps will be the next major app platform. It's here that people discuss the TV they're watching now and what to watch next. This makes reaching people here incredibly valuable to media companies

What it does

Add Murdoch to any of your chat threads in Telegram and it will unobtrusively listen to what tv shows you or your friends are talking about, and make smart recommendations

How we built it

We have a back end built in Rails, Postgres, Redis and hosted on Heroku. We access input and output through the Telegram bot API. We use IBM Alchemy API to detect sentiment and subject of responses.

We processed the 1.3 million rows of data supplied by sky as a seed for our recommendation engine.

Challenges we ran into

  • Very hard to identify threads in conversations with multiple participants
  • Generating recommendations is generally quite slow, but we want them on the fly so that Murdoch appears responsive during early learning
  • TV viewing tends to be long tail, so most data relates to a small subset of very popular shows. This makes surfacing unusual suggestions especially challenging

Accomplishments that we're proud of

  • Parsing 1.3m rows of behavioural data from Sky and using a Jaccardian similarity based algorithm to seed our recommendations system
  • Using the Alchemy API from IBM to understand when people are talking about a TV Show and what their sentiment towards it is

What we learned

  • Tv Viewing tends to be long tail, most people watch the same small number of shows
  • When identifying threads in conversations, you can get 90% of the way there, and quite a good experience, by making time based assumptions, the last 10% will be really difficult
  • It's really important to have any sort of automated system participating in a group chat, adapt to the cadence of the conversation, otherwise it quickly feels like spam

What's next for Murdoch

Improve the responses with IBM dialogue API and increase the use cases to other chat avenues. Provide an API to allow access to anonymised market data - what shows are popular in what markets, when people are talking about shows and how positive they are bout them.

Share this project: