Go
Go
VoiceBase -- Compound Expression Search
See more VoiceBase Examples
Demonstrates how to do a VoiceBase compound expression search. See VoiceBase Search for more details about Search.Chilkat Go Downloads
success := false
// 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"
http := chilkat.NewHttp()
req := chilkat.NewHttpRequest()
req.SetHttpVerb("GET")
req.SetPath("/v2-beta/media")
// Add the access (bearer) token to the request, which is a header
// having the following format:
// Authorization: Bearer <userAccessToken>
sbAuth := chilkat.NewStringBuilder()
sbAuth.Append("Bearer ")
sbAuth.Append(accessToken)
req.AddHeader("Authorization",*sbAuth.GetAsString())
// Search for media containing the terms any of the terms "test", "number", or "three"
req.AddParam("query","\"test\" OR \"number\" OR \"three\"")
resp := chilkat.NewHttpResponse()
success = http.HttpSReq("apis.voicebase.com",443,true,req,resp)
if success == false {
fmt.Println(http.LastErrorText())
http.DisposeHttp()
req.DisposeHttpRequest()
sbAuth.DisposeStringBuilder()
resp.DisposeHttpResponse()
return
}
// Examine the response status code and body.
fmt.Println("Response status code = ", resp.StatusCode())
// The response should be JSON, even if an error.
json := chilkat.NewJsonObject()
json.Load(resp.BodyStr())
json.SetEmitCompact(false)
// A successful response will have a status code = 200
if resp.StatusCode() != 200 {
fmt.Println("Failed.")
} else {
fmt.Println("mediaId: ", *json.StringOf("mediaId"))
fmt.Println("href: ", *json.StringOf("_links.self.href"))
fmt.Println("status: ", *json.StringOf("status"))
fmt.Println("Success.")
}
// See the sample JSON response below..
// Iterate over the JSON like this:
dt := chilkat.NewCkDateTime()
dtObj := chilkat.NewDtObj()
mediaCount := json.SizeOfArray("media")
i := 0
for i < mediaCount {
json.SetI(i)
fmt.Println("-- ", i, " --")
fmt.Println(" mediaId: ", *json.StringOf("media[i].mediaId"))
fmt.Println(" status: ", *json.StringOf("media[i].status"))
fmt.Println(" contentType: ", *json.StringOf("media[i].metadata.contentType"))
fmt.Println(" milliseconds: ", *json.StringOf("media[i].metadata.length.milliseconds"))
fmt.Println(" descriptive: ", *json.StringOf("media[i].metadata.length.descriptive"))
dateCreated := json.StringOf("media[i].dateCreated")
dt.SetFromTimestamp(*dateCreated)
localTime := true
dt.ToDtObj(localTime,dtObj)
fmt.Println(" ", dtObj.Month(), "/", dtObj.Day(), " ", dtObj.Hour(), ":", dtObj.Minute())
i = i + 1
}
fmt.Println("Finished.")
// A sample JSON response:
// {
// "_links": {
// "self": {
// "href": "/v2-beta/media"
// }
// },
// "media": [
// {
// "mediaId": "26063536-FFFF-4020-93ba-0878112d834b",
// "status": "finished",
// "metadata": {
// "contentType": "audio/x-wav",
// "length": {
// "milliseconds": 85141,
// "descriptive": "85.0 sec"
// }
// },
// "dateCreated": "2017-01-19T16:49:32.000Z"
// },
// {
// "mediaId": "8163fbbc-FFFF-4794-aa95-045420bb321d",
// "status": "finished",
// "metadata": {
// "contentType": "audio/x-wav",
// "length": {
// "milliseconds": 65342,
// "descriptive": "65.0 sec"
// }
// },
// "dateCreated": "2017-01-19T20:08:49.000Z"
// },
// ...
// ...
// {
// "mediaId": "b01e27be-FFFF-4b62-8802-6dc66a75c4d3",
// "status": "finished",
// "metadata": {
// "contentType": "audio/x-wav",
// "length": {
// "milliseconds": 11581,
// "descriptive": "11.0 sec"
// }
// },
// "dateCreated": "2017-02-06T20:55:43.000Z"
// }
// ]
// }
http.DisposeHttp()
req.DisposeHttpRequest()
sbAuth.DisposeStringBuilder()
resp.DisposeHttpResponse()
json.DisposeJsonObject()
dt.DisposeCkDateTime()
dtObj.DisposeDtObj()