Try Jay’s demo at home.
Jay Phillip’s Adhearsion Demo at the Moutain West Ruby Conf
Jay Phillip’s talk at MWRC attempted to get the audience involved in actually running an Adhearsion demo on their own laptops. Unfortunately, the demo at MWRC was plagued with firewall and network problems, but eventually I was able to get it working. Here are the steps needed.
Go ahead, try this at home. It’s a lot of fun.
Step 1—Sign up for an Adhearsion account.
You can do that here: https://adhearsion.com/signup
You will need a skype account to complete the sign-up. After signing up, you should get an email with a link that you need to click before your account is activated. Go ahead and activate the account now.
Step 2—Install the Adhearsion Gem
Run:
gem install adhearsion
I’m running the 0.8.2 version of the gem.
Step 3—Create an Adhearsion project
Run:
ahn create project_name
Step 4—Enable the Sandbox
Run:
cd project_name
ahn enable component sandbox
Step 5—Edit Your Credentials
Edit the file: components/sandbox/sandbox.yml and update the username and password you used when you created the Adhearsion account in step 1.
Step 6—Create a Dial Plan for the Sandbox
Edit the dialplan.rb file to contain the following:
adhearsion {
simon_game
}
sandbox {
play "hello-world"
}
The adhearsion section should alread be in the file. You will be adding the sandbox section.
Step 7—Star the Adhearsion Server
Run:
cd ..
ahn start project_name
You should see:
INFO ahn: Adhearsion initialized!
Errors at this stage might mean that your adhearsion account isn’t setup properly, you don’t have the right user name and password (in step 5), or that you have firewall issues preventing you from connecting to the Adhearsion server.
Step 8—Call The Sandbox
Using Skype, call the Skype user named sandbox.adhearsion.com. You should hear a hello world message.
Step 9—Change the Dial Plan
Just for fun, change the dialplan.rb file to contain:
adhearsion {
simon_game
}
sandbox {
play "hello-world"
play "tt-monkeys"
}
(Add the tt-monkeys line to the sandbox dial plan).
Now call the sandbox again (skyping user sandbox.adhearsion.com) to hear the change in the dial plan. Monkeys FTW.
More Examples
Here’s a example of what can be done in a dial plan. I was just goofing around with my dial plan.
adhearsion {
simon_game
}
sandbox {
play "vm-enter-num-to-call"
digits = input 1, :timeout => 10.seconds
case digits
when '1'
play "hello-world"
when '2'
play "tt-monkeys"
when '3'
play "what-are-you-wearing"
when '4'
play 'conf-unmuted'
when '5'
play 'tt-weasels'
when '6'
play "pbx-invalidpark"
when '7'
play "1000", "dollars"
when '8'
play "followme/sorry"
when '9'
simon_game
when '0'
play Time.now
else
play "demo-nomatch"
end
sleep 1
play "demo-thanks"
}
See https://adhearsion.com/examples for more dialplan examples.
That’s It
Think about what you are doing. You are calling the Adhearsion server and controlling how that remote server responds by the adhearsion program running on your own local box. That is wild.
The adhearsion sandbox makes it easy to play around with telephony programming without any investment in the associated hardware.
I hope this demo encourages you to give Adhearsion a try.
comments |