private setupCognitoCredentials()

in src/IoTClient.tsx [37:69]


  private setupCognitoCredentials() {
    AWS.config.region = AWS_CONFIGS.region;
    AWS.config.credentials = new AWS.CognitoIdentityCredentials({
      IdentityPoolId: AWS_CONFIGS.identityPoolId,
    });

    const cognitoIdentity = new AWS.CognitoIdentity();
    const credentials = AWS.config.credentials as AWS.CognitoIdentityCredentials;
    const client = this.iotClient;
    credentials.get(function(err) {
        if (!err) {
          const params = {
            IdentityId: credentials.identityId,
          };
          cognitoIdentity.getCredentialsForIdentity(params, function(error, data) {
            if (!error) {
              // Update AWS Credentials, iotClient will use these during next reconnect
              client.updateWebSocketCredentials(
                data.Credentials.AccessKeyId,
                data.Credentials.SecretKey,
                data.Credentials.SessionToken,
                data.Credentials.Expiration
              );
              console.log('No error retrieving credentials');
            } else {
              console.log('Error retrieving credentials: ' + error);
            }
          });
        } else {
          console.error('Error retrieving Cognito Identity: ' + err);
        }
    });
  }