Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Adaptive Cards can be used to build and customize a variety of content. One of which is displaying Login in a Card. Read more about Adaptive Cards here.Adaptive Cards Guide

In this document, we will give you a sample code for a login card.

...

Add the below code in the function node named Login Actions.

V3 Bot code:

Code Block
var _ = global.get('lodash');

var index = _.findIndex(msg.payload.orbitarawMultiagent[1].directive, {
    type: 'adaptivecard'
});
let var adaptiveCarddirective = _.findget(msg., 'payload.orbita.directive', { type: 'adaptivecard'}null);
const adaptiveCard.template.actionsversion = [
      _.get(msg, 'payload.originalDetectIntentRequest.payload.settings.version', 2);
if (version === 3) {
    directive {
           = _.get(msg, 'payload.rawMultiagent[1].directive', null);
}
var adaptiveCard = directive[index];
adaptiveCard.template.actions = [{
    "type": "Action.Submit",
    "title": "Login",
          "title"style": "Loginpositive",

    "data": {
         "styleserviceCall": "positive",{
            "url": "<Login directive tab URL goes  here>",
            "datatype": {'POST',
            "orbitaAction": 'login',
    "serviceCall": {       "loginSuccessUtterence": "success",
            "urlsuccessCallback": "<Login directive tab URL goes here>",function()​​{ /*Custom business logic*/ }"
        }
    }
}]

msg.payload.orbita.directive[index] = adaptiveCard;
 "type": 'POST',
    return msg;

V2 Bot code:

Code Block
var _ = global.get('lodash');
var index = _.findIndex(msg.payload.orbita.directive, {
    type: 'adaptivecard'
});
var adaptiveCard = _.find(msg.payload.orbita.directive, {
    

...

type: '

...

adaptivecard'

...


});

adaptiveCard.template.actions = [{
    "type": "Action.Submit",
    "title": "Login",
    "

...

style": "

...

positive",

    "data": {
        "serviceCall": {
            "

...

url": "

...

<Login directive tab URL goes here>",
            "type": 'POST',
      

...

      "orbitaAction": 'login',
         

...

   "loginSuccessUtterence": "success",
          

...

  "successCallback": "function()​​{ /*Custom business logic*/ }"
 

...

       }
    }
}]
msg.payload.orbita.directive[index] = adaptiveCard;

...


return msg;

Create an intent with “success” as one of its utterances. This intent will get triggered when the login is successful.

...