When you have a conversation with Google Assistant such as "Hey
Google, turn on the bedroom light", *Hey Google* is the invocation and
*turn on the bedroom light* is known as the grammar. Google determines
the smart home intent from the grammar and sends it over to
the developer cloud (fulfillment). The developer can then execute the command
on the device and returns a response back to Google.

After fulfillment processes an intent and returns a response,
Cloud-to-cloud integrations rely on the
Google Home Graph.
With Home Graph, Assistant can sync
devices, query device states, and execute commands on a device.

## Device types

Device types let Assistant know what grammar should be
used with your device. For example, if you define a device as a
[Light](https://developers.home.google.com/cloud-to-cloud/guides/light.md.txt), the user can interact with the device through
Assistant with *Hey Google, turn on my light*.

See [Device types](https://developers.home.google.com/cloud-to-cloud/guides.md.txt) for the full list of supported
device types.

## Device traits

Device traits define the capabilities of a device type. You can combine
multiple device traits with any device type. For example, you can have a
[Light](https://developers.home.google.com/cloud-to-cloud/guides/light.md.txt) device use the [OnOff](https://developers.home.google.com/cloud-to-cloud/traits/onoff.md.txt),
[Brightness](https://developers.home.google.com/cloud-to-cloud/traits/brightness.md.txt), and
[FanSpeed](https://developers.home.google.com/cloud-to-cloud/traits/fanspeed.md.txt) traits. While the
[FanSpeed](https://developers.home.google.com/cloud-to-cloud/traits/fanspeed.md.txt) trait might not be the
most common trait to use for a light, you can use any trait that you want for
your new device.

When you add a device trait to your device type, your device inherits the
states of each device trait that you add. For example, when you use the
[OnOff](https://developers.home.google.com/cloud-to-cloud/traits/onoff.md.txt) trait, your device can now report its `on`
state as `true` or `false`.

See [Device Traits](https://developers.home.google.com/cloud-to-cloud/traits.md.txt) for the full list of supported
traits.