Finally, I found a workaround by declaring items to hold the state of Mqtt and Pushover actions, putting them into a SYS_StartComplete group and setting them with CRON during startup.
The .item file:
Group:Switch:AND(ON,OFF) SYS_StartComplete "System start complete"
Switch SYS_MQTT_Started "MQTT started" <automation> (SYS_StartComplete, System)
Switch SYS_Pushover_Started "Pushover Started" <automation> (SYS_StartComplete, System)
The .rule file
var systemStarted = new Boolean(false)
var mqttStarted = new Boolean(false)
rule "Notify OpenHAB started"
when
System started
then
if(! systemStarted){
systemStarted = true
if(! mqttStarted) {SYS_MQTT_Started.postUpdate(OFF)}
}
end
rule "Monitor MQTT action addon"
when
Time cron "0/10 * * * * ?"
then
if(! mqttStarted){
try {
publish("mybroker", "mydummychannel", "0")
}
finally {
mqttStarted = true
SYS_MQTT_Started.postUpdate(ON)
}
}
end
rule "System start complete (push notification)"
when
Item SYS_StartComplete changed to ON
then
SYS_Notification.sendCommand('Open HAB is actually started' + ';0;16;1;;;;')
end