Launch Discord app in a specific channel (Linux) - terminal

Can I launch Linux Discord app in a specific channel using command line? I can launch the app with Discord, but have no idea if I can add some options to do what I want.
In browser, I can use the domain with /channel/<channel_id> to reach a specific channel.

Related

How do I turn on/off my discord bot worker on heroku using Discord command?

I have a discord bot deployed to Heroku and I don't want to open the heroku website every time in order to turn on/off my discord bot from the worker tray. Is there a way to control my discord bot from discord commands using another managing bot?
You can configure your managing bot to use and make calls to the Heroku Platform API's.
Particularly, the Dyno section specifies how you can Create, Restart and Stop your Dynos by making API calls by passing in your App ID/Name and Dyno ID/Name.

Microsoft Bot is not responding in either Teams nor the Bot Emulator

I have:
The corresponding Web-App running on localhost.
An open channel for MS Teams active within the Bot Framework, which displays 'running' all the time (no issues).
downloaded a VS19 project from git with a few pre-set bot-commands.
However, when I host the app via ngrok and try to contact the bot via teams the dropdown menu with the commands is diplayed, but the the bot replies to none of them.
When using the Bot Emulator, it also does not react to any messages (see below).
You said:
hello
Restart conversation from here
You said:
help
Restart conversation from here
Connectivity Status: Connected
Suggested Actions Container: Is empty
[10:03:51]Connecting to bot on https://localhost:3979/api/messages
[10:03:51]Emulator listening on http://[::]:58187
[10:03:52]-> conversationUpdate
[10:03:52]ngrok listening on https://67fe6eb30077.ngrok.io
[10:03:52]ngrok traffic inspector:http://127.0.0.1:4040
[10:03:52]Will bypass ngrok for local addresses
[10:03:52]POST400directline/conversations/<conversationId>/activities
[10:03:58]-> message hello
Since i was unable to resolve the issue I started the registration process over, this times with our tenants account. It didn't change very much except for causing an AADSTS700016-Error server side. After some research I stumbled accross this article, which explains the issue but also shows the solution, namely setting "signInAudience": "AzureADandPersonalMicrosoftAccount" in the registration manifest. This option was not available for my app for some reason so I set it to "signInAudience": "AzureADMultipleOrgs", which resolved the issue for now.

ERROR. The bot is remote, but the service URL is localhost. Without tunneling software you will not receive replies

I am trying to debug a bot which is running locally, and when i use the ngrok url on bot emulator it is returning the following error "The bot is remote, but the service URL is localhost. Without tunneling software you will not receive replies".
Any help please?
thank you.
If you are running locally you do not need to use ngrok. You just need a single .bot file with the endpoint URL http://localhost:3978/api/messages. You should not enter the App ID and Password since you are running locally (your bot won't connect otherwise, and may be why you are seeing that message). I use this single .bot file for every bot I test locally, the only reason you would need to change is if you're listening on different ports for some reason.
To test:
Start the bot via node with node index.js. If you are using the MS templates and haven't changed any settings, you'll see a message that the bot is not listening on port 3978.
Open your .bot file in the emulator with the http://localhost:3978/api/messages endpoint
Bot should connect and you can begin testing!
Note that if you are testing behind a corporate firewall and you are using services like LUIS, QnA Maker, etc., those calls will likely be blocked and the bot will error out. You do not need ngrok to fix this! The easiest way is to set your proxy via HTTPS_PROXY in your .env file (you can define it in your code too via process.env.HTTPS_PROXY but I don't recommend that since you don't want that setting in production).
Do not also set HTTP_PROXY, I'm not entirely sure why but this will prevent your bot from working.
Note that some of the native botframework connectors, like CosmosDB, don't respect the .env HTTPS_PROXY variable and those calls will fail. If you are making those API calls directly, you shouldn't have any issues.

Slack app and local storage

We are planning a Slack app but we need local storage, we do not want to store any data of user/channel at our server, we want to save it permanently or temporary on local machine of user or in Slack server.
Is there anyway to do it?
Thanks
Here are my thoughts on the topic:
Local storage solution
You would need to implement a "local" helper-app that every user needs to install. Keep in mind that Slack works on many different platforms. So you would either need to limit your app to certain platforms (e.g browser only), or develop a "helper-app" for all platforms that Slack is currently supporting (e.g. Browser, Windows desktop, Apple desktop, iPhone, Android).
You would still need to host your Slack app on a server. Slack requires you to provide a fixed URL to connect to your Slack app, e.g. to invoke a slash command or after pressing a button. Your app would then need to manage the connection with the local helper-app to access the local data storage.
So, I guess it would be technically possible, but would require a lot of effort. And since you will need to host your app on a server anyways, it might be more feasible to also put your user data there.
Storing data on the Slack server
It is possible to store user data on the slack server through the user profile. There one can add custom key/value pairs through users.profile.get and users.profile.set
However, this will not work for slack team related data, like the individual Slack token that is received during the app installation process and needed by the Slack app to use those API methods. So your app needs to at least store the app token centrally together with the slack app itself.

Sending image to Bot not working with Windows 10 Skype

I am trying to send an image to my Bot. This works in most versions of Skype, but for some reason it fails in the Windows 10 version of the Skype app.
The Bot is implemented and has been working for a while. It can be found by going to https://www.chtter.net and adding the Skype Bot.
When an image is sent to the Bot, the image is then downloaded to AWS S3, and then forwarded to the intended recipient of the image.
The problem is that when this is done using the "Classic" desktop version of Skype it works fine. If you send the image using the Android version of Skype, it works fine. But using the Windows 10 app, the Bot seems to throw an "Internal Server Error", and the file that is uploaded to S3 is not viewable. This doesn't seem to be an issue with the Bot code, since it works in many cases. It seems to be a difference between the Windows 10 app (or how it handles the Bot interface, or something) and other versions of Skype.
Has anyone else seen this, and is there some solution?
There are some known issues with the Skype Image Service right now (2017-12). Also, Skype does not maintain feature parity across their client app portfolio & unfortunately the Skype client differences can't be addressed from the bot-code side of things.

Resources