We want to hear your thoughts on the Google Smart Home platform. Join a user study and receive a gift for your input. Click here to sign up.

Callback registered with the App via App.onReachableDevices to discover additional devices connected to a proxy or hub.

When a device that is discovered by the IdentifyHandler is a proxy which enables indirect access to other devices (identified by the isProxy flag in the IdentifyResponse), the local home platform sends a REACHABLE_DEVICES intent to discover the additional devices visible to the proxy.

To learn more about how the platform verifies reachable devices, see the developer guide.

const devicesHandler = (request: IntentFlow.ReachableDevicesRequest):
  IntentFlow.ReachableDevicesResponse => {

    // Reference to the local proxy device
    const proxyDevice = request.inputs[0].payload.device.proxyDevice;

    // Query local proxy device for additional visible ids
    // ...
    const reachableDevices = [
      // Each verificationId must match one of the otherDeviceIds
      // in the SYNC response
      { verificationId: "local-device-id-1" },
      { verificationId: "local-device-id-2" },
    ];

    // Return a response
    const response: IntentFlow.ReachableDevicesResponse = {
      intent: Intents.REACHABLE_DEVICES,
      requestId: request.requestId,
      payload: {
        devices: reachableDevices,
      },
    };
    return response;
  };

Callable