At the WWDC conference in 2016, Apple announced a new framework named SiriKit. SiriKit enables developers to integrate their apps with Apple's digital assistant. This chapter will teach you all the ins and outs of SiriKit, the framework that's used to build extensions for Siri. Similar to iMessage apps, widgets, and notifications, Siri makes use of extensions to integrate with other apps. This is convenient because a lot of the knowledge we've already gained from studying extensions in iOS carries over to Siri extensions.
Even though SiriKit is built upon familiar ideas and concepts, it also introduces a whole new set of terminologies and implementation details. One example of this is that Siri extensions use intents and a specialized vocabulary to integrate with your app. These concepts have been introduced especially for Siri extensions, so you'll need to learn about them before you can implement a Siri extension.
The topics covered in this chapter show the entire flow that your extension goes through when a user uses Siri to make a request for your app. In this chapter, we won't be working on a specific app. Instead, we'll explore the different types of requests that Siri can handle through a series of very small apps that only receive requests from Siri. We won't implement a lot of code to handle these requests.
In this chapter, we're going to cover the following topics:
- Understanding intents and vocabularies
- Handling intents in your extension
- Adding a custom UI to Siri
You'll see why this is an effective approach to learning about SiriKit soon. Let's dive into intents and vocabularies.