Skip to content

Repository files navigation

drawing


Description

An application that allows a shopper to get a live review for a desired product. This extends the capabilities of online shopping and provides a better and more realistic experience. Classification is done based item category, as each user might be an expert in a specific category.

Credit to Dr.Majid Khonji for providing the idea of application, and the support during the project.

To create an account:

  1. go to sign-up page
  2. enter a valid phone number and password
  3. An SMS code we be sent, go to the verifying page and type it in.

drawing drawing

Main pages:

  1. Items: shows list of items which can be used to send a review request.
  2. Request: list of other peoples requests sorted into categories.
    • user requests are not shown here.
    • any request that gets replied is removed
  3. Reply: list of replies to requests sent by user.
  4. Settings: user's balance, and list of user's requests

To send a review request:

three ways possible:

  1. go to items page, and click on the desired item, and add a description
  2. go to items page, select custom item, add item name, and description
  3. go to items page, select URL item, add URL of desired item.
    • works on amazon, ali-express, noon

drawing

To replay to a request:

  • go to request page, select the category, click on the item to view the description, and click for longer time to send a reply.

drawing

To View a response:

  • go to replies, click for longer time to see the response, after viewing click on the item again to rate it.

drawing

Balance:

  • Each user has a balance of 100 by default, and after rating a video, the amount is moved from your account to reviewer account, with 5% deducted.
  • Amount depends on the rating + view time.

drawing

Security features:

  • SSL encrypted communication using public certificate signed by Let's Encrypt Authority X3.
  • Passwords are stored after being hashed using SHA-1.
  • Database credentials are not stored in the server side directly.
  • SQL injection protection: by validation every input in the server side.
  • Two way authentication: by using a preshared key for the server to validate the application.

ssl cert

Software architecture:

  • the Application is developed in java.
  • Server side has php code with MySQL database.
  • REST API is used for communication.

Streaming:

  • uses RTMP "Real Time Messaging Protocol"
  • RTMP is an application layer protocol.
  • It uses TCP protocol, port 1935.
  • API provided by MUX.com
  • provides video and audio from replier to requester only.
  • On client side, it uses m3u8 format videos over HTTPS.

drawing

Automation part:

  • URL parsing: allows the user to directly copy the URL instead of writing the item name.
  • Category classification: classifies the items into categories, with the help of data that has almost twenty thousand items.

drawing

Current limitation:

  • The stream record code has compatibility issues with API 24.

Future work:

  • Improve the video quality of the stream
  • Add caching to improve speed and reduce bandwidth usage.
  • Improve the GUI, and make it more user freindly.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages