Module: VoiceBase::V3::Client
- Includes:
- VoiceBase::V2::Client
- Defined in:
- lib/voicebase/v3/client.rb
Constant Summary
Constants included from VoiceBase::V2::Client
VoiceBase::V2::Client::BOUNDARY, VoiceBase::V2::Client::MULTIPART_CONTENT_TYPE
Class Method Summary collapse
Instance Method Summary collapse
Methods included from VoiceBase::V2::Client
#authenticate!, #delete_file, #get_json_transcript, #get_media, #get_media_progress, #get_text_transcript, #get_transcript
Class Method Details
.extended(client, args = {}) ⇒ Object
6 7 8 9 |
# File 'lib/voicebase/v3/client.rb', line 6 def self.extended(client, args = {}) client.api_host = client.args[:host] || ENV.fetch('VOICEBASE_V3_API_HOST', 'https://apis.voicebase.com') client.api_endpoint = client.args[:api_endpoint] || ENV.fetch('VOICEBASE_V3_API_ENDPOINT', '/v3') end |
Instance Method Details
#upload_media(args = {}, headers = {}) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/voicebase/v3/client.rb', line 11 def upload_media(args = {}, headers = {}) require_media_file_or_url!(args) r = ::VoiceBase::Request::MultipartBuilder.new(headers: default_headers(headers)) if args[:config] r.add(VoiceBase::Request::HashPart.new(name: "configuration", hash: args[:config])) end if args[:media_url] r.add(VoiceBase::Request::TextPart.new(name: "mediaUrl", body: args[:media_url])) end if args[:media_file] r.add(VoiceBase::Request::FilePart.new(name: "media", file: args[:media_file])) end #TODO: make metadata an object if args[:metadata] r.add(VoiceBase::Request::HashPart.new(name: "metadata", hash: args[:metadata])) end response = self.class.post( uri + '/media', headers: r.headers, body: r.body ) VoiceBase::Response.new(response, api_version) end |