Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(VBScript) VoiceBase -- Upload a Media File with a JSON ConfigurationThis example uploads a media file and also provides a configuration file.
Dim fso, outFile Set fso = CreateObject("Scripting.FileSystemObject") 'Create a Unicode (utf-16) output text file. Set outFile = fso.CreateTextFile("output.txt", True, True) ' This example assumes the Chilkat HTTP API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' Insert your Bearer token here: accessToken = "VOICEBASE_TOKEN" ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.Http") set http = CreateObject("Chilkat.Http") ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.HttpRequest") set req = CreateObject("Chilkat.HttpRequest") req.HttpVerb = "POST" req.Path = "/v2-beta/media" req.ContentType = "multipart/form-data" ' Add the access (bearer) token to the request, which is a header ' having the following format: ' Authorization: Bearer <userAccessToken> ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.StringBuilder") set sbAuth = CreateObject("Chilkat.StringBuilder") success = sbAuth.Append("Bearer ") success = sbAuth.Append(accessToken) req.AddHeader "Authorization",sbAuth.GetAsString() success = req.AddFileForUpload2("media","qa_data/wav/msg_123_abc.wav","audio/x-wav") If (success <> 1) Then outFile.WriteLine(req.LastErrorText) WScript.Quit End If ' This is the JSON of the configuration to be added as a parameter to the upload: ' (Obviously, if you want a callback, you would use a URL that goes to your own web server..) ' { ' "configuration":{ ' "publish":{ ' "callbacks":[ ' { ' "url":"https://www.chilkatsoft.com/dss/update_vm_transcription.asp", ' "method":"POST", ' "include":[ ' "transcripts", ' "keywords", ' "topics", ' "metadata" ' ] ' } ' ] ' }, ' "keywords":{ ' "groups":[] ' } ' } ' } ' This code produces the above JSON. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.JsonObject") set json = CreateObject("Chilkat.JsonObject") success = json.UpdateString("configuration.publish.callbacks[0].url","https://www.chilkatsoft.com/dss/update_vm_transcription.asp") success = json.UpdateString("configuration.publish.callbacks[0].method","POST") success = json.UpdateString("configuration.publish.callbacks[0].include[0]","transcripts") success = json.UpdateString("configuration.publish.callbacks[0].include[1]","keywords") success = json.UpdateString("configuration.publish.callbacks[0].include[2]","topics") success = json.UpdateString("configuration.publish.callbacks[0].include[3]","metadata") ' jConfig is a Chilkat.JsonObject Set jConfig = json.ObjectOf("configuration") ' jKeywords is a Chilkat.JsonObject Set jKeywords = jConfig.AppendObject("keywords") ' jGroups is a Chilkat.JsonArray Set jGroups = jKeywords.AppendArray("groups") ' Add the configuration JSON to the upload. req.AddParam "configuration",json.Emit() ' Do the upload.. ' resp is a Chilkat.HttpResponse Set resp = http.SynchronousRequest("apis.voicebase.com",443,1,req) If (http.LastMethodSuccess <> 1) Then outFile.WriteLine(http.LastErrorText) WScript.Quit End If ' Examine the response status code and body. outFile.WriteLine("Response status code = " & resp.StatusCode) ' The response should be JSON, even if an error. success = json.Load(resp.BodyStr) json.EmitCompact = 0 outFile.WriteLine(json.Emit()) ' A successful response will have a status code = 200 If (resp.StatusCode <> 200) Then outFile.WriteLine("Failed.") Else outFile.WriteLine("mediaId: " & json.StringOf("mediaId")) outFile.WriteLine("href: " & json.StringOf("_links.self.href")) outFile.WriteLine("status: " & json.StringOf("status")) outFile.WriteLine("Success.") End If ' Here is an example of a successful response: ' { ' "_links": { ' "self": { ' "href": "/v2-beta/media/856a1e85-c847-4c3c-b7a4-6cf15cd51db4" ' } ' }, ' "mediaId": "856a1e85-c847-4c3c-b7a4-6cf15cd51db4", ' "status": "accepted", ' "metadata": {} ' outFile.Close |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.