connecting adhearsion

Post on 18-Dec-2014

129 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Connecting Adhearsion presented by Ben Langfeld at Adhearsion 2012

TRANSCRIPT

P A G E

Connecting Adhearsion

Ben Langfeld@benlangfeld

blangfeld@mojolingo.com

P A G E

2http://theblogthatnoonereads.davegrijalva.com/2004/11/

P A G E

CONTROLLING PHONE CALLS

3http://www.laddamobilen.nu/gratis-ringsignal-old-phone-klassisk-telefon.php

P A G E

BEING A WEB APP

4http://www.pocketpcfaq.com/wce/21/webphone.htm

P A G E

MANAGING DATABASES

5http://www.searchamelia.com/a-clutter-free-space-is-a-happier-place

P A G E

PROCESSING AUDIO

6http://cheezburger.com/1922247936

P A G E

BREWING COFFEE

7http://www.flickr.com/photos/39288568@N03/3774087746/

P A G E

WHY CONNECT ADHEARSION?

8

P A G E

WHY CONNECT ADHEARSION?

8

Report on Calls

P A G E

WHY CONNECT ADHEARSION?

8

Report on CallsReal-time Call Statistics

P A G E

WHY CONNECT ADHEARSION?

8

Gather In-Call Data

Report on CallsReal-time Call Statistics

P A G E

WHY CONNECT ADHEARSION?

8

Gather In-Call Data

Report on Calls

Trigger Outbound

Calls

Real-time Call Statistics

P A G E

WHY CONNECT ADHEARSION?

8

Gather In-Call Data

Report on Calls

Trigger Outbound

CallsMulti-Modal

Communications

Real-time Call Statistics

P A G E

WHY CONNECT ADHEARSION?

8

Gather In-Call Data

Report on Calls

Trigger Outbound

CallsMulti-Modal

Communications

Real-time Call Statistics

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

Database

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

PubSubDatabase

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

PubSubListening

Database

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

PubSubListening

Database

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

PubSubListening

Database

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

PubSubListening

DatabaseExternal

APIs

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

Click-to-Call

PubSubListening

DatabaseExternal

APIs

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

Click-to-Call

PubSubListening

Call Queue

DatabaseExternal

APIs

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

AutoDialer

Click-to-Call

PubSubListening

Call Queue

DatabaseExternal

APIs

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

AutoDialer

Click-to-Call Instant Messaging

PubSubListening

Call Queue

DatabaseExternal

APIs

Process Jobs

P A G E

CONNECT TO WHAT?

9

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

AutoDialer

Click-to-Call Instant Messaging

Externally Triggered Actions

PubSubListening

Call Queue

DatabaseExternal

APIs

Process Jobs

P A G E

CONNECT TO WHAT?

10

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

PubSubListening

DatabaseExternal

APIs

Instant Messaging

Externally Triggered Actions

Call Queue

Click-to-Call

AutoDialer

Process Jobs

P A G E

CONNECT TO WHAT?

10

Trigger Outbound

Calls

Report on CallsReal-time Call Statistics

Multi-Modal Communications

Gather In-Call Data

PubSubListening

DatabaseExternal

APIs

Instant Messaging

Externally Triggered Actions

Call Queue

Click-to-Call

AutoDialer

HTTP XMPP

IRC AIM

Google TalkFacebook ChatRedis AMQP

Who knows?

HTTP

PostgresMongo

Cassandra

HTTP

Redis AMQP

ActiveMQ

Process JobsAMQP Sidekiq

P A G E

WHAT DO I USE?

11

Database Sequel (adhearsion-sequel?), Mongoid

HTTP client Net::HTTP, HTTParty, etc

Redis redis gem

DRb adhearsion-drb

AMQP amqp, bunny gems

HTTP server Reel, Sinatra

XMPP/Google Talk adhearsion-xmpp

IRC ?

P A G E

EXAMPLES

12

P A G E

DISTRIBUTED ARCHITECTURES ROCK

13http://harish11g.blogspot.com/2012/10/latency-geo-distributed-aws-ec2.html

P A G E

MESSAGE PASSING ROCKS

14http://www.defit.org/2012/06/message-passing.html

P A G E

WRAP EVERYTHING

16http://websurdity.com/here-kitty-kitty/

P A G E

EXPECT FAILURE

17http://knowyourmeme.com/photos/22287-blue-screen-of-death-bsod

P A G E

MY WISHLIST

Sidekiq Integration

DCell Integration

AMQP on Celluloid

A Standard HTTP server implementation

More plugins for common use-cases

Documentation

Blog posts

Discussion

18

P A G E

WHAT DO YOU NEED TO CONNECT TO?

@benlangfeld

langfeld.me

top related