【问题标题】:Siri - custom responseSiri - 自定义响应
【发布时间】:2018-10-23 16:56:26
【问题描述】:

我正在开发 Siri 扩展程序,我想知道是否可以根据情况更改 Siri 的响应。

例如,如果在 iPhone 充电时支持应用程序,并且如果用户在不充电时要求 Siri 执行某些操作,我希望 Siri 回答“‘应用程序名称’需要 iPhone 充电才能处理行动。”

- (id)handlerForIntent:(INIntent *)intent {
    if(charging){
        //Phone is charging; pass corresponding handler
        ...
    }else{
        //Phone is not charging; tell user to charge phone
        return nil;
    }
}

此时,如果我在handleForIntent 中返回 nil,Siri 只会显示

基本上我想更改“抱歉,应用程序出现问题”。带有我自己的错误消息。

一些答案​​建议使用AVSpeechSynthesizer 来传达我的错误信息,但它有几个问题。

  1. AVSpeechSynthesizer 与 Siri 响应重叠。
  2. 无法更改 Siri 屏幕上显示的消息。

如果有人知道如何修改 Siri 的响应(文本和语音),请给我一些建议。

【问题讨论】:

  • 您可以定义自己的自定义响应类,其中包含成功、失败和其他结果消息。 medium.com/@pietropizzi/…
  • 天哪,谢谢,我会调查的。由于某种原因,我无法找到它。非常非常感谢
  • 自定义意图似乎只能用于快捷方式

标签: ios objective-c siri sirikit


【解决方案1】:

返回 nil 是个问题,需要类实例。此外,您应该在确认意图方法中处理充电测试。

【讨论】:

    猜你喜欢
    • 2019-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-16
    相关资源
    最近更新 更多