Google Cloud Natural Language#
Google Cloud Natural Language uses machine learning to reveal the structure and meaning of text. You can extract information about people, places, and events, and better understand social media sentiment and customer conversations.
Credentials
You can find authentication information for this node here.
Basic Operations#
- Document
- Analyze Sentiment
Example Usage#
This workflow allows you to analyze the sentiment of feedback received via a Typeform submission and send a message on Mattermost if that feedback is negative. You can also find the workflow on n8n.io. This example usage workflow uses the following nodes. - Typeform Trigger - Google Cloud Natural Language - IF - Mattermost - No Operation, do nothing
The final workflow should look like the following image.
1. Typeform Trigger node#
This node will trigger the workflow when a feedback form is submitted. Make sure to create a feedback form for your event.
- Select 'Access Token' from the Authentication dropdown list.
- Enter the credentials for the Typeform Trigger node. You can find out how to do that here.
- Select the event feedback form from the Form dropdown list.
- Click on Execute Node to run the node.
In the screenshot below, you will notice that the node triggers the workflow when feedback is submitted. We will pass this feedback to the next nodes in the workflow.
2. Google Cloud Natural Language node (analyzeSentiment: document)#
This node will analyze the sentiment of the feedback that we got from the previous node. We will pass the analysis score to the next node in the workflow.
- First of all, you'll have to enter credentials for the Google Cloud Natural Language node. You can find out how to enter credentials for this node here.
-
Click on the gears icon next to the Content field and click on Add Expression.
-
Select the following in the Variable Selector section: Nodes > Typeform Trigger > Output Data > JSON > What did you think about the event? You can also add the following expression:
{{$node["Typeform Trigger"].json["What did you think about the event?"]}}
. If you want to analyze the sentiment for a different question, select that question instead. - Click on Execute Node to run the node.
In the screenshot below, you will notice that the node analyzes the sentiment of the feedback and gives a score based on that.
3. IF node#
This node will check if the score we got from the previous node is smaller than 0
. If the score is smaller than 0
, it will return true otherwise false.
- Click on Add Condition and select 'Number'.
- Click on the gears icon next to the Value 1 field and click on Add Expression.
- Select the following in the Variable Selector section: Nodes > Google Cloud Natural Language > Output Data > JSON > documentSentiment > score. You can also add the following expression:
{{$node["Google Cloud Natural Language"].json["documentSentiment"]["score"]}}
. - Select 'Smaller' from the Operation dropdown list.
- Click on Execute Node to run the node.
In the screenshot below, you will notice that the node checks if the score that we received from the previous node is smaller than 0
.
4. Mattermost node (post: message)#
This node will send the feedback and the analysis score to the Feedback
channel in Mattermost. If you have a different channel, use that instead.
- Create a Mattermost node connected to the 'true' output of the IF node.
- You'll have to enter credentials for the Mattermost node. You can find out how to enter credentials for this node here.
- Select a channel from the Channel ID dropdown list.
-
Click on the gears icon next to the Message field click on Add Expression.
-
Enter the following message in the Expression field:
You got a new feedback with a score of {{$node["Google Cloud Natural Language"].json["documentSentiment"]["score"]}}. Here is what it says:{{$node["Typeform Trigger"].json["What did you think about the event?"]}}
. - Click on Execute Node to run the workflow.
In the screenshot below, you will notice that the node sends the feedback and the analysis score to the Feedback
channel in Mattermost.
5. NoOp node#
Adding this node here is optional, as the absence of this node won't make a difference to the functioning of the workflow.
- Create a NoOp node connected to the 'false' output of the IF node.
- Click on Execute Node to run the node.
Activate workflow for production
This example workflow uses the Typeform Trigger node. You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered when a new form is submitted.