It’s not the multi-line output per se. It the data type returned by “monitor” is a RouterOS array type. And one rule (which I forgot in my quick example of LTE monitor) is array cannot be interpolated, so a “:tostr” is needed. This will get rather ugly output, but should work:
$npushover ({
user="private"
token="private"
message="Mikrotik SXT Rebooted <b>nPushover</b><br><pre> $[:tostr [/interface/lte/monitor lte1 once as-value]]</pre>"
title="MikroTik SXTR"
html=1
sound="magic"
priority=0
url="https://192.168.x.1"
"url_title"="MikroTik"
})
Alternatively, you can collect the LTE monitor BEFORE build the PUSHOVER message, and use invidudual data items from LTE monitor in the string, like this:
{
:global npushover
:local mdata [/interface/lte/monitor lte1 once as-value]
$npushover ({
user="private"
token="private"
message="Mikrotik SXT Rebooted <b>nPushover</b><br><pre>$($mdata->"primary-band") sinr: $($mdata->"sinr") rsrq: $($mdata->"rsrq") rsrp: $($mdata->"rsrp")</pre>"
title="MikroTik SXTR"
html=1
sound="magic"
priority=0
url="https://192.168.x.1"
"url_title"="MikroTik"
})
}