Build Chatbot Interactions
Responsive, Intuitive Interfaces with Ruby
by: Daniel Pritchett
Published | 2019-06-12 |
---|---|
Internal code | dpchat |
Print status | In Print |
Pages | 206 |
User level | Intermediate |
Keywords | chatbots, ruby, natural language, voice recognition, Lita, node, interactive, skills, Heroku, Alexa, Slack |
Related titles | Arduino: A Quick-Start Guide, Maik Schmidt, 978-1-94122-224-9 |
ISBN | 9781680506327 |
Other ISBN |
Channel epub: 9781680507096 Channel PDF: 9781680507102 Kindle: 9781680507072 Safari: 9781680507089 Kindle: 9781680507072 |
BISACs | COM042000 COMPUTERS / Natural Language ProcessingCOM051410 COMPUTERS / Programming Languages / RubyCOM051410 COMPUTERS / Programming Languages / Ruby |
Highlight
The next step in the evolution of user interfaces is here. Chatbots let your users interact with your service in their own natural language. Use free and open source tools along with Ruby to build creative, useful, and unexpected interactions for users. Take advantage of the Lita framework’s step-by-step implementation strategy to simplify bot development and testing. From novices to experts, chatbots are an area in which everyone can participate. Exercise your creativity by creating chatbot skills for communicating, information, and fun.
Description
Developers of all skill levels can craft user experiences that are natural, easy to use, and most of all, fun. Build chatbots using free, open source tools and launch them to popular chat platforms like Slack and Amazon’s Alexa. Use the Ruby programming language and the Lita bot framework to unlock fun and powerful chat abilities such as sending text messages and emails, creating new meme images, driving a robot around the room, and talking out loud on a home speaker.
Use frameworks available in Ruby and Node.js to get started quickly. Create simple chatbot skills that respond quickly to basic requests. Chain skills together for more complex interactions. Take advantage of test-driven development techniques to build your bots with confidence. Coordinate tasks with colleagues via bot. Connect with external APIs to provide users with data they need. Extract data information from web pages when an API isn’t available. Expand your bot’s reach with SMS and email messaging. Deploy a chatbot to a host so users can interact with it on their schedule.
Build a more responsive, easy-to-use interface for your users today.
Contents and Extracts
- <b>Preface</b>
- Who Is This Book For?
- What’s in This Book?
- What You Need
- Why Lita and Ruby?
- Online Resources
- Acknowledgements
- Your First Lita Bot
- Install Ruby
- Install Shared Libraries and Redis
- Use Redis as Lita’s “Brain”
- Install the Lita Gem
- Generate a New Lita Bot
- Test the Bot Locally
- Wrap-up
- Your First Lita Skill
- Generate an Empty Skill
- Complete Your Skill and Write Some Unit Tests
- Publish Your Skill for Others as a Ruby Gem
- Wrap-up
- Deploy Your Lita Bot to Heroku
- Prepare a Heroku Home for Your Bot
- Add-ons and Heroku’s Elements Marketplace
- Wrap-up
- Deploy Lita on Your Linux Server
- Create a Cloud Virtual Machine
- Review and Run the Bootstrap Script
- Review Your Dockerized Bot through SSH
- Wrap-up
- Parse a Photoblog: What’s Brad Eating?
- Build a Web Page Scraper Skill
- Set Up a Matcher
- Download the Raw HTML with Tumblr
- Parse the Raw HTML with Nokogiri
- Isolate the First Post with a CSS Selector
- Find the Image with Another CSS Selector
- Format the Results to Share with the End User
- Wrap-up
- Meetup Finder
- Set Up a Meetup.com Account and API Key
- Connect to the Meetup API Using the Meetup Client Gem
- Teach Lita How to Query the Meetup API
- Test Your MeetupFinder Class
- Model the API Response with a Plain Old Ruby Object
- Wrap-up
- Imgflip Meme Maker
- Make an Image Macro
- Teach Lita How to Generate Memes
- Expand the Skill to Support More than One Meme
- Enable Users to Add Memes to Your Gem
- Wrap-up
- Bot Task Scheduler <b>excerpt</b>
- Capture a Lita Command to Reuse Later
- Resubmit a Deferred Lita Command
- Store Scheduled Tasks in Redis
- Wrap-up
- Hide Walls of Text Behind an Offsite URL
- Create a Lita Extension to Send Text to the Pastebin API
- Make a Simple Lita Handler Skill to Use as a Test Driver
- Wrap-up
- Use a Markov Chain or Cleverbot
- Markov Chain: Train Lita to Speak in Someone Else’s Voice
- Cleverbot: Use an External AI for Difficult Questions
- Wrap-up
- Send Messages with SMS and Email <b>excerpt</b>
- Use Twilio to Send Text Messages
- Use SMTP to Send an Email
- Wrap-up
- ChatOps Techniques for Managing Software Systems
- Create a Mini-skill to Check Installed Version
- Test the Command Executor
- Ask Lita to Ship a New Software Release
- Wrap-up
- Amazon Alexa Integrations
- Hardware, Simulators, and Alexa Portal Access
- Register for an Alexa Developer Account
- Create Your First Skill on the Portal
- Serve Up a “Flash Briefing” Newsfeed for Echo Devices
- Record Messages with a Companion Alexa Skill
- Build Out a Lita Skill to Take in Messages from Alexa
- Wrap-up
- Hue Programmable Lighting
- Connect a Hue Bridge to Your Computer
- Build a Simple Wrapper for Managing a Bulb
- Control Your Bulbs from Lita
- Wrap-up