asterisk applications unexpected hurdles fred posner [email protected]@qxork.com teamforrest

30
Asterisk Applications Unexpected Hurdles Fred Posner [email protected] TEAMFORREST

Upload: whitney-mosley

Post on 13-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Asterisk ApplicationsUnexpected Hurdles

Fred Posner [email protected]

Page 2: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Asterisk Applications:Unexpected Hurdles

Case study of a real-time parking space availability application using Asterisk,

Perl, Cepstral, a little SQL, and the unexpected.

SOMETIMES... BUILDING THE APPLICATION ...IS THE EASY PART.

Page 3: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Welcome to Ann Arbor, MI

- January 2009

- Average temperature: 14º F

- Perfect coding weather

A2B3

- Weekly lunch of various technical “professionals”

- Projects discussed, people brainstorm, code, develop...

Background

Page 4: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

“Wouldn’t it be neat...”

Discussion of Ann Arbor Parking

- A2DDA.org lists parking spaces on website (pure HTML tables)

- “Wouldn’t it be nice if you could get this when you’re not at the computer?”

Enter Asterisk®

- Asterisk AGI allows creation of phone applications

- Asterisk, when called, will check availability and deliver information verbally

Page 5: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Basic Components

Tools Used:

- Asterisk®

- MySQL®

- Perl

- Cepstral®(not open source)

Page 6: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Basic Flow

Page 7: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

How’s it work?

Call Received by Asterisk

Dial Plan Answers

- Cepstral Text to Speech

- Read() gets the garage

AGI Launched

- Perl Script checks a2dda.org

- Sets variable for spaces available

Page 8: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

How’s it work?

Return to Dial Plan

- Cepstral/Dialplan TTS Results

- Read() if call back wanted

AGI Launched

- Perl script checks weather

- Perl script adds number to MySQL Database

Page 9: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

How’s it work?

Return to Dial Plan

- gives weather

- Thank you. Come again.

If call back needed...

- Check every minute

- Call file created with update

Page 10: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Asterisk Apps Fly Quickly

Development Time: 1 night

Later that night:

- Blogged to VoIPTechChat.com

- Posted Dial Plan

- Posted Script code

Page 11: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

first Result

Fantastic discussions...

Dug Song, Entrepreneur

- “ Check out Twilio, a startup with Ann Arbor roots...”

Evan Cook, Twilio

- “...Twilio + Asterisk together. They make excellent companions.”

‣ Made Demo in Twilio and posted source code

Jason Goecke, Adhearsion

- “In the spirit of comparing and contrasting the various approaches and adding another language to the mix, I have created an Adhearsion component...”

Made demo in Adhearsion and posted source code

Page 12: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Still Riding High

Interviews

- Ann Arbor Chronicle

- Ann Arbor News

- Michigan Today

- Radio, Web, and other news...

Presentations

- Michigan Users Group

- A2 Cloud Camp

Local Number Added

- 734-ARB-0909 (272-0909)

- Supports more than 20 calls

Page 13: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Innovation

iPhone

- a2-park.appspot.com

SMS

- mbusreloaded.com/aapark

Adhearsion

- jsgoecke.github.com/annarbor_parking/

Twilio

- monkey.org/~phy/a2parking/

Other Projects

Historical Data Tracking(via Google APPS)

• All within a week!

Page 14: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Hurdle #1- Ignorance

January 16, 2009

- A2DDA.org blocks google apps (and unknowingly, a large part of google) from their website.

January 21, 2009

- a2dda.org blocks the Asterisk application

Email Received from Susan Pollay, Director of A2DDA:

- “There is a concern about how unsecure/secure the DDA website is made when sharing this data.   And finally, a concern that if the project had value to parking patrons, that the DDA itself should consider providing this service as an extension of what it is already doing on-line.”

Page 15: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

And we wait...

Three main people

- Fred Posner (me)- Ed Vielmetti- Tyler EricKson

Tyler used a different proxy and continued to log data

We researched the DDA

- Ann Arbor Downtown Development Authority

- Public funded through tax

• We offer to assist/Explain/Train

• We attend meetings

- Not recognized to speak

Page 16: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Hurdle #2 - Blocked Access

March 12, 2009 - DDA resolution

- “...to provide information by phone to interested members of the public using real human beings answering phones at the Republic Parking office.”

- Access to data is blocked

4 points:

- no permission from the DDA

- project hopes to make a profit

- DDA has no control

- Toll Call

Page 17: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Hurdle # 3 - ourselves

Fred writes a lengthy response to the DDA

- Sarcastic

- Blogged on VoIPTechChat.com

Response is HUGE

- Reddit, DIGG, Slashdot, etc.

- A2DDA receives many calls and emails complaining about their action

Blog traffic exceeds several thousand readers/day

“Nerd Wars”

Godwin’s Law (comment 42)

• Raw DATA NOW!

Page 18: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Raw Data Now

February 4, 2009

- Sir Tim Berners-Lee presents "The next Web of open linked data" at TED 2009; audience chants RAW DATA NOW

- Inventor of WWW

Becomes Battle Cry

New approach is to not stop until Raw Data is received

Page 19: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

FOIA: Freedom of Information

Feds, most states have FOIA laws and Processes

- Time consuming

- Formal

- Effective

Formal FOIA request made to DDA for the data

- Previous interview quoted discussing DDA data

- “...I imagine, are going to want to embed this--and we encourage them to--in their own webpages...”

Page 20: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

DDA Launches Phone “App”

“Citing security concerns, the DDA took issue with their method and now says it will provide a similar service itself.”

“Callers dialing 734-761-9477 will reach an employee at Republic Parking, which manages the structures. The post is staffed 24 hours a day, Monday through Saturday. The cost to provide the service is minimal, the DDA says.”

- Ann Arbor NEws

Page 21: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

“Ann Arbor Smackdown”

“Geeks vs. Suits”

We are labeled as hackers.

A2DDA begins receiving numerous calls, FOIA requests, and pressure from other Ann Arbor agencies.

Google of “A2DDA” and “Ann Arbor Parking”

- Top 5 results were complaints

- VoIP Tech Chat was #1 (now is #3)

Selected comments:

“...trying to achieve change via sarcasm makes sure that reasonable discussion won't fix problems”

“His points are laid out clearly, and his arguments are well-thought out. If the officials have valid responses, they can respond in the same tone. It makes the exchange much more interesting and entertaining for the spectators.”

“The sarcastic tone is just a lazy way to move a thought from the writer's head to the reader, without having to form a coherent argument. They should not have done that, but instead redrafted the letter a couple of times.”

“Collecting and using public information is not hacking.”

Page 22: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Resolving Hurdles 1 - 3

Ignorance

- Education

- Must be willing participant

Ourselves

- Therapy?

- Popeye

Blockage

Public Outcry worked

Dug Song Better Example

‣ A2 Skate park

Page 23: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Hurdles... all bad?

Additional press coverage reflects A2DDA negatively

Attendance at Meetings Skyrockets

Tyler Erickson gets recognized to speak at the April 1st meeting

- “six out of the first 10 search results on a Google query for “a2dda” were about blocking access to data. This was a negative association”

- “There’s a lot of minds who would like to work on the data. If Ann Arbor wants to encourage students, and convince them that they can have a great IT  career here, instead of leaving and going to Boulder and Portland, then the DDA needed to stop blocking access to data and be aware of the community interested in it.”

“Conditional” Access is restored within 7 days

We do not accept conditions, and respond “Raw Data Now”

Page 24: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

HURDLES ARE...An opportunity to improve

Page 25: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Opportunities for change

Every hurdle is an opportunity to do better.

What started as access to parking spaces by phone...

turned into public access to government data

- Elderly

- Blind

- Anyone without access to web

Page 26: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

do or do not. there is no try.

You either overcome THE hurdle or you fail.

learn better approaches for the future

“Experience keeps a dear school, but fools will learn in no other.”

- Provides examples for non fools

Page 27: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Hurdles Can Be Rewarding

Great exposure

Better access to Data (still improving)

New clients

FOIA Fridays

Bus Routes

And, Everyday Has new Surprises!

Page 28: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

SURPRISE! Hurdle #4 - Patents

ParkingCarmA

Methods for relaying information regarding parking space availability to cell phones

Method and apparatus for detection and remote notification of vehicle parking space availability data

Page 29: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Thank You. Come Again.

“And I know what I have to do now. I have to keep breathing. Because tomorrow the sun will rise. Who knows what the tide could bring?”

Page 30: Asterisk Applications Unexpected Hurdles Fred Posner fred@qxork.comfred@qxork.com TEAMFORREST

Asterisk Applications:Unexpected Hurdles

Questions?

Fred [email protected]

TEAMFORREST