[Proposal] Assistant API

Proposal : Assistant API

Proposal purpose

Currently, There are various Assistants (Google, Siri, Bixby and Clova) in the Platform (CrOS, Android and Mac). If we provide a Web API that can use such assistants, it seems that we can develop a Client with the Web.

Possible implementation ideas

  • Implement Web API for UA
    • If modality is keyboard (ex, Assistant.sendQuery(“Today’s weather”).then(payload => {…)
    • If modality is voice (ex, Assistant.listenQuery() )
  • There is state machine on Assistant
    • state = {Idle, Waiting, Listening, Processing, Answering and etc}
    • we can expose the assistant’s state to the user through Web UI.
  • Consider muti-turn answering on assistant.
  • Consider allow permission to turn on the assistant such as notification permission.
  • Consider It is possible to make clova application on web only.
  • Default assistant is selected by app owner or platform owner.

If necessary, I would like to make it concrete.

I would like to support assistant API to send query and get result on browser or web engine for any assistants to make assistant application easier than before based on web.

Ref. this google assistant API