TranscribeMe gem
Description
This gem is a Ruby wrapper for the TranscribeMe SOAP API, built on Savon, and includes some extra dangly bits for uploading to Windows Azure Blob storage.
This gem wants to make it easy for you. It tries, at least. If you call the 'sign_in' method before initializing a session then we all know you meant to. We'll jump right in there and initialize it for you.
Prerequisites
This gem relies on FFMPEG for determining the duration of audio (and video) files. The TranscribeMe SOAP API leaves it as the client's responsibility for determining the duration of files being uploaded.
Installation
Add this line to your application's Gemfile:
gem 'transcribeme'
And then execute:
$ bundle
Or install it yourself as:
$ gem install transcribeme
Usage
See USAGE.md
Documentation
Documentation follows Tomdoc and is generated by YARD
The documentation can be browsed online
Roadmap
Version 1.0.0 stable
- [ ] Write specs (WIP)
- [x] Set up Travis-CI and document supported Ruby versions
- [x] Investigate Windows Azure Blob storage file upload
- [x] Include Excon for Windows Azure Blob storage
- [x] Base64 decrypt transcription results
- [ ] Document SOAP calls and error messages
- [ ] Complete YARD documentation
- [ ] Validations for GUIDs
- [ ] Exceptions for error handling (about 50%)
- [ ] Modelling Recording objects, particularly better describing recording status
- [ ] Reduce gem size through reducing spec support files (download as needed during specs, gitignored?)
- [ ] Implement the customer sign up API
- [ ] Implement the customer reset password
Version 1.1.0
- [ ] Refactor the recordings array into an object with
#completed
#in_progress
and#ready
instance methods
Version 1.2.0
- [ ] Create a CLI interface
RubyMotion
- [ ] A RubyMotion fork (transcribeme-motion), wrapped in BubbleWrap's HTTP DSL (watch this space)
REST API Wrapper
- [ ] A Sinatra RESTful wrapper around the SOAP operations for your own personal REST API middleman, with JSON-ic magic at your fingertips. JSON was always my favourite Argonaut.
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request