2016-04-04 10 views
0

Ich verwende den folgenden Text senden über eine Taste drücken Funktion wit.ai:Ausgabe Ergebnisse empfängt, wenn Text senden an wit.ai

@IBAction func searchButton(sender: AnyObject) { 

    searchQueryText = searchTextInput.text! 
    if searchQueryText != "" { 
     wit.interpretString(searchQueryText, customData: nil) 
    } 

func interpretString(string: String, customData: AnyObject) { 
} 

das funktioniert gut, wie der Text nämlich gesendet wird. ai. Allerdings bekomme ich keine Antwort von wit.ai zurück zur App. Ich kann die Antwort gut erhalten, wenn ein Mikrofon verwendet wird, nur nicht Text. Ich habe versucht, die witDidGraspIntent-Funktion aufzurufen, um es auf Knopfdruck zu erzwingen, aber ich kann nicht herausfinden, was ich im Parameter 'outcomes' verwenden soll. Kann mir jemand helfen? Ich bin mir nicht sicher, ob es eine andere Möglichkeit gibt, die Funktion nach dem Drücken der Taste auszuführen. Dies ist die Funktion:

func witDidGraspIntent(outcomes: [AnyObject]!, messageId: String!, customData: AnyObject!, error e: NSError!) { 
    if ((e) != nil) { 
     print("\(e.localizedDescription)") 
     return 
    } 

    let outcomes : NSArray = outcomes! 
    let firstOutcome : NSDictionary = outcomes.objectAtIndex(0) as! NSDictionary 
    if let intent = firstOutcome.objectForKey("intent") as? String { 
     searchResultsIntent = intent 
    } 

    if searchResultsIntent == "searchIntent" { 

     intentLabel.text = "\(searchResultsIntent)" 
     print(outcomes[0]) 

    } else { 

     intentLabel.text = "I'm sorry, I did not understand that." 
    } 
} 

hier die Dokumentation wit.ai ist: https://wit.ai/docs/ios/4.0.0/api

jede Hilfe sehr geschätzt!

Prost.

Antwort

0

Wit sdk gibt einen sharedInstance (Singleton) für Benutzer zu arbeiten, so dass Sie zu initiieren haben es wie -:

Wit.sharedInstance().accessToken = "TOKEN" 
Wit.sharedInstance().delegate = self 

und rufen Sie die Funktion interpretString die sharedInstance mit d

Wit.sharedInstance().interpretString(text, customData: nil) 
Verwandte Themen