Windows Service API Caller
Budget: $750 – $1,500 AUD
High Level Overview:
A Windows Service that calls a REST API endpoint, posting data read from a local text file when ever the file contents change.
Detailed:
The app will run as a Windows Service, will have an executable installer and will start automatically with PC.
It is to have a system tray icon that advises the date/time of the last data post and has two menu options:
1. Settings (will open a settings window)
2. Sync (this function is explained below)
The Settings window will automatically open after install to gather the settings provided by the vendor. The settings window will contain the following options (with example data):
API Key: 45AB74FE87C65
API: https://restapi.example.com/endpoint/
Directory: C:\ThirdPartyApp\SubFolder\
Daily Filename Prefix: DayData_
Daily Filename Key: YYYYMMDD.dat
Sync File: SyncData.dat
The daily text file (DayData_20210824.dat) will be monitored for new line additions and will POST each new line to the API in order they were added to the file.
Body Object:
{
sync: "0",
data: "<new daily line data>"
}
The date format of the Daily Filename Key can be changed i.e. DDMMYYYY, MMDDYYYY, YYYYMMDD (the year could also be just YY for each three options)
The Sync File will only be POSTed if the 'Sync' option from the system tray icon menu is selected.
Body Object:
{
sync: "1",
data: "<sync file data>"
}
After the Sync File has been POSTed, it must delay for 2 minutes then also POST the complete current daily file
Body Object:
{
sync: "1",
data: "<daily file data>"
}
The text files contain equal length lines of HEX and can range in size from KB to MB (no larger than 2MB though).
A Windows Service that calls a REST API endpoint, posting data read from a local text file when ever the file contents change.
Detailed:
The app will run as a Windows Service, will have an executable installer and will start automatically with PC.
It is to have a system tray icon that advises the date/time of the last data post and has two menu options:
1. Settings (will open a settings window)
2. Sync (this function is explained below)
The Settings window will automatically open after install to gather the settings provided by the vendor. The settings window will contain the following options (with example data):
API Key: 45AB74FE87C65
API: https://restapi.example.com/endpoint/
Directory: C:\ThirdPartyApp\SubFolder\
Daily Filename Prefix: DayData_
Daily Filename Key: YYYYMMDD.dat
Sync File: SyncData.dat
The daily text file (DayData_20210824.dat) will be monitored for new line additions and will POST each new line to the API in order they were added to the file.
Body Object:
{
sync: "0",
data: "<new daily line data>"
}
The date format of the Daily Filename Key can be changed i.e. DDMMYYYY, MMDDYYYY, YYYYMMDD (the year could also be just YY for each three options)
The Sync File will only be POSTed if the 'Sync' option from the system tray icon menu is selected.
Body Object:
{
sync: "1",
data: "<sync file data>"
}
After the Sync File has been POSTed, it must delay for 2 minutes then also POST the complete current daily file
Body Object:
{
sync: "1",
data: "<daily file data>"
}
The text files contain equal length lines of HEX and can range in size from KB to MB (no larger than 2MB though).