2

I want to execute the TestNetworkSpeed command which is a part of NetworkControl device trait. Example in the documentation is the following:

Examples
What's the Wi-Fi speed?

For action.devices.SYNC intent we return the following mocked output:

{
      agentUserId: 'userId',
      devices: [
        {
          id: 'deviceId',
          type: 'action.devices.types.NETWORK',
          willReportState: true,
          notificationSupportedByAgent: true,
          name: {
            name: 'ssid',
            defaultNames: ['ssid'],
            nicknames: ['ssid'],
          },
          traits: ['action.devices.traits.NetworkControl'],
          attributes: {
            supportsNetworkDownloadSpeedTest: true,
            supportsNetworkUploadSpeedTest: true,
            supportsEnablingNetworkProfile: true,
            supportsDisablingNetworkProfile: true,
            networkProfiles: ['kids'],
          },
        },
      ],
 }

When I execute the utterance from above example Google Assistant does not make a request to my server. It returns generic google results output.

When I execute utterance to turn off / on the internet for profile it works correctly.

We have enabled HomeGraph.

Here are additional screenshots to showcase what is happening.

When I ask GA what is my ssid it returns the correct ssid. enter image description here

When I ask GA to turn off the internet for device it works correctly. enter image description here

When I ask GA what is wifi speed of ssid it returns the SSID name and we receive query command on our api endpoint. enter image description here

I changed the name of ssid to "home wifi" and reran the command. I receive the following default output (it does not hit our endpoint). enter image description here

When I execute just what's the wifi speed without ssid name I also receive default output. enter image description here

jm18457
  • 443
  • 1
  • 7
  • 19
  • Can you share your example `EXECUTE` response payload for the `TestNetworkSpeed` command? Are you implementing this with a follow-up response or directly to an execution response? – ToniCorinne Oct 27 '21 at 18:18
  • @ToniCorinne Google Assistant does not even make a request to our API when we say "What's the Wi-Fi speed?". It just returns a default response, as if we didn't have an action which supports TestNetworkSpeed so there is no EXECUTE request. – jm18457 Oct 27 '21 at 19:08
  • Does your project show any [logs/errors](https://developers.google.com/assistant/smarthome/develop/monitoring-logging#execution_payload) when that request is made? Can you trigger the EXECUTE request if you explicitly identify the device (i.e., "What's the Wifi speed of ssid?" ) – ToniCorinne Nov 01 '21 at 22:39
  • @ToniCorinne I posted additional pictures to show what is happening. No, our project does not show any errors (if you mean our backend). It does not even reach our backend. Does the google action project have any logs to show why it does not even reach our endpoint? – jm18457 Nov 09 '21 at 11:43
  • @ToniCorinne can I send you my actions on google id and you verify why it does not work? – jm18457 Nov 11 '21 at 10:47
  • Open a bug on the [public tracker](https://issuetracker.google.com/issues/new?component=655104&template=1284148) and please include your SYNC and EXECUTE responses in there. I was able to duplicate the issue you're seeing, but it will be easier to follow up on the tracker. – ToniCorinne Nov 19 '21 at 23:03

1 Answers1

0

TestNetworkSpeed currently requires features that are not available on Google Home App / Assistant on mobile surfaces, and only supported on a Google Home device. The team is working to enable more surfaces across all available traits.

You can issue “What’s my Wi-Fi Speed” voice utterance on a Google Home device and see if that’s working instead. If you are having issues, you can open up a request on the Public Issue Tracker.

Anish Yadav
  • 141
  • 4