Sample code for 30+ languages & platforms
C#

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 C# Downloads

C#
bool 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:
string accessToken = "VOICEBASE_TOKEN";

Chilkat.Http http = new Chilkat.Http();

Chilkat.HttpRequest req = new Chilkat.HttpRequest();
req.HttpVerb = "GET";
req.Path = "/v2-beta/media";

//  Add the access (bearer) token to the request, which is a header
//  having the following format:
//  Authorization: Bearer <userAccessToken>
Chilkat.StringBuilder sbAuth = new Chilkat.StringBuilder();
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\"");

Chilkat.HttpResponse resp = new Chilkat.HttpResponse();
success = http.HttpSReq("apis.voicebase.com",443,true,req,resp);
if (success == false) {
    Debug.WriteLine(http.LastErrorText);
    return;
}

//  Examine the response status code and body.
Debug.WriteLine("Response status code = " + Convert.ToString(resp.StatusCode));

//  The response should be JSON, even if an error.
Chilkat.JsonObject json = new Chilkat.JsonObject();
json.Load(resp.BodyStr);
json.EmitCompact = false;

//  A successful response will have a status code = 200
if (resp.StatusCode != 200) {
    Debug.WriteLine("Failed.");
}
else {
    Debug.WriteLine("mediaId: " + json.StringOf("mediaId"));
    Debug.WriteLine("href: " + json.StringOf("_links.self.href"));
    Debug.WriteLine("status: " + json.StringOf("status"));
    Debug.WriteLine("Success.");
}

//  See the sample JSON response below..

//  Iterate over the JSON like this:
Chilkat.CkDateTime dt = new Chilkat.CkDateTime();
Chilkat.DtObj dtObj = new Chilkat.DtObj();

int mediaCount = json.SizeOfArray("media");
int i = 0;
while (i < mediaCount) {
    json.I = i;

    Debug.WriteLine("-- " + Convert.ToString(i) + " --");
    Debug.WriteLine("  mediaId: " + json.StringOf("media[i].mediaId"));
    Debug.WriteLine("  status: " + json.StringOf("media[i].status"));
    Debug.WriteLine("  contentType: " + json.StringOf("media[i].metadata.contentType"));
    Debug.WriteLine("  milliseconds: " + json.StringOf("media[i].metadata.length.milliseconds"));
    Debug.WriteLine("  descriptive: " + json.StringOf("media[i].metadata.length.descriptive"));
    string dateCreated = json.StringOf("media[i].dateCreated");
    dt.SetFromTimestamp(dateCreated);

    bool localTime = true;
    dt.ToDtObj(localTime,dtObj);

    Debug.WriteLine("  " + Convert.ToString(dtObj.Month) + "/" + Convert.ToString(dtObj.Day) + "  " + Convert.ToString(dtObj.Hour) + ":" + Convert.ToString(dtObj.Minute));

    i = i + 1;
}

Debug.WriteLine("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"
//      }
//    ]
//  }