botframework-sdk

授权协议 MIT License
开发语言 Python
所属分类 应用工具、 IM/聊天/语音工具
软件类型 开源软件
地区 不详
投 递 者 凌恩
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

What's new with Bot Framework?

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.

Quicklinks

| Bot Framework Composer | C# Repo | JS Repo | Python Repo | Java Repo | BF CLI |

Bot Framework SDK v4

The Bot Framework SDK v4 is an open source SDK that enable developers to model and build sophisticated conversation using their favorite programming language.

C# JS Python Java
Stable Release packages packages packages packages
Docs docs docs docs docs
Samples .NET Core, WebAPI Node.js , TypeScript, es6 Python Java

Channels and Adapters

There are two ways to connect your bot to a client experience:

  • Azure Bot Service Channel - Language and SDK independent support via Azure Bot Service
  • Bot Framework SDK Adapter - A per language Adapter component
Client Azure Channel C# Adapter JS Adapter Python Adapter
Microsoft Teams Azure
Direct Line Azure
Web Chat Azure Botkit
Skype Azure
Email Azure
Facebook Azure SDK Botkit
Slack Azure SDK Botkit SDK
Kik Azure
Telegram Azure
Line Azure
GroupMe Azure
Twilio (SMS) Azure SDK Botkit
Alexa Skills Community Community
Google Actions Community Community
Google Hangouts Botkit
WebEx SDK Botkit
WhatsApp (Infobip) Community
Zoom Community
RingCentral Community
Cortana Azure
Console Community

Community Open Source Projects

The following open source communities make various components available to extend your bot application, including adapters, recognizers, dialogs and middleware.

C# JavaScript Python Java
Bot Framework Community C# JavaScript Python Java
Botkit JavaScript

Questions and Help

If you have questions about Bot Framework SDK or using Azure Bot Service, we encourage you to reach out to the community and Azure Bot Service dev team for help.

See all of the available support options here.

Issues and feature requests

We track functional issues and features asks for the Bot Framework SDK, tools and Azure Bot Service in a variety of locations. If you have found an issue or have a feature request, please submit an issue to the below repositories.

Item Description Link
SDK v4 .NET core bot runtime for .NET, connectors, middleware, dialogs, prompts, LUIS and QnA File an issue
SDK v4 JavaScript core bot runtime for Typescript/Javascript, connectors, middleware, dialogs, prompts, LUIS and QnA File an issue
SDK v4 Python core bot runtime for Python, connectors, middleware, dialogs, prompts, LUIS and QnA File an issue
SDK v4 Java core bot runtime for Java, connectors, middleware, dialogs, prompts, LUIS and QnA File an issue
Bot Framework Composer bot framework composer electron and web app File an issue
Bot Framework CLI bot framework cli tools File an issue
Webchat bot framework web chat tool File an issue

Prior releases

Bot Framework ecosystem

Bot Framework Composer

Bot Framework Composer is an integrated development tool for developers and multi-disciplinary teams to build bots and conversational experiences with the Microsoft Bot Framework. Within this tool, you'll find everything you need to build a sophisticated conversational experience.

Botkit

Botkit is a developer tool and SDK for building chat bots, apps and custom integrations for major messaging platforms. Botkit bots hear() triggers, ask() questions and say() replies. Developers can use this syntax to build dialogs - now cross compatible with the latest version of Bot Framework SDK.

In addition, Botkit brings with it 6 platform adapters allowing Javascript bot applications to communicate directly with messaging platforms: Slack, Webex Teams, Google Hangouts, Facebook Messenger, Twilio, and Web chat.

Botkit is part of Microsoft Bot Framework and is released under the MIT Open Source license

Bot Framework Virtual Assistant Solution Accelerator

The Bot Framework Solutions repository is home to the Virtual Assistant Solution Accelerator, which provides a set of templates, solution accelerators and skills to help build sophisticated conversational experiences.

  • Virtual Assistant. Customers and partners have a significant need to deliver a conversational assistant tailored to their brand, personalized to their users, and made available across a broad range of canvases and devices.

    This brings together all of the supporting components and greatly simplifies the creation of a new bot project including: basic conversational intents, Dispatch integration, QnA Maker, Application Insights and an automated deployment.

  • Skills. A library of re-usable conversational skill building-blocks enabling you to add functionality to a Bot. We currently provide: Calendar, Email, Task, Point of Interest, Automotive, Weather and News skills. Skills include LUIS models, Dialogs, and integration code delivered in source code form to customize and extend as required.

  • Analytics. Gain key insights into your bot’s health and behavior with the Bot Framework Analytics solutions, which includes: sample Application Insights queries, and Power BI dashboards to understand the full breadth of your bot’s conversations with users.

Azure Bot Service

Azure Bot Service enables you to host intelligent, enterprise-grade bots with complete ownership and control of your data. Developers can register and connect their bots to users on Skype, Microsoft Teams, Cortana, Web Chat, and more. [Docs]

  • Direct Line JS Client: If you want to use the Direct Line channel in Azure Bot Service and are not using the WebChat client, the Direct Line JS client can be used in your custom application. [Readme]

  • Direct Line Speech Channel: We are bringing together the Bot Framework and Microsoft's Speech Services to provide a channel that enables streamed speech and text bi-directionally from the client to the bot application. To sign up, add the 'Direct Line Speech' channel to your Azure Bot Service.
  • Better isolation for your Bot - Direct Line App Service Extension : The Direct Line App Service Extension can be deployed as part of a VNET, allowing IT administrators to have more control over conversation traffic and improved latency in conversations due to reduction in the number of hops. Get started with Direct Line App Service Extension here. A VNET lets you create your own private space in Azure and is crucial to your cloud network as it offers isolation, segmentation, and other key benefits.

Bot Framework Emulator

The Bot Framework Emulator is a cross-platform desktop application that allows bot developers to test and debug bots built using the Bot Framework SDK. You can use the Bot Framework Emulator to test bots running locally on your machine or to connect to bots running remotely. [Download latest | Docs]

Bot Framework Web Chat

The Bot Framework Web Chat is a highly customizable web-based client chat control for Azure Bot Service that provides the ability for users to interact with your bot directly in a web page. [Stable release | Docs | Samples]

Bot Framework CLI

The Bot Framework CLI Tools hosts the open source cross-platform Bot Framework CLI tool, designed to support building robust end-to-end development workflows. The Bot Framework CLI tool replaced the legacy standalone tools used to manage bots and related services. BF CLI aggregates the collection of cross-platform tools into one cohesive and consistent interface.

Related Services

Language Understanding

A machine learning-based service to build natural language experiences. Quickly create enterprise-ready, custom models that continuously improve. Language Understanding Service(LUIS) allows your application to understand what a person wants in their own words. [Docs | Add language understanding to your bot]

QnA Maker

QnA Maker is a cloud-based API service that creates a conversational, question-and-answer layer over your data. With QnA Maker, you can build, train and publish a simple question and answer bot based on FAQ URLs, structured documents, product manuals or editorial content in minutes. [Docs | Add qnamaker to your bot]

Dispatch

Dispatch tool lets you build language models that allow you to dispatch between disparate components (such as QnA, LUIS and custom code). [Readme]

Speech Services

Speech Services convert audio to text, perform speech translation and text-to-speech with the unified Speech services. With the speech services, you can integrate speech into your bot, create custom wake words, and author in multiple languages. [Docs]

Adaptive Cards

Adaptive Cards are an open standard for developers to exchange card content in a common and consistent way,and are used by Bot Framework developers to create great cross-channel conversatational experiences.

  • Open framework, native performance - A simple open card format enables an ecosystem of shared tooling, seamless integration between apps, and native cross-platform performance on any device.
  • Speech enabled from day one - We live in an exciting era where users can talk to their devices. Adaptive Cards embrace this new world and were designed from the ground up to support these new experiences.

Contributing

See our contributing guidelines.

Reporting Security Issues

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at secure@microsoft.com. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.

Copyright (c) Microsoft Corporation. All rights reserved.

  • 微软为了鼓励Java开发人员开发bot,在上个月推出了Java的Bot SDK v4.6版本,目前还在Preview版本,相信不用多久就可以赶上其他版本了。 我的java还停留在 n 年前的水平,但是处于好奇,决定玩一下这套sdk。 这套sdk目前建议的java版本是 1.8或者以上,我们打开最简单的EchoBot,可以看到入口的application如下: public class Applic

  • 聊天机器人(Bot)可谓时下较为火热的话题之一,为了追赶一下潮流,本文将简要介绍一下如何利用Microsoft Bot Framework实现一个基于Microsoft Teams的聊天机器人。本文的示例代码使用.Net Framework 4.6.1、Microsoft.Bot.Builder 4.11.1以及Microsoft.Bot.Builder.Integration.AspNet.We

  • 微软已经面向开发人员发布了Bot Framework预览版,而谷歌收购了API.ai——一个集成了许多应用程序的机器人引擎。\\ 早在今年春天,Facebook就开放了Messenger平台和一个由Wit.ai托管的机器人引擎。两个月之后,他们发布了该引擎的一个新版本,他们的开发人员翻了一倍多,从20K到了45K。不知道他们之中有多少人在实际地构建集成到Messenger的聊天机器人,有多少人只是

  • Skype SDK for Android 04/27/2018 2 minutes to read In this article The Skype for Android SDK enables your Android mobile device application to start chat, audio, and video conversations with the Skype

  • http://stackoverflow.com/questions/2293457/cocos2d-resources

  • 数据采集层(SDK) 1.何为SDK? 1.1、定义 SDK是指一种软件开发工具包,是数据采集的必备工具,英文为“Software Development Kit”。本质上它其实是一些接口API的文件集合,为某个应用程序提供服务。也可以理解为应用开发者通过接入这些文件,并调用里面的相关接口,即可采集相应数据。因为SDK的大小一定程度上会影响应用程序性能,所以尽量轻量处理,占内存大多在几百K和几兆之

  • 官方描述: Minimum Required SDK is the lowest version of Android that your app supports, indicated using the API level. To support as many devices as possible, you should set this to the lowest version ava

  • ⚠ The content in this repo has been moved to microsoft/botframework-sdk ⚠ This repository is no longer in use and no longer accepts contributions. Please go to microsoft/botframework-sdk to make conti

  •     经常会在技术论坛里面看到类似这样的帖子:“什么是 SDK?”,“请高手讲一下 SDK 是什么东东?”……     其实很简单,SDK 就是 Software Development Kit 的缩写,中文意思就是“软件开发工具包”。这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做“SDK”。具体到我们这个系列教程,我们后面只讨论广义 SDK

  • 转自 https://blog.csdn.net/snowin1994/article/details/80608079 https://blog.csdn.net/hx_uestc/article/details/7220625 1、SDK (Software Development Kit,软件开发工具包) 举个例子: 在这里,一个简单的功能链条我将它分为三个组成部分: 1、客户端组装数据 2

  • https://blog.csdn.net/FaithMai/article/details/61202534 “API”,也就是 Application Programming Interface,其实就是操作系统留给应用程序的一个调用接口,应用程序通过调用操作系统的 API 而使操作系统去执行应用程序的命令(动作)。   DLL(又是一个缩写,感觉 IT 这个行业里三字头缩写特别多),即 Dy

  • SDK

    其实很简单, SDK 就是 Software Development Kit 的缩写,中文意思就是 “ 软件开发工具包 ” 。   这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做 “SDK” 。   具体到本文,我们后面只讨论广义 SDK 的一个子集 —— 即开发 Windows 平台下的应用程序所使用的 SDK 。   呵呵,其实上面只是说了一

  • SDK 就是 Software Development Kit 的缩写,中文意思就是“软件开发工具包”。 这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做“SDK”。具体到我们这个系列教程,我们后面只讨论广义 SDK 的一个子集——即开发 Windows 平台下的应用程序所使用的 SDK。  软件开发工具包,只是简单的为某个程序设计语言提供应用程序

  •   Build Android SDK without update API. $ make PRODUCT-goldfish-sdk Build Android SDK with update API. $ make update-api PRODUCT-goldfish-eng $ make PRODUCT-goldfish-sdk Notice. Update API can only r

 相关资料
  • Find out what's new with Bot Framework Bot Framework Emulator The Bot Framework Emulator is a desktop application that allows bot developers to test and debug bots built using the Bot Framework SDK. Y

  • 问题内容: 我只是使用react.js在我的机器人框架网络聊天(v-4)中添加了自动提示/自动完成功能。但是我需要解决一些问题。 1.) 在获得建议的同时,我要在网络建议中输入要在建议列表中加粗的单词。我做到了,但是我现在面临的问题是它只使第一个字母变为粗体(如您在图像中所见),即使它是一种内在感觉,我也想使其变为粗体。 2.) 当我从建议列表中选择一个选项时,必须将其关闭。它会关闭其他选项,但不

  • 我使用的代码基于https://github.com/Microsoft/BotFramework-WebChat/blob/master/samples/15.d.backchannel-send-welcome-event/index.html 当我加载网页时,我收到两条欢迎信息。查看我的机器人的控制台输出,我可以看到两个对话更新正在发生。 Bot框架模拟器不会发生这种情况,它只显示一个欢迎消

  • 我在Azure上使用botframework。当开始与机器人交互时,我会得到断断续续的身份验证错误。如果你只是忽略错误,机器人继续正常工作,你不会一直得到错误。 这是最内层的错误:操作返回了无效的状态代码“unauthorized”。错误发生在MessagesController+D__3.MoveNext方法中。

  • 我希望创建一个机器人集成他们提供的机器人框架DirectLineAPI。 但是,我希望该服务与云服务无关。因此,我们的想法是使用BotFramework功能启动对话,并使用它生成的对话id持久化对话缓存,但业务逻辑可以位于任何云服务(AWS/Google/IBM Cluod)等上。 是否有可能使用DirectLine API进行相同的设计,而不绑定到使用Azure Bot服务? https://d

  • 我正在使用webchat为我的机器人制作一个简单的web界面。我的bot具有使用BotAuth连接到Azure Active Directory的身份验证。当我登录时,它可以正常工作,但当我在另一台设备上开始新的对话时,它会在应该是新的干净对话时继续我的对话。 我用过这个https://github.com/Microsoft/BotFramework-WebChat但我不工作