RocketChat: copy messages on private channel as they are pinned (or starred) - chatbot

I've to write a daemon (or script) running inside my RocketChat server that automatically clone messages from any direct chat to a private channel as soon as they went pinned or starred by the user (I don't want to integrate any additional button or option on phone apps neither on the web app).
I am a newbie in rocketchat and I've read a lot of info (eg. how mongodb works etc.), but I cannot understand if a bot is the right choice for this task.
I've installed the chat application on a Ubuntu Server via snap.

Related

Use same terminal session across the devices when using vscode-remote ssh

I'm using three of the devices to develop. Desktop(Home), MacBook(Work), Laptop(Remote).
I'm developing a web project that needs to build and API server. So I'm running build steps and API server using watch parameter.
However, If I do work at remote or home, I can't start API server because that port already bound by other process that executed by work MacBook terminal. I tried to kill that process, but It restored automatically by watch parameter.
So now I want to use the same terminal session across the multiple devices. I thought maybe I can do this using tmux, but I don't know is there a better solution for this.
Is there available something to do this in vscode-server? Or just I need to use tmux or other solution?

Can we invoke an exe of client machine through ChatBot application which is hosted on azure and channel to access the chatbot is MS Teams

I am working on a chatbot application developed in .net core 3.1, this application is hosted on azure, and all users of the company can interact with this chatbot through MS Teams app, on both platforms through mobile and desktop. So I want to do some automation on user machine, for this, I want to invoke cmd and some exes of client user machine, but I have no idea how to achieve this directly through my chatbot application. I don't want to inkove exe through the client machine browser with some registry changes on user's machine.
This would be a massive security risk, so no, there's no way to do this without installing or implementing things on the user's machine.
Some options are:
Write a custom chat client using directline-js, that executes those commands when it receives data from the bot.
Register a custom URI Protocol handler and have the bot send a URL link in teams. When the user clicks it, the handler grabs it and sends it to the program registered with the handler to execute the appropriate action.
There's probably some other ways to do this but again, it's not possible without the client installing something or making some registry edits.

Is it possible to have a REST API server start in a Chrome extension?

Suppose that I want to open Chrome on my PC and then enable an extension, and just leave it idle in the background. Would it be possible to have the extension spin up a REST API server that can then be consumed by, say, some Raspberry Pis (assuming the PC's firewall allows for it, of course)?

Deliver application's GUI via browser

I need to show to a user an interface of some application running on a server using a browser. It should be like RDP-client for a single application on a server.
Are there any solutions or services that can implement following functionality? Maybe Citrix?
Thanks in advance!
This looks like what you're looking for:
http://freerdp.net/
About FreeRDP-WebConnect
FreeRDP-WebConnect is an open source gateway for accessing RDP
sessions using any HTML5 compliant browser. In particular it relies on
the Canvas and the WebSockets feature. FreeRDP-WebConnect is a
subproject of the FreeRDP project.
On the server side, a standalone daemon - written in C++ - provides a
Web page via HTTPS (or HTTP, if configured) and uses FreeRDP libs to
connect as a client to any RDP session. The server side WebSockets
implementation handles current RFC6455 only, so browsers that
implement the older drafts do not work. With RFC6455 being raised to
the "Proposed Standard" level, this should change now really soon.
I would create an account on the server for the user, and only give it access to the one application it needs access to.
You can use Cameyo. To start, create yourself a free account, and click on "Add App". If your installer supports unattended installation, you simply need to submit it. Otherwise, you can build a Cameyo package locally and send it in. It will then be playable as HTML5.
You don't indicate what server you are running on.
As an alternative to FreeRDP-Webconnect cited above, also open source and also using FreeRDP as rdp client through an HTTP gateway, there is Myrtille.
FreeRDP-WebConnect embeds a standalone daemon written in C++ to provide a web page via HTTP(S), and so will also work on Linux servers, while Myrtille have a IIS/.NET (C#) implementation and an MSI installer, thus is more intended for Windows Servers.

How can I remotely deploy a rich client in .Net?

Currently we run our web applications on a thin client browser IE 6 and it is slow.
We are a non-profit organization. All our offices are linked via VPN.
Opera 10 browser allows one to convert one's PC into a server.
I am thinking of deploying our application and Opera 10 on every client, meaning that the every client would run a server which in turn would run our application.
Therefore, the clients would connect only to our database. This would speed things up.
However, I would need to deploy updates to our application from time to time.
How can I deploy a web application to the clients PC's remotely?
Our app is .Net.
You might want to take a look at click-once deployment which can handle auto-updating applications (I believe however, they should be .Net based)