Chat between 2 different applications using firebase - node.js

I am building a marketplace and want to provide the chat feature to customers and vendors. There are 2 separate apps for customer (App1) and vendors (App2). The idea is when a customer on App1 sends message to a vendor on App2 the message is received on App2 and the vendor can reply back. Can we do this in FIREBASE?
Front-end -> React-native
Back-end -> ASP.NET

The question is little bit wide but technicaly you can share any kind of data between two apps using the Firebase REST API or even the Firebase Admin SDK. We use in your compay both solution depending on what task the need to accomplishe.
In your case because both Apps would need to send data to each other both of them would need to have an REST API to send and receive data.
If you plan to use a single Firebase Project for both apps you can just use the Firebase Client SDKs to communicate to the same Firebase Projekt trough different apps. A single Firebase project can have multiple Apps on multiple and same platforms and languages.

Related

Azure Bot - communicate through REST APIs

I have to integrate 2 different azure bots into a single azure bot application. So thinking of integrating with the REST api. Will this approach work ?
From this links
https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-quickstart?view=azure-bot-service-4.0
https://learn.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-api-reference?view=azure-bot-service-4.0
I can get the access token from cloud bot. But there is no example on "sending message from client". It have examples on handling client messages from server as Activity object.
It would be better if any samples on "sending message from client to azure cloud throught REST"
what is different between REST and connectors.?
I believe it will be possible with DirectLine, but wanted to know how to do thorugh REST APIs.
Thanks in Advance !!
I can't tell you whether or not your idea will work for dealing with two separate bots without more information. If you are trying to start conversations with both bots and the sending messages to the different conversations based on some set of criteria than that should work.
The Bot Framework API can essentially split into two sections:
The Connector (primary) API that the bot uses to talk to users and the service.
The DirectLine API that you can use to talk to the bot instead of using one of the built-in connectors like Slack or Teams.
Based on your needs, the DirectLine is indeed what you are looking for. The directline.botframework.com/v3/directline/conversations/abc123/activities endpoint will allow a client app to send a message to the connected bot.

Does Google Actions Support Websockets?

I am trying to build a Rocket Chat Google Action and one of the major advantage of RC is it's Realtime API's however they require Websocket to get access. I know that Dialogflow can be used for Websocket's but does Google Actions support it?
I am using Dialogflow along with Firebase as backend for my Action.
Actions on Google is a platform for stateless applications running through a REST API call. In this model, the user sends one request to your server and they get back one response.
Actions on Google itself doesn't support web sockets, but you are able to define a cloud function like Firebase to do advanced fulfillment. While you may be able to get web sockets to work in your function, you'd still need to adjust the Action's conversational flow to work in a request/response fashion instead of listening to web sockets continually.

Using Bot Framework, all chat messages need to be proxied through Microsoft servers?

Until now I have developed bots using each platform API directly, so that communication takes place between my bot and the platform like this:
My Bot <----> Telegram/Slack servers
I would like to use BotBuilder SDK to simplify bot development and unify communication to multiple Bot platforms (Telegram, Slack, etc.).
However, it looks like using BotBuilder also implies using Microsoft servers as an intermediary relaying all chat messages between each platform and my bot:
My Bot <----> Microsoft servers <----> Telegram/Slack servers
Is it like this? Using BotBuilder SDK messages need to be proxied through Microsoft servers?
(I expected that the BotBuilder SDK library would directly provide the features of adapting message format (between the unified format and each platform/channel format) and communicating with each platform API, but it looks like this is really done by Microsoft servers.)
If this is really the case, which components would need to be reimplemented/overriden to be able to communicate directly with each platform REST API? The Bot Connector service? Is there any example available? Thanks

How to store configuration items in a Slack App

How do you store permanent data in a Slack Application?
For example, the Opsidian slack app has a command to add your AWS keys. Where does it store those keys and how does it know to use specific keys for specific teams?
Is this on the Opsidian side? If that's the case does it just use the team.info endpoint and use that every command to match it up?
I have searched their documentation and Google with no luck.
A slack app usually consists of program code (e.g. PHP) and a database (e.g. MySQL) that runs on a server and interfaces with Slack through one of the APIs. All Slack team specific information is stored in a custom datadase using the unique team ID as key. The server needs to be accessible from the Internet, so that Slack can communicate with it. The server to run the program code of the app and the custom database for the app is not provided by Slack, but needs to be setup and maintained by the Slack app developer.
Slack itself only stores the basic configuration for an app (everything you see under "Your apps", e.g. Validation token) and some basic configuration per team after installation (e.g. That an app is installed and who installed it). Any other application specific information has to be stored by the app itself in its database.
The Slack app developer also needs to provide a custom website to allow installation of a Slack app for a team. See this answer for more info about the installation process and how to obtain a team specific access token.

What are the calls allowed by QuickBooks Web Connector?

My client has two Companies on the same QBES (Enterprise), in other words, two Company files.
We are creating a Web Application (Angular + Web Api 2) to automatically generate Purchase Orders based on new Sales Receipts created by their ecommerce integration plug-in (probably SkuVault), we need then to create the Sales Order in Company B based on this PO, and after that, the Bills and Invoices respectively. I found all the calls I should be calling on the SDK documents, but since this architecture requires us to use Web Connector, will I be able to make all the calls listed on the SDK using the Web Connector?
What are the calls allowed by QuickBooks Web Connector?
All of them.
will I be able to make all the calls listed on the SDK using the Web Connector?
Yes.
More details:
The Web Connector is just a SOAP wrapper around the normal QuickBooks SDK calls. It's nothing special or magical or even very technical in nature, it's just a simple SOAP wrapper around the rest of the XML-based COM SDK. So, anything you can feed to QuickBooks normally, you can feed via the Web Connector.

Resources