botframework-sdk | Bot Framework provides the most comprehensive experience | Bot library

 by   microsoft JavaScript Version: 4.14.0 License: MIT

kandi X-RAY | botframework-sdk Summary

kandi X-RAY | botframework-sdk Summary

botframework-sdk is a JavaScript library typically used in Automation, Bot, Nodejs, Framework applications. botframework-sdk has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.

Bot Framework provides the most comprehensive experience for building conversation applications. With the Bot Framework SDK, developers can build bots that converse free-form or with guided interactions including using simple text or rich cards that contain text, images, and action buttons. Developers can model and build sophisticated conversation using their favorite programming languages including C#, JS, Python and Java or using Bot Framework Composer, an open-source, visual authoring canvas for developers and multi-disciplinary teams to design and build conversational experiences with Language Understanding, QnA Maker and sophisticated composition of bot replies (Language Generation). Checkout the Bot Framework ecosystem section to learn more about other tooling and services related to the Bot Framework SDK.

            kandi-support Support

              botframework-sdk has a medium active ecosystem.
              It has 7102 star(s) with 2441 fork(s). There are 449 watchers for this library.
              It had no major release in the last 12 months.
              There are 154 open issues and 5576 have been closed. On average issues are closed in 13 days. There are 13 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of botframework-sdk is 4.14.0

            kandi-Quality Quality

              botframework-sdk has 0 bugs and 0 code smells.

            kandi-Security Security

              botframework-sdk has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              botframework-sdk code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              botframework-sdk is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              botframework-sdk releases are available to install and integrate.
              botframework-sdk saves you 111 person hours of effort in developing the same functionality from scratch.
              It has 657 lines of code, 22 functions and 186 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed botframework-sdk and discovered the below as its top functions. This is intended to give you an instant insight into botframework-sdk implemented functionality, and help decide if they suit your requirements.
            • Main entry point .
            • Resolve a static package version to npm
            • Synchronizes the resulting NPM files from the sourcerc folder to the source .
            • Executes a command
            • Install and install a package .
            • Get the npm path
            • Check if the script is installed .
            • Parse the name of the package specifier
            • Get the rush version
            • Removes the package to the install folder .
            Get all kandi verified functions for this library.

            botframework-sdk Key Features

            No Key Features are available at this moment for botframework-sdk.

            botframework-sdk Examples and Code Snippets

            No Code Snippets are available at this moment for botframework-sdk.

            Community Discussions


            The embeded Hyperlinks & Enlarge Image are not opening in Chrome Browser through MS-Teams Bot
            Asked 2022-Feb-16 at 14:41

            The requirement is printing the FAQ ( QnA Maker result consider as an attachment in Adaptive Card Body ) contents in MS Team Bot ( HR Bot ). The core technology that we are using is C# with ASP.NET Core, Bot Framework SDK.

            FAQ Bot Example:

            • User is asking payroll related details in MS Team Bot.
            • The response contains payroll document details ( Embedded as URL with bold or italic ).
            • All responses return as an attachment ( Adding this response in attachment in adaptivae card body and after that posting using send activity ).
            • AdaptiveCard version is 1.2

            It's a FAQ bot and there are no code changes happening yet for the last two weeks. All these issues were encountered after the chrome latest updates ( Chrome updates).

            We have tried the following scenario for the embedded hyperlink issue.

            1. The Following answer hyperlink is opening on the MS-Teams app

            Markdown Syntax in the QnA Maker

            1. The Following answer is not opening on the MS-Teams app( embedded hyperlink is changed to Bold/Italic)

            Answer Markdown Syntax in the QnA Maker


            • Opening MS teams bot in a Firefox Browser, then all scenarios are working.
            • Opening MS teams Bot in a Chrome Browser, then the second point is not working as I mentioned above
            • The detailed discussion on the same issue posted on github - expecting a quick fix because of customer need.

            Enlarge Image Issue:

            We are facing a similar issue mentioned in github.



            Answered 2022-Feb-16 at 14:41

            Adding answer from comment section for visibility:

            We checked the embedded hyperlink issue in both Microsoft Teams Desktop client(Version and web client. The issue is fixed now.



            Teams Bot - get credentials from Key Vault
            Asked 2022-Jan-04 at 12:46

            I have searched a bit but didn't found something which is helping me. I created a bot for teams and like described in all examples I am using the appsettings.json to store the ID and the password for the bot (MicrosoftAppId and MicrosoftAppPassword). These are both handled by the framework somehow. But now I want to use an Azure Key Vault to store the secret instead of having the appsettings file.

            So I found some examples explaining how to do this in BotFramework V3 with BotAuthentication Attribute and even something for BotFramework V4 here (working link for the linked example here). But even that example is old and does not exist anymore like that.

            How am I supposed to do this for a teams bot and c# dotnet 3.1?



            Answered 2022-Jan-04 at 12:46

            You can use the following method to store the secret value



            Botframework not working Action Call in HeroCard
            Asked 2021-May-05 at 21:19

            I want to have a Call button in response Chat over Botframework teams

            The doc refer to

            An action of type call represents a telephone number that may be called.



            Answered 2021-May-05 at 21:19

            Much of the Bot Framework schema is channel-specific, especially when it comes to cards. If you'd like to know what card actions Teams specifically supports, you should refer to the Teams docs:

            Since Teams does not support call actions, you need to use open-URL instead. Using a tel URL won't work, but you can read about that problem and a workaround here: how to make callto: works in adaptive card



            How to publish and deploy multi-channel bots without azure?
            Asked 2021-Apr-27 at 12:15

            once I read about Microsoft bot framework, I realized that it is a platform to code once and run everywhere... I mean, you code once and then you have bots for Telegram, Facebook, slack, skype and so on. Is my understanding about Microsoft bot framework correct? Or I'm expecting too much of it?

            Then I downloaded Bot Composer for my windows laptop and created a bot. It works on emulator.

            My problem/Question is how to publish and deploy my bot without azure?

            I have a VPS on Hetzner, and I want to host my Bots in that vps. The bot composer has only options working with azure, I don't have Microsoft app ID and Microsoft app password. What should I do ?

            In this chart, It can be seen that some social platforms work with azure, and some others work with sdk, for example Telegram -->> SDK , What does it mean ?!?!?

            Does it mean that you have to pay for Azure to publish your bot for Telegram ?

            In this link, I have to register a bot, there is a button there which says : Create Microsoft App ID and password.

            I clicked on it and created one, there is Microsoft App ID in it, but there is no password.

            I know I wrote too much :)) but I got very confused because I think the documentation is very unclear and the boundary between paid services and unpaid services is not clear...

            Can anyone tell an instruction of how to deploy an simple echo bot on a VPS for multiple platforms without azure ?

            Thank you.



            Answered 2021-Apr-27 at 12:15

            That's a bunch of questions 😅, will try to synthetize.

            1. Yes it's a code once, use from several channels... but not all channels have the same capabilities.

            2. A bot application is "just" a state machine with a REST API endpoint to receive messages and send the replies back (seen from 30,000 ft 😉)

            3. You can host your app anywhere, it just has to have a valid public https address that you can configure in the Bot Channel Registration in Azure.

            4. Azure Bot Service is a channel aggregator, that handles all the connection details for the channels listed as "Azure" in the chart you mentioned. Those channels are handled "automagically" by the bot framework.

              You might want to read a blog post I wrote some time ago, it's a bit dated but still conceptually valid:
              How does a Bot Builder v4 bot work?

            5. For those channels not in Azure, you have to handle each channel with a provider-supplied SDK in your web app. Of course, you could also implement authorization and all the details by yourself, after all it's just an API endpoint.

            6. You don't really have to pay Azure for using the bot service channels, if you use the standard channels, and premium channels are low cost.

            7. As for deploying outside Azure, supposing you'll still use the free or close-to-free Bot Service:

              • Follow section 1-3 in Deploy your bot

              • Deploy the web app wherever you want (even locally using ngrok similar to what I show in another blog post.

              • With all of the above in place, you should be able to test the bot from the channel webchat or even from Telegram, once you enable it, while your app is running in VS 😀



            Connecting two bots with DirectLine javascript
            Asked 2021-Mar-19 at 18:39

            this is my scenario:

            • Bot A (made with BotFramework-sdk for Javascript(Node.js)) who receives audio files, calls to Speech Services REST API and get the text from it.
            • Bot B (made with BotFrameworkComposer) who has the qna functionality.

            I need to set Bot A as a proxy receiving the audio attatchments and asking to Bot B showing the returning answer inside Bot A.

            I've already managed to connect those two bots with directline and my problem comes after the conversation is started: in Bot A i'm using the REST API for send messages and websocket to receive the activities using the streamURL.

            After i create the websocket i call for on message event to get the messages comming from the Bot B but i need to show them using await context.sendActivity(MessageFactory.text...



            Answered 2021-Mar-19 at 18:39

            Please look over the 80.skills-simple-bot-to-bot sample for guidance on how to connect two bots. The sample demonstrates a "root bot" (your Bot A) calling the "skill bot" (your Bot B) and executing a dialog before returning control back to the root bot. The conversation Id is maintained across the root and skill bot by use of the SkillConversationIdFactory.

            Reference the Implement a skill docs for additional information on setting up and consuming a skill.



            Can't get imBack to work on Adaptive Cards that are set up to work with teams
            Asked 2020-Sep-08 at 16:32

            My bot has a menu card which I recently discovered doesn't work with teams. I want to use the imBack method to have the message show up in the chat. On their own, I can accomplish this with the following:



            Answered 2020-Aug-21 at 19:35

            If your card contains no inputs then I suspect you want a hero card and not an Adaptive Card. An imBack in a hero card will automatically work the way you want in both Web Chat and Teams. While Adaptive Cards are meant to adapt to the styles of their hosts, there is no builtin "imBack" feature of Adaptive Cards. String submit actions are a feature of Web Chat, and Bot Framework actions in Adaptive Cards are a feature of Teams. You're trying to get Adaptive Cards to do something that they can't do by themselves, and so you'll need to take your specific channel into consideration if you want to do that.

            From this answer: How to rewrite a Adaptive Card Submit Action for MSTeams also working in Web Chat?

            My blog post explains that if you want to use a string submit action you will need to do it differently in Web Chat and Teams:

            If you want to have the same submit action work the same way in both channels, it will need to be an object submit action. If you want a string submit action to work on both channels then your bot will need to check which channel the activity came from and react accordingly.



            Adaptive dialogs with Bot framework skills sample
            Asked 2020-Jun-16 at 06:00

            Based on this Release Notes it looks like Skills have been updated to work with adaptive dialogs, and both adaptive and traditional dialogs will now accept all types of activities.

            Is there any example code to see how to use Adaptive dialogs in Bf skills for node? I didn't find in samples



            Answered 2020-Jun-11 at 16:33

            You should use the BeginSkill action. There is a document here that shows you how to do this in Composer.



            How do i receive audio attachment sent by user to Bot?
            Asked 2020-May-11 at 22:14

            I have added a step in Waterfall to get attachment from the user. When testing with BotFramework Emulator i am able to send audio file to the bot and echo back the same file again to the User.Below are the waterfall steps and the code



            Answered 2020-May-11 at 22:14

            When you get an error that says "message size too big," it means what it says. When it suggests that you use attachments, it means attachments that link to remote HTTP/HTTPS locations rather than embedding data. You should try uploading the uploading the file or using a service that's geared towards transferring audio like the Direct Line Speech channel.



            Possible way to clear the conversation state at the end of a conversation for Microsoft Teams
            Asked 2020-Apr-29 at 12:18

            I'm creating a bot and every time the conversation end, I'll to clear the conversation state. For That I'm sending an activity with type endOfConversation after the last message.

            At the method OnMessageActivityAsync of my bot I've added this code.



            Answered 2020-Apr-29 at 12:09

            "RichMoe" in the link you've provided states that Teams does not support this operation (2017) and I think the same is still true - I don't think Teams has a concept of the "end" of a conversation, in the way that, for example, a support bot on a website would - like any conversation, Teams will try to keep the entire chat history forever.

            Perhaps you can explain why you need to "end" the conversation, if there's something related I can try help with.



            with azure free trial account, can i deploy a bot to MS teams?
            Asked 2020-Feb-05 at 12:49

            I have developed a bot by modifying the template provided from The bot works perfectly in the Bot Framework Emulator.

            I have tried to deploy it by using my trial account. it looks like it is lack of some accesses, which i am not quite sure.

            my question is, if i plan to deploy this bot into MS teams installed on my computer, can it be fulfilled by using my trial account in Azure? or i need to purchase a paid account?




            Answered 2020-Feb-05 at 12:49

            It's completely possible to run in on Azure, and everything will work 100% fine a free trial account, or of course with a paid account. Be aware that the "web app bot" template will default to a "standard" pricing model in Azure, which will use $70 of your credit, so you should change it to a cheaper price plan immediately, especially if you're just using this for development. There's even a "Free" option (i.e. free forever, even after the Free Trial expires), but then it's limited to how many hours per day the bot will run.

            Another option is to host your bot in an Azure Function ("serverless"), but it's a lot more work as the samples and wizards on the internet mostly use the Azure Web App model, so you'd need to manually convert it over to running that way. Certainly you can get started with the free trial though!

            As another completely possible option, if this is just for development, then you can run the bot on your local machine, using Ngrok, which creates an real, live "https" address for you, that Teams can accept to work with your bot, even though it's running from your local machine. This is of course great for development/debugging, but not realistic for a live deployment.


            Community Discussions, Code Snippets contain sources that include Stack Exchange Network


            No vulnerabilities reported

            Install botframework-sdk

            You can download it from GitHub.


            | Bot Framework Composer | C# Repo | JS Repo | Python Repo | Java Repo | BF CLI |.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link