Overview: I'd like a C# desktop application that will regularly query facebook opengraph/API for selected businesses and store the results in a local database. The data to be gathered is below. This program will be run on a Windows 10 home computer. I prefer a free version of the MS SQL server (I have MS SQL Server 2014 installed already on the target computer). This application will need to be able to run at automatic intervals or running continually. When new updates are available for a business I would like an notification area available where I can quickly review the new updates or changes that have happened. I would like the option to have emails sent when an update notification happens using a third-party smtp service (mailgun) or gmail account. I'd also like an additional notification area where new businesses in a specified city are displayed with an option to add them to the query routine.
The Interface: I’d like a way to edit the businesses that are being queried with facebook opengraph. I’d like a notifications area where I can view and clear results that I have reviewed. I’d like the option to clear individual or multiple notifications.
The information to gather for each predefined business on facebook are:
* Posts since the last check for each of the businesses (full details, links to associated images/videos/etc) - locally stored copies of posts expire after 1 year.
* All current and upcoming events (full details) - past events in local database expire after five years.
* Update local database information about the current Facebook ratings for each business.
* Store and watch for any changes to the company information like address/phone/hours/website.
* Link to their page (sometimes facebook urls change).
I would like the option to make any of the new information the application finds to be sent as an email. For example, if a business creates a new event on facebook I would like the option of that information to be sent to an email address that I can specify. Another example would be a phone number or website change for the business that I would like to get an email notification for. The application will need to be able to work with the free plan of the mailgun smtp service.
Checking for new facebook pages in a given city:
I would also like to have the program check to find any new business pages in a specific city. I’d like this to be separated from the regular notifications and an ability to add this newly detected facebook page to the checking routine. I don't need or want place page information. Only official/claimed business facebook pages.
If the new facebook page/business is one I would like to add to the checking procedure, I'd like to be prompted or press a button to have it programatically add it to the 'check list' without manually entering it myself. Example: “Add business” button in the New Business notification area.
This application will be extended in the future to query other APIs.
If you would like to quote for the additional APIs as well, they will be Yelp (overall ratings data, business details), Tripadvisor (overall ratings data and business details), Groupon (matching deals for business), and spotzot (matching deals).