OpenWhisk вызывает действие текста в речь watson из действия

Я пытаюсь вызвать действие, включенное в системный пакет Watson (преобразование текста в речь), из действия OpenWhisk.

Я связал службу и настроил учетные данные, поэтому из интерфейса командной строки я вижу

wsk list
entities in namespace: xxxxxx
packages
/xxxxxx/myWatson                           private binding

Вот мое действие OpenWhisk:

function main(param) {
   //code here for my action. At the end, I invoke the text to speech        

   if (...) {
      textToSpeech(param.text);
    }
    else {
        return whisk.error(error);
    }
    return whisk.async();
}

function textToSpeech(text){
    whisk.invoke({
      name:'myWatson/textToSpeech',
      parameters:{
        payload: text,
        voice: 'en-US_MichaelVoice',
        accept: 'audio/wav',
        encoding: 'base64'
      },
      blocking: true,
      next: function(error, activation){
        if(error){
            return whisk.error(error);
        }
        else{
            return whisk.done({msg:'success'});
        }
      }
   });
}

И я получаю следующую ошибку

"response": {
    "result": {
        "error": "The requested resource does not exist. (undefined)"
    },
    "status": "application error",
    "success": false
}

Можете ли вы помочь понять, что я делаю неправильно?


person edevregille    schedule 30.06.2016    source источник


Ответы (1)


Имя действия должно быть полностью определено, чтобы включать пространство имен. Судя по выходным данным CLI, похоже, что ваш пакет /xxxxxx/myWatson, поэтому ссылка на действие в whisk.invoke должна быть /xxxxxx/myWatson/textToSpeech.

person user6062970    schedule 30.06.2016