I have a BotFramework v4 deployed in Azure using the virtual agent template and have been trying to POST to the endpoint to have a message sent to users in Teams but the response received is a 400 Bad Request. We can perform a POST using Postman with the same information and it will post without issue. The Bot is deployed using C# while the software we are using requires node to perform the fetch/https request.
Local testing of the code is below with some information redacted. Tried using HTTPS request as well and got the same results of 400 Bad Request
Update
We got an HTTPS request working in local testing but once published to Azure and sending the POST to the Azure url, we get a 200 response but the POST is not going to the MS Teams conversation as expected. Application insights shows no errors.
Update 2
Using live metrics found that when sending the POST to the bot this is the error received:
System.ArgumentNullException: Value cannot be null. (Parameter 'clientSecret')
at Microsoft.IdentityModel.Clients.ActiveDirectory.ClientCredential..ctor(String clientId, String clientSecret)
at Microsoft.Bot.Connector.Authentication.MicrosoftAppCredentials.b__14_0()
Related
I'm trying to test a ChatBot using Microsoft Azure. However, the bot is not working in the "Test in Web Chat" feature and it throws this error:
There was an error sending this message to your bot: HTTP status code ServiceUnavailable
Anyone know why? I've hypothesised that it's because I am on an unpaid version of Azure, but I want to be sure before I upgrade.
Also, I'm testing the API endpoing on the Bot Framework Emulator, and it throws a POST 503 error (Service Unavailable).
I have created a post api and did put that post api inside the event webhook settings of sendgrid. But when i enabled it and check the json response on my api in local, i am getting fake messages and not real data.
Anyone know whats the reason. I checked their documentation, it is not telling anything else.
Source of information : https://sendgrid.com/docs/for-developers/tracking-events/getting-started-event-webhook/
If you are using event webhook according to above documentation in the question. You wont get the real data as for testing purpose sendgrid sends that data from your account. Instead try implementing the API. Then you will get the real response as it would contain your sendgrid api key.
I am making a plagariam check and then it communicates to the server of the company via webhook, the response is then recorded in RequestBin, which generates a JSON response in their website, how do I extract the information from the website to my node js code?
The webpage looks like this: my requestb.in online webhook
What I need is to get that raw JSON.
You cannot get data via API from RequestBin.
RequestBin doesn't provide API for you to catch the responses. It is built for manual testing where a person checks the data using their UI.
If you wish to check the response, register a WebHook with the company that points to your server where your app resides.
PROBLEM: When I try to test my bot using the web chat in the MS Azure GUI, it gives me the error
There was an error sending this message to your bot: HTTP status code Forbidden
I've done the following:
Created a bot using the Microsoft Bot Framework, LUIS, and NodeJS
Created resource for the bot in MS azure
Successfully tested the bot locally using the bot emulator (without using the bot ID and password)
Set up continuous deployment so all updates made to my repo are reflected in the Azure bot service
Defined all environment variables in the application settings tab of the azure bot service (bot id and password are correct and included)
Included web.config, iisnode.yml, and publish.js files
Heeelp. I've googled this, tried alternative solutions mentioned for similar problems, but no luck.
NEVERMIND! I had stopped the application weeks ago, that's why it gave the forbidden error. I didn't realize until I tried to make a GET request in Postman to the bot endpoint.
I'm trying to set up Grafana to send webhooks to Microsoft Teams. I'm able to curl via terminal to the address but it's not possible via Grafanas interface.
I add the URL to Grafanas "webhook" and when I click "Test" it only shows me an error. Anyone know the solution?
I have not entered username/password since i don't know what to supply.
I tried this also.
With a variety of settings (post, put, slack, webhook)
Long story short, Grafana doesn't support the team webhook format.
I Can curl the webhook and get the hello world example to work (without credentials so it isn't the username and password).
Error grafana gives is:
Webhook response status 400 Bad Request
Getting started with connectors
Action reference