summaryrefslogtreecommitdiffstats
path: root/dgbuilder/core_nodes/analysis
diff options
context:
space:
mode:
Diffstat (limited to 'dgbuilder/core_nodes/analysis')
-rw-r--r--dgbuilder/core_nodes/analysis/72-sentiment.html49
-rw-r--r--dgbuilder/core_nodes/analysis/72-sentiment.js33
2 files changed, 82 insertions, 0 deletions
diff --git a/dgbuilder/core_nodes/analysis/72-sentiment.html b/dgbuilder/core_nodes/analysis/72-sentiment.html
new file mode 100644
index 00000000..c33b873b
--- /dev/null
+++ b/dgbuilder/core_nodes/analysis/72-sentiment.html
@@ -0,0 +1,49 @@
+<!--
+ Copyright 2013 IBM Corp.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<script type="text/x-red" data-template-name="sentiment">
+ <div class="form-row">
+ <label for="node-input-name"><i class="fa fa-tag"></i> Name</label>
+ <input type="text" id="node-input-name" placeholder="Name">
+ </div>
+</script>
+
+<script type="text/x-red" data-help-name="sentiment">
+ <p>Analyses the <b>msg.payload</b> and adds a <b>msg.sentiment</b> object that contains the resulting AFINN-111 sentiment score as <b>msg.sentiment.score</b>.</p>
+ <p>A score greater than zero is positive and less than zero is negative.</p>
+ <p>The score typically ranges from -5 to +5, but can go higher and lower.</p>
+ <p>An object of word score overrides can be supplied as <b>msg.overrides</b>.</p>
+ <p>See <a href="https://github.com/thisandagain/sentiment/blob/master/README.md" target="_new">the Sentiment docs here</a>.</p>
+</script>
+
+<script type="text/javascript">
+ RED.nodes.registerType('sentiment',{
+ category: 'analysis-function',
+ color:"#E6E0F8",
+ defaults: {
+ name: {value:""},
+ },
+ inputs:1,
+ outputs:1,
+ icon: "arrow-in.png",
+ label: function() {
+ return this.name||"sentiment";
+ },
+ labelStyle: function() {
+ return this.name?"node_label_italic":"";
+ }
+ });
+</script>
diff --git a/dgbuilder/core_nodes/analysis/72-sentiment.js b/dgbuilder/core_nodes/analysis/72-sentiment.js
new file mode 100644
index 00000000..747e079c
--- /dev/null
+++ b/dgbuilder/core_nodes/analysis/72-sentiment.js
@@ -0,0 +1,33 @@
+/**
+ * Copyright 2013 IBM Corp.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ **/
+
+module.exports = function(RED) {
+ "use strict";
+ var sentiment = require('sentiment');
+
+ function SentimentNode(n) {
+ RED.nodes.createNode(this,n);
+ var node = this;
+
+ this.on("input", function(msg) {
+ sentiment(msg.payload, msg.overrides || null, function (err, result) {
+ msg.sentiment = result;
+ node.send(msg);
+ });
+ });
+ }
+ RED.nodes.registerType("sentiment",SentimentNode);
+}