Skip to content

Commit 3f701aa

Browse files
committed
Add Message invokation
1 parent 3219c04 commit 3f701aa

1 file changed

Lines changed: 28 additions & 18 deletions

File tree

services/assistant/v2.js

Lines changed: 28 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,10 @@ module.exports = function(RED) {
9898
if (!config.multisession) {
9999
let id = node.context().flow.get('session_id');
100100
if (id) {
101-
params.session_id = id;
101+
session_id = id;
102102
}
103103
} else if (msg.params && msg.params.session_id) {
104-
params.session_id = msg.params.session_id;
104+
session_id = msg.params.session_id;
105105
}
106106

107107
return session_id;
@@ -129,14 +129,15 @@ module.exports = function(RED) {
129129
}
130130

131131
function setAdditionalContext(msg, params) {
132-
// needs to go in context.skills['main skill']['user_defined']
133-
134132
if (msg.additional_context) {
135-
params.context = params.context ? params.context : {};
133+
params.context = params.context ?
134+
params.context :
135+
{'skills' : {'main skill' : {'user_defined': {}}}};
136136

137137
for (prop in msg.additional_context) {
138138
if (msg.additional_context.hasOwnProperty(prop)) {
139-
params.context[prop] = msg.additional_context[prop];
139+
params.context.skills['main skill']['user_defined'][prop]
140+
= msg.additional_context[prop];
140141
}
141142
}
142143
}
@@ -183,16 +184,16 @@ module.exports = function(RED) {
183184
};
184185

185186
let context = setContext(msg, params.session_id);
187+
186188
if (context) {
187189
params.context = context;
188190
}
191+
189192
setAdditionalContext(msg, params);
190193
setAssistantID(msg, params);
191194
setInputOptions(msg, params);
192195
setParamInputs(msg, params);
193196

194-
//verifyOptionalInputs(node, msg, config, params);
195-
196197
return Promise.resolve(params);
197198
}
198199

@@ -273,11 +274,8 @@ module.exports = function(RED) {
273274
assistant_id: params.assistant_id
274275
}, function(err, response) {
275276
if (err) {
276-
console.log('Error Detected');
277277
reject(err);
278278
} else {
279-
console.log('Data returned')
280-
console.log(response);
281279
if (response && response.session_id) {
282280
params.session_id = response.session_id;
283281
if (!config.multisession) {
@@ -293,6 +291,19 @@ module.exports = function(RED) {
293291
});
294292
}
295293

294+
function messageTurn(params) {
295+
return new Promise(function resolver(resolve, reject){
296+
node.service.message(params, function(err, body) {
297+
if (err) {
298+
reject(err);
299+
} else {
300+
resolve(body);
301+
}
302+
});
303+
});
304+
}
305+
306+
296307
this.on('input', function(msg) {
297308
var creds = setCredentials(msg),
298309
params = {};
@@ -311,22 +322,21 @@ module.exports = function(RED) {
311322
})
312323
.then(function(p){
313324
params = p;
314-
console.log('params have been built');
315-
console.log(params);
316325
return setServiceSettings(msg, creds);
317-
318326
})
319327
.then(function(settings){
320-
console.log('service settings have been built');
321-
console.log(settings);
322328
return buildService(settings);
323329
})
324330
.then(function(){
325-
console.log('service is ready');
326331
return checkSession(params);
327332
})
328333
.then(function(){
329-
msg.payload = 'Not complete yet';
334+
node.status({ fill: 'blue', shape: 'dot', text: 'Calling Assistant service ...'});
335+
return messageTurn(params);
336+
})
337+
.then(function(body){
338+
body.session_id = params.session_id;
339+
msg.payload = body;
330340
return Promise.resolve();
331341
})
332342
.then(function(){

0 commit comments

Comments
 (0)