User authentication with microsoft bot framework and botium-cli

I’m testing several chatBots with microsoft directline, using botium-cli. and we have a universal bot that communicates with subject-specific bots. my problem is: evaluating a multi-bot chat solution, passing a user’s authentication token as a parameter obtained by the first bot (which would be a universal bot) and pass this user authentication information to the other bots which will be called during the user dialog. is there any solution in botium to start testing with authentication?

thank you so much

some response, guys???

Currently no solution for this. Interesting case.

How is this user authentication token retrieved ? And how is it passed to the subject-specific bot ?

Hello Florian. Thanks for the answer,

But today we changed the scope of bots as microsoft did not support a universal bot architecture

We will only have one bot

However, I would like to know if botium directline offers some kind of authentication for the user? when starting the tests, a user must be identified. It’s possible?

Thanks

This depends very much on the implementation details. It is possible to attach some channel data for example, if this is how authentication works with your implementation.

  "DIRECTLINE3_ACTIVITY_TEMPLATE": {
    "channelData": {
      "my-special-channel-data": "..."
    }
  },

Hello Florian, thanks for answering.

But I have some doubts:

Where do I send this information? “DIRECTLINE3_ACTIVITY_TEMPLATE”: {
“channelDate”: {
“my-channel-special-data”: “…”
}
},

in a Capabilities of my packge.json?

and in the field “my-channel-special-data”: “…” what information should be sent?

Attached is an image of how we build authentication.

Attached is an image of how we build authentication in our bot.

In botium-directline, it only displays packge.json, botium.json and index.js, if you can also tell me where I find the development files, to understand how the code works and where execution starts when I run "botium-cli execute " , and implement authentication,

thank you so much, Florian.

Capabilities are to be added to your botium.json file.

The Botium Directline Connector allows very fine-grained control over the event payload (using the DIRECTLINE3_ACTIVITY_TEMPLATE capability mentioned above), and it is even possible to send a “welcome activity” upfront, see here - usually used to simulate a user joining a webchat.

"DIRECTLINE3_WELCOME_ACTIVITY": {
  "type": "event",
  "name": "webchat/join",
  "value": {
    "language": "de-DE"
  },
  "channelData": {
    "kb": "demo"
  }
},

The connector code is indeed in the index.js

1 Like

Thanks for the reply, Florian.

Can you help me with another problem? the Bot many times response with wildcard ** and is showing this error:

Error: Maximum number of 10 wildcards supported.

remembering that I use microsoft directline.

Thank you

For performance reasons, there is an upper limit of 10 wildcard characters in Botium Core.

You should switch to another matching mode in your botium.json