#Region Service Attributes
#StartAtBoot: True
#End Region
Sub Process_Globals
Dim TimerService As Timer
End Sub
Sub Service_Create
TimerService.Initialize("TimerService", 5000)
TimerService.Enabled = True
End Sub
Sub Service_Start (StartingIntent As Intent)
Post
End Sub
Sub Service_Destroy
End Sub
Sub TimerService_Tick
StartServiceAt("", DateTime.Now, True)
End Sub
'POSTING IN THE BG
Sub Post
'Read file
If File.Exists(File.DirInternal, "status.txt") == True Then
Dim jsonString As String
Dim JSON As JSONParser
Dim mapEntries As Map
'Load JSON to a Map
jsonString = File.ReadString(File.DirInternal, "status.txt")
JSON.Initialize(jsonString)
mapEntries.Initialize
mapEntries = JSON.NextObject
'Iterate
Dim listEntries As List
listEntries.Initialize
listEntries = mapEntries.Get("entries")
For i = 0 To listEntries.Size-1
Dim entry As Map
entry.Initialize
entry = listEntries.Get(i)
'Process only those not ready yet
If entry.Get("status") == "pending" Then
'Prepare data to post.
Dim deviceMap As Map
deviceMap.Initialize
deviceMap.Put("Mac", "")
deviceMap.Put("DeviceName", Settings.DeviceId)
deviceMap.Put("DeviceKey", Settings.DevicePin)
deviceMap.Put("DeviceType","")
Dim postImageMap As Map
postImageMap.Initialize
'Dim Base64Con As Base64Image
'Base64Con.Initialize
'Dim ImageB64 As String
'ImageB64 = Base64Con.EncodeFromImage(File.DirRootExternal, entry.Get("file_name"))
postImageMap.Put("Image", "Image") 'EncodeAESString(ImageB64))
postImageMap.Put("QRCode", "QRCode")
postImageMap.Put("Vorname", "Vorname")
postImageMap.Put("Gebdate", "30-01-1987")
postImageMap.Put("Strasse", "Strasse")
postImageMap.Put("ScanDate", "")
postImageMap.Put("SaveDate", "")
postImageMap.Put("PLZ", "13407")
postImageMap.Put("Standort_id", Settings.Place)
postImageMap.Put("ProgrammVersion", "")
postImageMap.Put("Device", deviceMap)
Dim JSONg As JSONGenerator
JSONg.Initialize(postImageMap)
Log(JSONg.ToString)
Dim http As HttpJob
http.Initialize("http", Me)
http.Username = "Username"
http.Password = "Password"
http.PostString("http://1.1.1.1/api.php/image", JSONg.ToString)
http.GetRequest.SetContentType("application/json")
End If
Next
End If
End Sub
Sub JobDone (Job As HttpJob)
Log("JobName = " & Job.JobName & ", Success = " & Job.Success)
Job.Release
End Sub