Here is a quick cheat sheet if you ever wanted to build a mobile app that can take advantage of the camera built into the device, capture the vehicle or vehicles nameplate(s) in a frame and process that image and send it on API that can analyze the image and relay back the information it just scanned. This app can be extended to fulfil requirements like checking if the vehicle registration is up to date or insurance renewal is overdue etc. provided if there are APIs already available that can deliver this information.
So what is the tech involved in building this app?
To build a mobile app that can be deployed on iOS or Android, I used the Visual Builder service from the Oracle Cloud stack. This service provides the capability to build Web as well as Mobile applications through a declarative approach with the ability to introduce code for any complex requirements.
To store the captured image and use the image for downstream application purposes I used the OracleContent & Experience service that comes with a rich set of APIs for content ingestion, public document link generation etc. From an enterprise architecture viewpoint, it makes sense to store the images with metadata in a content store, so I decided to archive the image using this service as part of the mobile app build process.
The most significant bit is to use a library / API that can process the image or OCR and send back the information we are interested n. For these purposes, I used the open source ALPR library. There are API’s available already if you want to fast track your app.
This one is optional. If you want to validate the information captured, we can set up a few API’s using the Oracle Autonomous Database with some data to complete the validation flow in the app.
In November 2018, I had the privilege to attend the Australian Oracle User Group national conference “#AUSOUG Connect” in Melbourne. My role was to have video interviews with as many of the speakers and exhibitors at the conference. Overall, 10 interviews over the course of the day, 90 mins of real footage, 34 short clips to share and plenty of hours reviewing and post-editing to capture the best parts.
I’ve been using VBCS for awhile now and it has really evolved over the past nine months. I guess that’s one of the wonderful things about these PaaS offerings from Oracle; we don’t have to wait so long for new features and capabilities.
Well, I figured out a way to do this in VBCS. Now I will admit right away, this is pretty ugly, so if you are a software development purist, please turn off your TV now!
I am thrilled with the Oracle’s Gen2 Cloud Infrastructure architecture, where Oracle completely separates the Cloud Control Computers from the User Code, so that no threats can enter from outside the cloud and no threats can spread from within tenants.
Obviously with more security, there comes more coordination, especially at the moment of invoking OCI resources APIs. Luckily, Oracle did a good job at providing a simple to use CLI and SDK (see here for more information).
For the purpose of this blog, I built a simple NodeJS application that helps demystify the security aspect of invoking OCI APIs. Check this link for examples of running similar code across other Programming Languages.
My NodeJS application manages OCI resources in order to:
List ADW instances
Stop an ADW instance
Start an ADW instance
I started this NodeJS application to list, start and stop ADW resources. However, I designed this application to easily extend it to invoke any other type of OCI resources.
I containerised this application with Docker, to make it easier to ship and run.
As we roll out the Oracle Digital Assitant workshop across Australia and New Zeland over the course of the next few weeks, below are the instructions for the participants interested to try out the platform and build a Digital Assistant.
If you have registered for the event, you would get an email to set up the password for your Oracle cloud account on the day of the workshop.
Once you set up the password access Digital Assistant UI to start building your first Digital Assistant.
Download the hands-on lab material from here that has detailed instructions on how to design and deploy a Digital Assistant.
Here are some interesting links that can compliment your learning process of the Oracle Digital Assitant or if you would like to re-visit them later.
Oracle Digital Assistant Channel: This playlist is dedicated to covering all the major features of Oracle Digital Assitant. You can watch in sequence for an end-to-end insight into Oracle Intelligent Bots, or dip into any video to learn about that features.
Additional Blogs that might help you in your Oracle Digital Assistant learning journey
In earlier articles, I discussed Autonomous Digital Assistant, provisioning a Digital Assistant, building skills and making it multi-lingual. In this post, I would like to take the discussion forward to address certain scenarios where there is a need for Human Intervention when the Bot cannot handle the conversation and instead redirect the chat to a human agent.
If you are following the Oracle Autonomous Mobile and Chatbot Platform announcements you would have now realised that we have announced the availability of the Oracle Digital Assistant platform as a new SKU under the PaaS offerings.
In this post, I will delve deeper into the Oracle Digital Assistant offering and answer what I anticipate will be common questions about the changes.
Building a Multi-Lingual Bot on the Oracle Chatbot Platform
First things first, if you are new to building Chatbot using the Oracle Cloud Platform, here are some quick videos to get you started on the platform and its capabilities. There is also an online MOOC (Massive Open Online Course) available on how to build your first BOT using the Oracle Platform and access the Bot through Facebook Channel.
Now that we understand how to build a bot let’s turn the Bot that can recognise the input from the end user conversing in his/her own language and respond accordingly.
The Bot platform allows you to bring your own translation keys (Google / Bing) and the Bot can be configured to detect the language. The bot further converts the user input to English, intent recognition by the NLP engine kicks off, based on the dialogue flow the bot structures the response in English which is again translated back into the language in which the question was asked by the user.
The latest VBCS 2.0 release makes developing Mobile Applications faster using a declarative drag and drop approach while giving the flexibility to the developer to inspect the code and inject any additional code that the tool doesn’t provide out of the box. You can build your app from the browser itself without the need for any code editor.