Giter VIP home page Giter VIP logo

microsoft / botframework-emulator Goto Github PK

View Code? Open in Web Editor NEW
1.8K 123.0 741.0 50.43 MB

A desktop application that allows users to locally test and debug chat bots built with the Bot Framework SDK.

Home Page: https://aka.ms/botemulator

License: MIT License

JavaScript 2.12% TypeScript 93.85% CSS 0.95% HTML 0.52% NSIS 0.03% Shell 0.02% SCSS 2.50%
microsoft-bot-framework bot-framework-emulator electron typescript react redux bot-builder bot sdk

botframework-emulator's Introduction

Bot Framework Emulator

Bot Framework Emulator

Build Status Coverage Status

The Bot Framework Emulator is a 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 either locally on your machine or connect to bots running remotely through a tunnel.

This repo is part the Microsoft Bot Framework - a comprehensive framework for building enterprise-grade conversational AI experiences.

Download

  • Download the Bot Framework V4 Emulator for your platform from the GitHub releases page.

Supported platforms

  • Windows

  • OS X

  • Linux

    Note for Linux users:

    The Emulator leverages a library that uses libsecret so you may need to install it before running npm install.

    Depending on your distribution, you will need to run the following command:

    Debian/Ubuntu: sudo apt-get install libsecret-1-dev

    Red Hat-based: sudo yum install libsecret-devel

    Arch Linux: sudo pacman -S libsecret

Documentation

Checkout the Wiki for docs.

Feedback

Related

Nightly builds

Nightly builds are generated using the latest code. Therefore, they may not be stable, and most likely lack up to date documentation. These builds are better suited for more experienced users, although everyone is welcome to use them and provide feedback. Nightly builds of the V4 Emulator are available here.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Reporting Security Issues

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at [email protected]. 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.

botframework-emulator's People

Contributors

a-b-r-o-w-n avatar aliandi avatar bill7zz avatar carlosscastro avatar ckkmicrosoft avatar cleemullins avatar compulim avatar corinagum avatar crjens avatar cwhitten avatar daltskin avatar danwkennedy avatar denscollo avatar dependabot[bot] avatar djweddle avatar eanders-ms avatar emadelwany avatar ivanov-dan avatar jeffders avatar justinwilaby avatar luislera avatar mgbennet avatar oevgeny avatar sgellock avatar srinaath avatar stevengum avatar toddn avatar tomlm avatar tonyanziano avatar vishwacsena avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

botframework-emulator's Issues

New Emulator not sending recipient info

Version 3.5.20 message structure:

from 'user':

{
  "type": "message",
  "text": "hi",
  "from": {
    "id": "default-user",
    "name": "User"
  },
  "timestamp": "2016-11-23T05:35:19.425Z",
  "channelData": {
    "clientActivityId": "1479879313312.7115656006164095.0"
  },
  "serviceUrl": "https://b7eb894d.ngrok.io",
  "id": "511ggghn8i2kann73",
  "channelId": "emulator",
  "recipient": {
    "id": "l3iemcdml1ghd784l"
  },
  "conversation": {
    "id": "b9c9mgcl0jacihcjgc"
  }
}

reply from 'bot':

{
  "type": "message",
  "timestamp": "2016-11-23T05:35:25.570Z",
  "serviceUrl": "https://b7eb894d.ngrok.io",
  "channelId": "emulator",
  "from": {
    "id": "l3iemcdml1ghd784l",
    "name": "Bot"
  },
  "conversation": {
    "id": "b9c9mgcl0jacihcjgc"
  },
  "recipient": {
    "id": ""
  },
  "text": "Please note that by using this chat bot you are agreeing to our terms and conditions. [Ts&Cs](https://nedgroupinvestments.co.za/terms-and-conditions)",
  "attachments": [],
  "entities": [],
  "replyToId": "511ggghn8i2kann73",
  "id": "1nljk346n041j88l4c"
}

compared with version 3.0.0.59:

from 'user':

{
  "type": "message",
  "id": "29a999a3b2e84bb8b84193141f6e2923",
  "timestamp": "2016-11-23T05:37:42.9156081Z",
  "serviceUrl": "http://localhost:9000/",
  "channelId": "emulator",
  "from": {
    "id": "2c1c7fa3",
    "name": "User1"
  },
  "conversation": {
    "isGroup": false,
    "id": "8a684db8",
    "name": "Conv1"
  },
  "recipient": {
    "id": "56800324",
    "name": "Bot1"
  },
  "text": "heyy",
  "attachments": [],
  "entities": []
}

from 'bot':

{
  "type": "message",
  "timestamp": "2016-11-23T05:37:48.1789651Z",
  "serviceUrl": "http://localhost:9000/",
  "channelId": "emulator",
  "from": {
    "id": "56800324",
    "name": "Bot1"
  },
  "conversation": {
    "isGroup": false,
    "id": "8a684db8",
    "name": "Conv1"
  },
  "recipient": {
    "id": "2c1c7fa3",
    "name": "User1"
  },
  "text": "Please note that by using this chat bot you are agreeing to our terms and conditions. [Ts&Cs](https://nedgroupinvestments.co.za/terms-and-conditions)",
  "attachments": [],
  "entities": [],
  "replyToId": "29a999a3b2e84bb8b84193141f6e2923"
}

Spot the difference right? There's no recipient name anymore?

Message bubbles are empty (Mac)

The emulator does show a bubble, but it's empty and looks strange:
screen shot 2016-11-17 at 17 38 54

Yet, the message (per the log) is not empty:
screen shot 2016-11-17 at 17 37 06

It looks like the emulator does not like the fact the text field has a leading underscore. I am not sure where it comes from by the way. The message is built using standard Builder methods.

It works fine on Skype and Slack.

emulator using ngrok for localhost

It seems that the emulator is using for no reason ngrok when testing localhost bot.
the issue is that ngrok has limitation on traffic frequency, and i'm being denied using it.

Uploading attachment

Hi guys

Today I've noticed that it is impossible to send attachment inside Emulator. Every time I send something to the bot emulator end up in "sending" state while bot did not receive any message. I tried videos, pictures and images, nothing was received.

Emulator version : 3.5.20

build from source on RHEL 7

Problem with Bot Framework Emulator

Hi All,

I generate very simple bot (using C# template which I downloaded from http://aka.ms/bf-bc-vstemplate), but I'm having issues trying to get the emulator recognize my bot (I use 3.5.23 version of emulator).
Log from emulator:
[20:42:11] Emulator listening on http://[::]:16188
[20:42:16] -> POST Refresh access token failed with status code: 400
[20:42:25] -> POST Refresh access token failed with status code: 400
[20:42:27] -> POST Refresh access token failed with status code: 400

Any idea what’s wrong?

Auto Update

I really liked the previous versions of emulator which used to auto update on start. Is it still the case or do I have to uninstall old and install new version?

ReceiptCard rendering issue

I am using the the next block of code to create and post receipt card:
`var reply = context.MakeMessage();

        var items = new List<ReceiptItem>();
        items.Add(new ReceiptItem(subtitle: "some text 1", text:"some text 2", price: ""));
        items.Add(new ReceiptItem(subtitle: "some text 3", text: "some text 4", price: ""));

        var confirmBtn = new CardAction("postBack", "some text 5", value: "some text 6");
        var editBtn = new CardAction("postBack", "some text 7", value: "some text 8");

        reply.Attachments.Add(new ReceiptCard(
            title: "OrderInfo",
            items: items,
            total: "0.0",
            buttons: new[] { editBtn, confirmBtn }).ToAttachment());

        await context.PostAsync(reply);`

but in the new bot emulator (3.5.22) i am facing the next issue:
the card is not rendering my items and buttons
image

No auto scroll for new messages

hey i love the new emulator. however, when i send or receive messages, the display does not scroll down to the latest one. not sure if this is the intended behavior?

[04:53:15] [err-server] listen EACCES 0.0.0.0:3979 "Error: listen EACCES 0.0.0.0:3979

[04:53:15] [err-server] listen EACCES 0.0.0.0:3979 "Error: listen EACCES 0.0.0.0:3979\n at Object.exports._errnoException (util.js:1026:11)\n at exports._exceptionWithHostPort (util.js:1049:20)\n at Server._listen2 (net.js:1240:19)\n at listen (net.js:1289:10)\n at Server.listen (net.js:1385:5)\n at Server.listen (C:\Users\illdo\AppData\Local\botframework\app-3.5.20\resources\app\node_modules\restify\lib\server.js:398:32)\n at BotFrameworkService.RestServer.restart (C:\Users\illdo\AppData\Local\botframework\app-3.5.20\resources\app\app\server\restServer.js:59:28)\n at BotFrameworkService.configure (C:\Users\illdo\AppData\Local\botframework\app-3.5.20\resources\app\app\server\botFrameworkService.js:84:18)\n at new BotFrameworkService (C:\Users\illdo\AppData\Local\botframework\app-3.5.20\resources\app\app\server\botFrameworkService.js:64:14)\n at new Emulator (C:\Users\illdo\AppData\Local\botframework\app-3.5.20\resources\app\app\server\emulator.js:45:26)"
[04:53:16] Checking for new version...
[04:53:16] Application is up to date.

The bot's MSA appId or passsword is incorrect

Log
[14:44:56] ngrok listening on https://68752c9a.ngrok.io
[14:44:56] ngrok traffic inspector: http://localhost:4040
[14:44:56] Application is up to date.
[14:44:56] Emulator listening on http://[::]:58607
[14:46:43] -> POST 401 [conversationUpdate]
[14:46:43] Error: The bot's MSA appId or passsword is incorrect.
[14:46:43] Click here to edit your bot's MSA info.

Web.config

<add key="BotId" value="MyBot" /> 
<add key="MicrosoftAppId" value="" />
<add key="MicrosoftAppPassword" value="" />

<add key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />

Question: Connect multiple webchats to emulator

If I am running the emulator locally and its listening on, say, port 59792; can I run another standalone webchat and connect it to the same emulator port to accept activities from my bot?

Sending images seems to fail

Selecting an image attachment in the emulator - with or without entering a text message also - just hangs on "sending"; it never seems to hit the bot endpoint.

Crash when reading a HeroCard

The following red text appears in the bot window when my bot returns a HeroCard ....

[err-client] Uncaught TypeError: Cannot read property 'url' of undefined C:\Users\Alien\AppData\Local\botframework\app-3.5.18\resources\app\node_modules\@reactivex\rxjs\dist\cjs\Subscriber.js 227 13 {}

Bot Framework Emulator version 3.5.18

Here is the response JSON that causes the error ...

{
  "type": "message",
  "from": {
    "id": "56800324",
    "name": "Bot1"
  },
  "conversation": {
    "id": "8a684db8",
    "name": "Conv1"
  },
  "recipient": {
    "id": "2c1c7fa3",
    "name": "User1"
  },
  "text": "Did you want to file an expense?",
  "attachments": [
    {
      "contentType": "application/vnd.microsoft.card.hero",
      "content": {
        "buttons": [
          {
            "type": "imBack",
            "value": "#!fileexpense",
            "title": "File an expense"
          }
        ],
        "images": []
      }
    }
  ],
  "channelData": {
    "common": {
      "inputType": "",
      "isLastInBatch": true,
      "displayText": false,
      "buttons": [
        {
          "type": "cmd",
          "value": "#!fileexpense",
          "title": "File an expense"
        }
      ],
      "images": [],
      "textMetaData": [],
      "followUpMessageMetaData": []
    },
    "custom": {
      "showSearchResults": true,
      "searchQuery": "file expense"
    }
  }
}

Url's are being url encoded in the chat view. &'s are becoming &amp; instead.

I've noticed this while playing with the AuthBot. In the new emulator, the Markdown coming from the bot that contains the generated URL is correct but when you click the link in the Chat window it opens a browser with an incorrectly formatted URL.

For example, this is the returned JSON from the framework.

{
  "type": "message",
  "timestamp": "2016-12-01T15:20:03.597Z",
  "serviceUrl": "https://sss.ngrok.io",
  "channelId": "emulator",
  "from": {
    "id": "...",
    "name": "Bot"
  },
  "conversation": {
    "id": "..."
  },
  "recipient": {
    "id": ""
  },
  "text": "You must be authenticated before you can proceed. Please, 
click [here](https://login.microsoftonline.com/tenant.onmicrosoft.com/oauth2/authorize?resource=https:%2F%2Fgraph.windows.net%2F&client_id=CLIENTID&response_type=code&haschrome=1&redirect_uri=http:%2F%2Flocalhost:3979%2Fapi%2FOAuthCallback&x-client-SKU=PCL.Desktop&x-client-Ver=3.13.7.964&x-client-CPU=x64&x-client-OS=Microsoft+Windows+NT+10.0.14393.0&state=SOMESTATE) to log into your account.",
  "attachments": [],
  "entities": [],
  "replyToId": "...",
  "id": "....."
}

Except when clicking the link in the emulator the URL the result is an improper escaped url. The & are transformed to &amp; like this example:

https://login.microsoftonline.com/tenant/oauth2/authorize?resource=https:%2F%2Fgraph.windows.net%2F&amp;client_id=CLIENTID&amp;response_type=code&amp;haschrome=1&amp;redirect_uri=http:%2F%2Flocalhost:3979%2Fapi%2FOAuthCallback&amp;x-client-SKU=PCL.Desktop&amp;x-client-Ver=3.13.7.964&amp;x-client-CPU=x64&amp;x-client-OS=Microsoft+Windows+NT+10.0.14393.0&amp;state=SOMESTATE

This result of clicking the link is an error about client_id being missing.

No x86_32 Build

I want to install BotFramework Emulator to 32bit Windows machine.
But, I can't found 32bit exe.

I build myself from code.
I want to distribute 32bit windows binary.

Any plans for headless execution?

Hi,

We're doing something a bit more serious with the BotFramework and we're now starting to write SpecFlow tests to perform behavior-driven testing of the bot functionality. Since we would like to run these tests locally without having a dependency on the Bot Connector service, we thought it would be nice to use the emulator's backend as the supporting backend. However, what we found is that the server code is coupled with the client's Electron GUI code. What we'd like to have is a way to run it headless, meaning, a way to run just the server-side without the GUI (to integrate in a build/test pipeline).

Is this something that is coming up soon?

Thanks!

builder.Prompts.choice() leave blank menu option

Im using node.js SDK and using:

 builder.Prompts.choice(session, "Choose a topic of interest:", "Cloud|Telecoms|...

Always leaves a blank space at the top of the menu list items:

image

Is this a bug or by design?

Any way to clear a cache under heavy testing

Use case: when doing a lot of heavy integration testing over long periods, the emulator slows down a lot. I need to keep the same conversation going, so I don't think closing the emulator is an option unless I can copy the conversation id and paste it after restarting.

Clearing the log pane doesn't seem to help.

HeroCard Button not posting on click

The emulator renders a hero card with buttons just fine, but when I click on any of the buttons they do not post anything (nothing shown in the log).
JSON of the hero card looks correct, buttons have type: "postback", a title & a value.

I don't know what else to check...

Cannot send messages from Microsoft Bot Framework

Version 3.5.20

The emulator at first is supposed to return a response with the number of characters of a user input string. However even after using the default endpoint url which is http://localhost:3978/api/messages, whenever inputting a string, the message is not sent.

When accessing the app settings, the emulator port is modifiable. The emulator port was 9002 by default and even changing it to 9000 (which I remember seeing in some other posts) did not fix the issue.

What appears in the log is:-

Emulator listening on http://[::]:9002
failed to start ngrok: spawn D:\Downloads\Setup\ngrok-stable-windows-amd64\ngrok.
Click here to configure ngrok.
Checking for new verson...
Application is up to date.

http://stackoverflow.com/questions/40822507/cannot-send-messages-from-microsoft-bot-framework/40901454#40901454

Connect to a bot running on localhost

I cannot seem to connect to my application running on localhost from visual studio using the Bot Emulator(v3.5). I keep getting the error "connect ECONNREFUSED" even when the application is started.

Can anyone help?

Expose Direct Line endpoint

Many folks want to run WebChat against a bot running locally. It would be extremely convenient if the Emulator could expose its Direct Line connector to any clients. As a stretch goal, it would be great to extract out said connector as an independent project that can be run by itself as "headless" emulator.

Issue when connecting to bot. write EPROTO 101057795:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:c:\jenkins\workspace\electron-win-x64\vendor\node\deps\openssl\openssl\ssl\s23_clnt.c:794

Hi,
I had previous instances of electron NPM in my system.
when I used the new emulator,
its says the following

write EPROTO 101057795:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:c:\jenkins\workspace\electron-win-x64\vendor\node\deps\openssl\openssl\ssl\s23_clnt.c:794

I have attached a screenshot for the same.

sketch

Please help me out.

Not able to connect using the generated URL in browser

I am a novice in bot programming.
I followed all the steps mentioned following URL:

https://docs.botframework.com/en-us/csharp/builder/sdkreference/gettingstarted.html

Once i run the program in visual studio, it gives a browser output mentioning the URL and ideally it should connect to port 3978, but in my case it deviates to 3979.

In bot emulator i paste the url i received in browser, i.e:
http://localhost:3979/api/messages

I hit the enter key and it displays an error:
[12:01:10] -> POST connect ECONNREFUSED 127.0.0.1:3979

What should i rectify this error?

Failed to read file: {DIR}/botframework-emulator/server.json

I've got this error only on Windows (Win 10) but I'll check at home on OS X.
Is this expected to get this error when running with clean state? I'm running emulator from source code.
The file is not yet created at all (server.json) hence that error. There are other files in emulator data directory, like client.json.

https://github.com/Microsoft/BotFramework-Emulator/blob/82b84e5975351b321258f502803966afb2b99217/src/utils.ts#L66

Full error:

> [email protected] start C:\dev\BotFramework-Emulator
> electron .


Failed to read file: C:\Users\{USER}\AppData\Roaming\botframework-emulator/botframework-emulator/server.json 
{ Error: ENOENT: no such file or directory, stat 'C:\ Users\{USER}\AppData\Roaming\botframework-emulator\botframework-emulator\server.js
 on'
    at Error (native)
    at fs.statSync (fs.js:992:18)
    at Object.fs.statSync (ELECTRON_ASAR.js:285:16)
    at Object.exports.loadSettings (C:\dev\BotFramework-Emulator\app\utils.js:55:23)
    at Object.exports.getStore (C:\dev\BotFramework-Emulator\app\server\settings.js:61:39)
    at Object.exports.startup (C:\dev\BotFramework-Emulator\app\server\settings.js:114:13)
    at Function.Emulator.startup (C:\dev\BotFramework-Emulator\app\server\emulator.js:62:18)
    at Object.<anonymous> (C:\dev\BotFramework-Emulator\app\server\main.js:143:25)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
  errno: -4058,
  code: 'ENOENT',
  syscall: 'stat',
  path: 'C:\\Users\\{USER}\\AppData\\Roaming\\botframework-emulator\\botframework-emulator\\server.json' }
restarting Emulator because undefined !== 9002

It this expected - as I haven't yet started local bot server?

Thanks!
Windows 10
Node 6.9.* (LTS)

Error: Module version mismatch. Expected 50, got 51 when running locally

I've always got that error when running emulator locally under Node v7.0.* and v.6.6.*:

npm run start

> [email protected] start /Users/piotrblazejewicz/git/BotFramework-Emulator
> electron .

Error: Module version mismatch. Expected 50, got 51.
    at Error (native)
    at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:178:20)
    at Object.Module._extensions..node (module.js:583:18)
    at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:178:20)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/bunyan/node_modules/dtrace-provider/dtrace-provider.js:17:23)
{ Error: Cannot find module './build/default/DTraceProviderBindings'
    at Module._resolveFilename (module.js:455:15)
    at Function.Module._resolveFilename (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/electron/dist/Electron.app/Contents/Resources/electron.asar/common/reset-search-paths.js:35:12)
    at Function.Module._load (module.js:403:25)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/bunyan/node_modules/dtrace-provider/dtrace-provider.js:17:23)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12) code: 'MODULE_NOT_FOUND' }
{ Error: Cannot find module './build/Debug/DTraceProviderBindings'
    at Module._resolveFilename (module.js:455:15)
    at Function.Module._resolveFilename (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/electron/dist/Electron.app/Contents/Resources/electron.asar/common/reset-search-paths.js:35:12)
    at Function.Module._load (module.js:403:25)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/bunyan/node_modules/dtrace-provider/dtrace-provider.js:17:23)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12) code: 'MODULE_NOT_FOUND' }
Error: Module version mismatch. Expected 50, got 51.
    at Error (native)
    at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:178:20)
    at Object.Module._extensions..node (module.js:583:18)
    at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:178:20)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/dtrace-provider/dtrace-provider.js:17:23)
{ Error: Cannot find module './build/default/DTraceProviderBindings'
    at Module._resolveFilename (module.js:455:15)
    at Function.Module._resolveFilename (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/electron/dist/Electron.app/Contents/Resources/electron.asar/common/reset-search-paths.js:35:12)
    at Function.Module._load (module.js:403:25)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/dtrace-provider/dtrace-provider.js:17:23)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12) code: 'MODULE_NOT_FOUND' }
{ Error: Cannot find module './build/Debug/DTraceProviderBindings'
    at Module._resolveFilename (module.js:455:15)
    at Function.Module._resolveFilename (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/electron/dist/Electron.app/Contents/Resources/electron.asar/common/reset-search-paths.js:35:12)
    at Function.Module._load (module.js:403:25)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/piotrblazejewicz/git/BotFramework-Emulator/node_modules/dtrace-provider/dtrace-provider.js:17:23)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12) code: 'MODULE_NOT_FOUND' }
restarting Emulator because undefined !== 9002

There is nothing obvious for me on this error log unfortunately.

No "Callback URL" in Settings (OSX)

The wiki says:

If you prefer to use alternate tunneling software, you may configure a custom Callback URL in the emulator's App Settings dialog.

There is no such option in OSX (emulator version 3.5.23).

(Can I also respectfully suggest: next time you need to integrate this sort of utility software, pick something that is really free, not freemium stuff like ngrok. It makes everyone's life easier.)

Emulator crash when started conversation

wp_20161213_20_00_28_pro
I noted that sometimes (more often than I wanted) the emulator crashed, generating a "blue screen" in my Windows 10.
This is what I got from Event Viewer:
Fault bucket , type 0
Event Name: BlueScreen
Response: Not available
Cab Id: 0

Problem signature:
P1: 18
P2: 0
P3: ffffe000330b5480
P4: 10
P5: 1
P6: 10_0_10586
P7: 0_0
P8: 256_1
P9:
P10:

Attached files:
C:\Windows\Minidump\121316-8531-01.dmp
C:\Windows\Temp\WER-10906-0.sysdata.xml
C:\Windows\MEMORY.DMP

These files may be available here:
C:\ProgramData\Microsoft\Windows\WER\ReportArchive\Kernel_18_73874a2647b966d6836b070e7c485d2d6f44c9_00000000_cab_10f44da3

Analysis symbol:
Rechecking for solution: 0
Report Id: 7d91bb3f-9f5d-4e9f-88c3-846cfa983079
Report Status: 2050
Hashed bucket:

Do you want me to send the dump files? Emulator version is 3.5.22
Thanks!

Emulator stopped displaying responses on MacOSX

I've been using the emulator for a couple of weeks now and it has decided to stop relaying messages from my bot application. The logs in my terminal when running the application say that I have sent messages (batched and not batched) and I've also pulled back the entirety of my app so all it does it receive a message and send back "ok", still with issues.

Things to note:

  • OSX El Capitan 10.11.6
  • I have uninstalled (and deleted as many files relating to it as possible) and reinstalled
  • If I deploy my project onto a server, it works fine if using Facebook Messenger

Thanks in advance for any support on this issue.

Scott

Refresh access token failed with status code: 400

I was trying out code from getting started for node.js (https://docs.botframework.com/en-us/node/builder/overview/)

const restify = require('restify');
const botBuilder = require('botbuilder');


let server = restify.createServer();
server.listen(3978, function () {
    console.log('%s listening to %s', server.name, server.url);
});

let connector = new botBuilder.ChatConnector({
    appId: '123',
    appPassword: '123'
});

let bot = new botBuilder.UniversalBot(connector, function (session) {
    session.send('You said: %s', session.message.text);
});

server.post('/api/messages', connector.listen())

node.js server is definitely running on the port
image

I tried to clean and reenter app id & app password several time - didn't help.
Time and date are properly set.

Reseting the emulator session

I am trying to test the firstRun middleware, but the session persists even after restarting both, the bot server and the emulator.

bot.use(builder.Middleware.firstRun({ version: 1.0, dialogId: '*:/firstRun' }));

So, ironically, I can get to the first run dialog only once.

Is there any way to clear the session?

Suggestion: configurable default user data

Right now I only need to change the default user id, but I guess it could be useful (not sure is easy or even possible), to emulate different channel ids, and similar stuff.

Easily switch between configurations

To switch between configurations (e.g. local and Azure hosted), currently I have to close down the instance and reload.

Would be good to be able to have multiple instances running (e.g. by right clicking on the Windows taskbar) or be able to easily switch once I have connected to a configuration

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.