oracle-quickstart / oci-cloudnative

MuShop - Cloud Native microservices demo for Oracle Cloud Infrastructure
https://oracle-quickstart.github.io/oci-cloudnative
Universal Permissive License v1.0
246 stars 169 forks source link

Mushop contact page to accept Send a Note feedback input and store the data in ADB #284

Open karthiksuku opened 3 years ago

karthiksuku commented 3 years ago

Mushop Contact page to accept "Send a Note" feedback input and store the data in ADB

jeevanjoseph commented 3 years ago

This is a good suggestion. However can you provide more info ?

There are multiple services that interact with ADB today. Orders uses ATP (shows typical JPA driven usage with hibernate under the covers), carts uses the JSON collection storage in ATP( shows using SODA), catalogue uses it for product info(shows Golang integration ), users service uses it too( shows nodeJS integration, and the node driver with an ORM ). Generally I’d say that every feature in the demo app needs to have a well defined purpose. Users reading the code should be able to gain something and a particular topic is ideally covered once and not redundantly.

Is there a specific DB feature, integration or practice that we can showcase with this enhancement?

karthiksuku commented 3 years ago

Hi Jeevan , currently I have used used Order in ADB to trigger intergation to backend EBS / Fusion ERP using OIC.

Regarding the specifics with this reqest - What I am wanting is a way to capture feedback from the comments page - and it gets stored in ADB . Once its there - I am tyring to create APEX app and enbedd AI Language service to analyse the sentiment and display customer sentiment analysis APEX dashboard.

jeevanjoseph commented 3 years ago

That’s an interesting one. Not sure why a DB or apex is required though. The Language service is seemingly is available over REST, and one could simply call the endpoint with text to analyze it, and display results right on the UI. If at all, perhaps an ephemeral store/cache like redis might suffice.

If you wanted to build a standalone apex app to showcase language service, you could simply build a form for text entry in apex itself.

The way I see this making sense for MuShop is to build a new service for sentiment analysis and use that service to call language service. However the credentials management needs serious thought.

karthiksuku commented 3 years ago

well summarised re sentiment analysis as there are several ways to do this. At this stage the reqest is simple - Mushop to enable rudumentaty function to capture feedback @ Mushop Contact page and store in ADB.

jeevanjoseph commented 3 years ago

The rudimentary persistence of feedback items to an ADB instance does not add anything new to MuShop, as we have multiple examples of persisting data into ADB with various languages and frameworks. Of Course, you're free to implement it for your needs if you choose. I don't think I'd favor a PR on that to the main branch at this time. @mvandervliet & @junior - what's your opinion ?

Sentiment analysis as a separate feature is pretty interesting and we can track that using a new issue.

karthiksuku commented 3 years ago

Hi Jeevan , lets zoom to discuss. To use the sentiment analysis - we need to persist the feedback data somewhere... if it's in ADB it's easier for users to consume and innovate

mvandervliet commented 3 years ago

Yes, warrants discussion. Generally speaking eCommerce apps always include features for reviews/ratings/feedback. In MuShop, this is omitted for sake of feature simplification where the concept is deliberately broad for the purpose of demonstration. I'm not opposed to accommodating this feature/service(s) with the assumption that administrative/inspection would be done via extensions (like apex) as a separate showcase. Any such demos or integrations should be also be documented and shareable.

karthiksuku commented 3 years ago

Thank Matt / Jeevan