'Beyond Bitshares' - An open source Google Assistant bot! WIP

in #bitshares7 years ago (edited)

In my last couple Steemit posts, I expounded on building up a HUG REST API for the read-just python-bitshares works keeping in mind the end goal to uncover said usefulness for open Bitshares benefit use.

b111.jpg

Given the open source nature of the HUG REST API and the inside and out establishment documentation, anybody can use the tech for whatever Bitshares venture they're keen on actualizing.

My next Bitshares venture is a Google Assistant, this will conceivably uncover a large number of new clients to Bitshares through their cell phones, their watches (later on) and their committed google home gadgets. It will be first propelled in English, and converted into numerous dialects once in a generation state.

How?

Bitshares HUG REST API

b222.png

The Bitshares HUG REST API repo gives the Bitshares arrange an open-source elite interface to the Bitshares organize through basic GET asks.

We will collaborate with the HUG REST API server straightforwardly utilizing NodeJS facilitated on Firebase Cloud Functions (see beneath).

Estimating

For every 1 CPU, we can get between 2-4 laborers to collaborate with NodeJS work calls, so every CPU should serve approx 10-15 Google Assistant clients. I at present utilize Vultr which has sensible evaluating for VPS, I'm at present paying $10/month for a solitary center VPS to have the HUG server.

Oxarbitrage's "BPAB - Bitshares Python Api Backend"

My Bitshares HUG REST API does not give a portion of the further developed usefulness than that which Oxarbitrage's "BPAB - Bitshares Python Api Backend" gives.

Later on, I'll explore unique (non duplicate/stuck) HUG execution, however for the fleeting I will probably use this API for the accompanying capacities:

Top Proxies

Top Markets

Top Smartcoins

Top UIAs

Get most dynamic markets

Dialogflow

I'll be using Dialogflow (once in the past API.AI, purchased by Google in 2017) to deal with the elucidation of client input, creating rich substances (for the charges and about segment for the time being, maybe resources later) and to construct the goal usefulness/rationale which is viably the skeleton of the Google Assistant.

With Dialogflow, you make a plan and give it 'Client says' data, for example, "Demonstrate to me the current USD:BTS orderbooks" and Dialogflow will recognize which aim to trigger (the orderbook aim), and also separate the exchanging pair (USD:BTS for this situation) for giving as contribution to NodeJS (and along these lines the HUG REST API).

What I find most troublesome about utilizing DialogFlow as of now is that clients don't need to finish set out ways the bot, they can trigger any territory of the bot (unless certain means are compulsory) so you have to represent the client being in one zone of the bot's usefulness at that point hopping to another region without bringing along chronicled information from the past aim/work which could glitch the operation of the bot out of the blue. You need to program protectively against this issue at whatever point expecting contribution from the client.

For the primary form of the bot, once the client is given data they will be constrain stopped out of the bot (utilizing app.tell()) as opposed to asking them what they need to do next. The purpose behind this is the point at which you ask (app.ask()) what they need to do next, you have to give a fallback expectation (on the off chance that they give invalid client input, re-inciting as blunder taking care of) for every goal (right now there's approx 28 such aim capacities) so their coding at this moment would toss a great many lines of layout code in without genuine usefulness - so it's on a low priority status until further notice!

Valuing: FREE!

Firebase

I'll be using Firebase's cloud work facilitating to give Dialogflow the webhook fullfilment required to speak with once the client has activated aims through the Google Assistant application/gadget.

Code facilitated on the Firebase cloud work stage is modified in NodeJS, it's not very hard to be completely forthright, troubles emerge in the absence of finish documentation (liable to be settled by Google and its group) and the way that we'll we working with a solitary tremendous NodeJS content (rather than many records).

With the present layout code set up (just around 10% finish the present usefulness), the line check is as of now more than 2000 lines so it'll most likely wind up 4000 lines previously we begin tossing in extra dialect bolster.

Valuing

Since we will cooperate with the Bitshares HUG REST API (an outside organized administration), we can't utilize Firebase's complementary plan (just permits outer systems administration to Google administrations). The less expensive choice for the time being is to pick the 'Burst Plan'.

Permit?

I'll doubtlessly be publicly releasing this whole task utilizing the MIT permit (both the Dialogflow and the NodeJS web satisfaction code segments) once dedicated to GitHub repos. The HUG REST API code is as of now MIT authorized on GitHub.

With this undertaking anybody will have the capacity to fork and run their own clone of the Beyond Bitshares bot. Ideally as opposed to promptly forking and contending however we'll take a shot at the one bot together :)

Musings?

b333.jpg

I'd love to hear your musings about this task, anybody keen on utilizing or building up this bot? Do you think this will be gainful for the Bitshares arrange?

What are your underlying impressions of the Google Assistant contrasted with different bots?

Do you have your own thoughts for a Google Assistant bot?

Sort:  

Woff, woff!

Hello @satinderdahiya, Nice to meet you!

I'm a guide dog living in KR community. I can see that you want to contribute to KR community and communicate with other Korean Steemians. I really appreciate it and I'd be more than happy to help.

KR tag is used mainly by Koreans, but we give warm welcome to anyone who wish to use it. I'm here to give you some advice so that your post can be viewed by many more Koreans. I'm a guide dog after all and that's what I do!

Tips:

  • If you're not comfortable to write in Korean, I highly recommend you write your post in English rather than using Google Translate.
    Unfortunately, Google Translate is terrible at translating English into Korean. You may think you wrote in perfect Korean, but what KR Steemians read is gibberish. Sorry, even Koreans can't understand your post written in Google-Translated Korean.
  • So, here's what might happen afterward. Your Google-Translated post might be mistaken as a spam so that whales could downvote your post. Yikes! I hope that wouldn't happen to you.
  • If your post is not relevant to Korea, not even vaguely, but you still use KR tag, Whales could think it as a spam and downvote your post. Double yikes!
  • If your post is somebody else's work(that is, plagiarism), then you'll definitely get downvotes.
  • If you keep abusing tags, you may be considered as a spammer. It may result to put you into the blacklist. Oops!

I sincerely hope that you enjoy Steemit without getting downvotes. Because Steemit is a wonderful place. See? Korean Steemians are kind enough to raise a guide dog(that's me) to help you!

Woff, woff! 🐶

Hello there!
Following to #kr-guide policy,
Make sure to use #kr tag only if you are writing some article related with Korea or written in Korean language.
The puppie will come here and tell you the details.
Have a nice day! :) #kr-guide!