/temboo-martha

An artificially intelligent-ish personal assistant built on the Temboo API library

Primary LanguagePHP

###About Martha @edd challenged @temboo to "write an open source Siri implementation".

Well, meet Martha! Using Temboo's vast API library she can:

  • Take your requests via web, SMS, or voice with Twilio
  • Find photos on Flickr
  • Search for videos on YouTube
  • Upload the results of her searches to Dropbox or S3
  • Shorten those URLs with Bitly, the better to txt them back to you with Twilio

And that's just what I got done this weekend. You can add more services to her really easily.

In fact, you can generate most of the code necessary live in the Temboo library, then paste it in. Browse through martha.php and you'll find library links above every method. If you follow those links you'll find code snippets that look awfully familiar.

###Quickstart

  1. Sign up for a free account at www.temboo.com
  2. Clone the repo: git clone git@github.com:pseudomammal/temboo-martha.git
  3. Download the Temboo PHP SDK into the temboo-martha directory
  4. Copy config.php.template to config.php and edit with your Temboo credentials. Follow the links in this file to establish credentials for each API.
  5. When creating a Twilio developer account, add a phone number with callbacks temboo-martha/query/sms.php and temboo-martha/query/voice.php. Be sure to include a username and password in the callback URLs matching the values you supplied in config.php.

###Why PHP? Why no framework? You call this a Siri? Yeah, okay, I don't expect Siri will be fearing for her job any time soon. There's really not much to this but Temboo calls and some hairy regular expressions. But that's the point! Martha is here to show off the awesome power of Temboo (which definitely exists), not my Natural Language Processing expertise (which definitely does not). That said, if you happen to be a bored NLP domain expert, pull requests welcome!

Bare bones PHP because a good demo shouldn't involve much in the way of installation or deployment. Just upload Martha to any old web host. The majority of "setup" will just be the time it takes you to sign up for developer accounts with all those APIs.

(Don't worry, we also have SDKs for Android, iOS, Java, Python, Ruby, and Node.js.)

###About Temboo Temboo lets developers focus on what makes their software unique.

Our SDKs give you normalized access to 100+ APIs, databases, and more. Use Temboo if you want to spend less time wrestling with data and more time building what matters to you.

Learn more, and get the Temboo SDK, at www.temboo.com. Or you can watch a screencast of my recent presentation at the API Strategy Conference.

###Copyright and License Copyright 2013, Temboo Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.