- One overarching thing we'll have to think about is whether these are updated every week, live updated or if they're updated every month. This is true of every report but I think these reports may not be so dynamic so it might be something that we need to think about.
- The very first challenge with this is to scrape the social media or reviews of the particular company. There are companies that have made a business of this itself but there seem to be some simple scrapers to get instagram replies, google play store reviews etc. I haven't been able to test all of these but I'm sure this can theoretically be done. It's probably a good place to start with support tickets or from play store reviews since they look relatively easier to do.
- FreshDesk API is fairly straightforward and you can get the list of all tickets in the last month quite easily if an API key is provided.
- I think one challenge we're going to have is to determine what insightful comments are vs what not so insightful comments are. For example a comment that says - "This product is amazing" is not as insightful as a comment that says "I really liked feature XYZ".
- In the format that you've given it might be hard to pick out a full sentence or a full summary but can definitely identify keywords that came in negative and positive feedback. We can make sure the keywords are not very generic and specific to the product. There are some basic NLP functions you can write in Python to do this. No real rocket science.
- Lots of apps seem to be showing word clouds so that's also something we can consider in terms of showing to users.
### Approach
- Scrape/give an option for users to upload tickets
- Store each ticket along with a sentiment score as well as well as usefulness score
- Create embeddings on GPT for each of the tickets to answer questions using natural language
- Graph 1 & 2 - Cluster the negative feedback into groups - these can be predefined clusters or clusters that the app creates. We can then show them the clusters and the number of users in the cluster
- Graph 3 - Cluster the positive feedback into groups and show the clusters and number of users in this cluster
- Graph 4 - Users suggested to get feedback from would be tricky to show but I'm thinking we can basically show the users that gave negative feedback that was pretty generic