我正在尝试实施一个航空公司应用程序,该应用程序将以文本对话并为用户返回里程。我正在使用INSearchForAccountsIntentHandling
协议来实现它。
就像我希望siri在siri屏幕上的文字中回复说“你的账号:1000211的里程为3000”。我没有在网上找到任何关于如何做的文档。
首先,甚至可以这样做吗?
其次,如果是,我如何在下面的方法中实现它:
func handle(intent: INSearchForAccountsIntent, completion: @escaping (INSearchForAccountsIntentResponse) -> Void) {
print("Sirikit is working")
}
答案 0 :(得分:0)
根据您希望使用此功能,您似乎不需要SiriKit
,而是使用AVSpeechSynthesizer
。如果您只是希望您的应用向用户回读您的句子,那么最基本的实现将如下所示:
import AVFoundation
let synthesizer = AVSpeechSynthesizer()
let utterance = AVSpeechUtterance(string: "Your miles for the account no: 1000211 is 3000")
synthesizer.speak(utterance)
我认为您需要调整形成句子以删除缩写的方式,但作为一个概念,这完全有用。
查看Apple's docs以获取更多信息和详细信息。