0

我正在更新我的问题。我需要从列表中订阅多个项目。我在互联网上搜索相同但没有运气,也没有通过使用带有 botframework nodejs SDK 的选择提示来选择多个选项的选项。

我想如果我们使用prompt.text() 它允许接受响应实体作为字符串可能会帮助我实现我的目标,并且还需要optionList 的按钮外观

这是我的代码

bot.dialog('/Subscriptions List', [
    function (session, args) {
        getSubscriptionsdemo(session);
    },
    function (session, results) {
        session.send(results.response);
        if(results.response.entity != '') { 
            session.send("You entered '%s'", results.response);
            session.beginDialog('/Confrim Subscribe');
        }
    }
]);

function getSubscriptionsdemo(session) {
    var body = [{"Name":"Computers"},{"Name":"Technology"},{"Name":"photography"},{"Name":"Cars"},{"Name":"Sports"}];
    var jsondata = (body);
    //var jsondata = parseJson(subscribeData);
    var subscribeArray = '';
    var indexVal =1;
    for (var i = 0; i < jsondata.length; i++) {
        if (jsondata[i].Name != '' && jsondata[i].Name != undefined && jsondata[i].Name != null) {
            subscribeArray += indexVal+'. '+jsondata[i].Name+'\n';
        }
        indexVal++;
    }
    if(jsondata.length > 0) { 
        builder.Prompts.text(session, "Select your subscriptions [ Multiple selectation seperate by comma (,) ]?\n\n"+subscribeArray);
    } else { 
        session.send('There is no subscriptions have been associated. You can use the back or top command.');
        session.beginDialog('/menu');
    }
}

或者

我们可以将 listStyle 应用于 bot 框架中的 Prompts.text() 吗?

builder.Prompts.text(session, 'Cat|dog|mouse',{listStyle: builder.ListStyle.list});

如果是,请指导我。

谢谢

4

0 回答 0