Luisro,
Let me try to help. This is what I would do to resolve your problem.
1. Begin with MySQL and create a new table that holds the information for the messages that you want to send.
2. Now work with Triggers.
Tutorial Here. Create a trigger to fire whenever a user loads a new job to insert the message data in the new table.
3. I use B4J for the next step but VB should work. Create a desktop "server" that looks every few minutes at the "New Table" and finds if a new job has been created. Use this to send a message then to Firebase to send a new Push Notification message.
Here is some sample code for sending the message (in B4J)
Private Sub SendMessage(Topic As String, Title As String, Body As String)
Dim Job As HttpJob
Job.Initialize("SendMessage2", Me)
Dim m As Map = CreateMap("to": $"${PrivToken}"$)
Dim data As Map = CreateMap("title": Title, "body": Body)
m.Put("data", data)
Dim jg As JSONGenerator
jg.Initialize(m)
Log(Job.PostString("https://fcm.googleapis.com/fcm/send", jg.ToString))
Job.GetRequest.SetContentType("application/json;charset=UTF-8")
Job.GetRequest.SetHeader("Authorization", "key=" & "Your Key Here")
End Sub
4. In b4a, you will create an app to accept the incoming message and act on it. Remember you need a service called "FirebaseMessaging". Typically the code would look something like this (it is in the Firebase tutorial as well - forgive the duplication)
Sub Process_Globals
Private fm As FirebaseMessaging
End Sub
Sub Service_Create
fm.Initialize("fm")
LogColor("In Firebase Messaging Service",Colors.Red)
SendMessage("general","app: job Monitor","Welcome to Job Monitor")
End Sub
Public Sub SubscribeToTopics
fm.SubscribeToTopic("general")
Log("Device Token: "&fm.token)
End Sub
Sub Service_Start (StartingIntent As Intent)
If fm.HandleIntent(StartingIntent) Then Return
End Sub
Sub fm_MessageArrived (Message As RemoteMessage)
Log("Message arrived")
Log($"Message data Token: ${Message.GetData.Get("token")}"$)
Dim n As Notification
n.Initialize
n.Icon = "icon"
n.SetInfo(Message.GetData.Get("title"), Message.GetData.Get("body"), Main)
n.Notify(1)
End Sub
Sub Service_Destroy
End Sub
Note: When you create your Firebase project and you wish to have several topics that your user can subscribe to - you will notice that you cannot create them in Firebase. Your first message might arrive saying "null, null" - this is OK - just send a message to each topic you want and give Firebase a day or so and they will magically appear as topics on your Firebase Console. If you now send a message to a specific topic it should be received correctly.
Now all you need to do is react to your message.
Remember from here you can decide what to do. You can load the job data in the message with JSON and then decode it when it arrives and display this in your app or you could react to your message that contains a job number and then via your php web service retrieve the data from your MySQL server and display that on your app.
I trust that this will give some pointers in the right direction.