voicebase: Upload audio files to voicebase to get a transcription

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

voicebase bindings for http://voicebase.readthedocs.io/en/v2-beta/


[Skip to Readme]

Properties

Versions 0.1.1.0, 0.1.1.0, 0.1.1.1, 0.1.1.2, 0.1.1.3, 0.1.1.4, 0.2.0.0
Change log ChangeLog.md
Dependencies aeson, base (>=4.7 && <5), bytestring, HsOpenSSL, http-client, http-client-openssl, json-autotype, lens, mime-types, options, text, voicebase, wreq [details]
License BSD-3-Clause
Copyright Daisee Pty Ltd
Author Jappie Klooster
Maintainer jappie.klooster@daisee.com
Category API
Uploaded by Jappie at 2018-05-03T07:34:55Z

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for voicebase-0.1.1.0

[back to package description]

Haskell bindings for voice base api

http://voicebase.readthedocs.io/en/v2-beta/

Usage

    import VoicebaseClient
    import Json.TranscriptTypes

    main = do
      result <- transcribe "your bearer token" "./audio.mp3"
      -- get validated response or error
      case result of
        Left err -> print $ err
        Right val -> putStrLn val

      -- get a parsed structure
      parsed <- transcribeParse "your bearer token" "./audio.mp3"
      case parsed of 
        Left err -> print $ err
        Right val -> print $ latestTranscriptsWordsTranscripts . transcriptsLatestTranscripts . mediaTranscripts . topLevelMedia val

There is also a main file which shows usage

features

Trivia

wreq client instead of servant

The reason httplib is used rather than servant is because of multipart posting. It was asserted that servant is incapable of doing that. This is a requirement for the voicebase api however. Http client does support this however we need to write more code as a result of this.