Skip to content

Commit

Permalink
CodeGen from PR 13209 in Azure/azure-rest-api-specs
Browse files Browse the repository at this point in the history
Merge d2982a8962885e8506b5ebc0b33cb8caf1dc7551 into 998796ec2f30462a99d9f918afe1d16ed64ecf65
  • Loading branch information
SDKAuto committed Mar 1, 2021
1 parent 3738fa3 commit 8886337
Show file tree
Hide file tree
Showing 8 changed files with 76 additions and 133 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The MIT License (MIT)

Copyright (c) 2019 Microsoft
Copyright (c) 2021 Microsoft

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
160 changes: 56 additions & 104 deletions sdk/cognitiveservices/cognitiveservices-textanalytics/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,139 +15,91 @@ npm install @azure/cognitiveservices-textanalytics

### How to use

#### nodejs - Authentication, client creation and detectLanguage as an example written in TypeScript.
#### nodejs - client creation and detectLanguage as an example written in TypeScript.

##### Install @azure/ms-rest-azure-js
##### Install @azure/ms-rest-nodeauth

- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`.
```bash
npm install @azure/ms-rest-azure-js
npm install @azure/ms-rest-nodeauth@"^3.0.0"
```

##### Sample code
The following sample detects the langauge in the provided text. In addition, it provides data such as Characters count, transaction count, etc. To know more, refer to the [Azure Documentation on Text Analytics](https://docs.microsoft.com/azure/cognitive-services/text-analytics/overview)

```javascript
While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package
```typescript
const msRestNodeAuth = require("@azure/ms-rest-nodeauth");
const { TextAnalyticsClient } = require("@azure/cognitiveservices-textanalytics");
const { CognitiveServicesCredentials } = require("@azure/ms-rest-azure-js");

async function main() {
const textAnalyticsKey =
process.env["textAnalyticsKey"] || "<textAnalyticsKey>";
const textAnalyticsEndPoint =
process.env["textAnalyticsEndPoint"] || "<textAnalyticsEndPoint>";
const cognitiveServiceCredentials = new CognitiveServicesCredentials(
textAnalyticsKey
);
const client = new TextAnalyticsClient(
cognitiveServiceCredentials,
textAnalyticsEndPoint
);
const options = {
showStats: true,
languageBatchInput: {
documents: [
{
id: "1",
text: "Sample Text"
},
{
id: "2",
text: "Texto de ejemplo"
}
]
}
const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];

msRestNodeAuth.interactiveLogin().then((creds) => {
const client = new TextAnalyticsClient(creds, subscriptionId);
const showStats = true;
const languageBatchInput = {
documents: [{
countryHint: "testcountryHint",
id: "testid",
text: "testtext"
}]
};
client
.detectLanguage(options)
.then(result => {
console.log("The result is:");
result.documents.forEach(document => {
console.log(`Id: ${document.id}`);
console.log("Detected Languages:");
document.detectedLanguages.forEach(dl => {
console.log(dl.name);
});
console.log(
`Characters Count: ${document.statistics.charactersCount}`
);
console.log(
`Transactions Count: ${document.statistics.transactionsCount}`
);
});
})
.catch(err => {
console.log("An error occurred:");
console.error(err);
});
}

main();

client.detectLanguage(showStats, languageBatchInput).then((result) => {
console.log("The result is:");
console.log(result);
});
}).catch((err) => {
console.error(err);
});
```

#### browser - Authentication, client creation and detectLanguage as an example written in JavaScript.

##### Install @azure/ms-rest-browserauth

```bash
npm install @azure/ms-rest-browserauth
```

##### Sample code

See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser.

- index.html
```html
<!DOCTYPE html>
<html lang="en">
<head>
<title>@azure/cognitiveservices-textanalytics sample</title>
<script src="node_modules/@azure/ms-rest-js/dist/msRest.browser.js"></script>
<script src="node_modules/@azure/ms-rest-browserauth/dist/msAuth.js"></script>
<script src="node_modules/@azure/cognitiveservices-textanalytics/dist/cognitiveservices-textanalytics.js"></script>
<script type="text/javascript">
const textAnalyticsKey = "<YOUR_TEXT_ANALYTICS_KEY>";
const textAnalyticsEndPoint = "<YOUR_TEXT_ANALYTICS_ENDPOINT>";
const cognitiveServiceCredentials = new msRest.ApiKeyCredentials({
inHeader: {
"Ocp-Apim-Subscription-Key": textAnalyticsKey
}
const subscriptionId = "<Subscription_Id>";
const authManager = new msAuth.AuthManager({
clientId: "<client id for your Azure AD app>",
tenant: "<optional tenant for your organization>"
});
const client = new Azure.CognitiveservicesTextanalytics.TextAnalyticsClient(
cognitiveServiceCredentials,
textAnalyticsEndPoint
);
const options = {
showStats: true,
languageBatchInput: {
documents: [
{
id: "1",
text: "Sample Text"
},
{
id: "2",
text: "Texto de ejemplo"
}
]
authManager.finalizeLogin().then((res) => {
if (!res.isLoggedIn) {
// may cause redirects
authManager.login();
}
};
client
.detectLanguage(options)
.then(result => {
const client = new Azure.CognitiveservicesTextanalytics.TextAnalyticsClient(res.creds, subscriptionId);
const showStats = true;
const languageBatchInput = {
documents: [{
countryHint: "testcountryHint",
id: "testid",
text: "testtext"
}]
};
client.detectLanguage(showStats, languageBatchInput).then((result) => {
console.log("The result is:");
result.documents.forEach(document => {
console.log(`Id: ${document.id}`);
console.log("Detected Languages:");
document.detectedLanguages.forEach(dl => {
console.log(dl.name);
});
console.log(
`Characters Count: ${document.statistics.charactersCount}`
);
console.log(
`Transactions Count: ${document.statistics.transactionsCount}`
);
});
})
.catch(err => {
console.log(result);
}).catch((err) => {
console.log("An error occurred:");
console.error(err);
});
});
</script>
</head>
<body></body>
Expand All @@ -158,4 +110,4 @@ main();

- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js)

![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcognitiveservices%2Fcognitiveservices-textanalytics%2FREADME.png)
![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/cognitiveservices/cognitiveservices-textanalytics/README.png)
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ const config = {
"@azure/ms-rest-azure-js": "msRestAzure"
},
banner: `/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
Expand Down Expand Up @@ -499,12 +499,7 @@ export type KeyPhrasesResponse = KeyPhraseBatchResult & {
/**
* Contains response data for the sentiment operation.
*/
export type SentimentResponse = {
/**
* The parsed response body.
*/
body: any;

export type SentimentResponse = SentimentBatchResult & {
/**
* The underlying HTTP response.
*/
Expand All @@ -517,6 +512,6 @@ export type SentimentResponse = {
/**
* The response body as parsed JSON or XML
*/
parsedBody: any;
parsedBody: SentimentBatchResult;
};
};
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
Expand Down Expand Up @@ -122,13 +121,13 @@ class TextAnalyticsClient extends TextAnalyticsClientContext {
/**
* @param callback The callback
*/
sentiment(callback: msRest.ServiceCallback<any>): void;
sentiment(callback: msRest.ServiceCallback<Models.SentimentBatchResult>): void;
/**
* @param options The optional parameters
* @param callback The callback
*/
sentiment(options: Models.TextAnalyticsClientSentimentOptionalParams, callback: msRest.ServiceCallback<any>): void;
sentiment(options?: Models.TextAnalyticsClientSentimentOptionalParams | msRest.ServiceCallback<any>, callback?: msRest.ServiceCallback<any>): Promise<Models.SentimentResponse> {
sentiment(options: Models.TextAnalyticsClientSentimentOptionalParams, callback: msRest.ServiceCallback<Models.SentimentBatchResult>): void;
sentiment(options?: Models.TextAnalyticsClientSentimentOptionalParams | msRest.ServiceCallback<Models.SentimentBatchResult>, callback?: msRest.ServiceCallback<Models.SentimentBatchResult>): Promise<Models.SentimentResponse> {
return this.sendOperationRequest(
{
options
Expand Down Expand Up @@ -241,10 +240,9 @@ const sentimentOperationSpec: msRest.OperationSpec = {
200: {
bodyMapper: Mappers.SentimentBatchResult
},
500: {
default: {
bodyMapper: Mappers.ErrorResponse
},
default: {}
}
},
serializer
};
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
Expand Down

0 comments on commit 8886337

Please sign in to comment.