Skip to content

Commit

Permalink
looking for house in sentences in brain
Browse files Browse the repository at this point in the history
  • Loading branch information
Pierre-Gilles committed May 23, 2017
1 parent 2ee1b4a commit 2cd7045
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 1 deletion.
38 changes: 38 additions & 0 deletions api/core/brain/parser/parser.house.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@

module.exports = function(originalText){
return gladys.house.getAll()
.then(function(houses){

var result = [];
var replaceRegex = '';

// foreach house, we verify if the house is present in the sentence
houses.forEach(function(house){
if(present(originalText, house.name)){
result.push(house);
if(replaceRegex.length > 0) replaceRegex += '|';
replaceRegex += house.name;
}
});

var text = originalText;

if(replaceRegex.length > 0) {
text = originalText.replace(new RegExp(replaceRegex, 'g'), '%HOUSE%');
}

return {
text,
houses: result
};
});
};



/**
* Return true if the houseName is present in the sentence
*/
function present(text, type){
return (text.toLowerCase().indexOf(type.toLowerCase()) > -1);
}
10 changes: 9 additions & 1 deletion api/core/brain/parser/parser.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
var Promise = require('bluebird');
var parseDeviceType = require('./parser.devicetype.js');
var parseRoom = require('./parser.room.js');
var parseHouse = require('./parser.house.js');
var parseTime = require('./parser.time.js');

module.exports.parse = function parse(text) {

var deviceTypes = [];
var rooms = [];
var houses = [];
var times = [];
var replacedText = '';

Expand All @@ -26,8 +28,14 @@ module.exports.parse = function parse(text) {
.then((result) => {

times = result.times;

return parseHouse(result.text);
})
.then((result) => {

houses = result.houses;
replacedText = result.text;

return Promise.resolve({deviceTypes, rooms, times, replacedText});
return Promise.resolve({deviceTypes, rooms, houses, times, replacedText});
});
};

0 comments on commit 2cd7045

Please sign in to comment.