As you would expect, as the trigger node sends a msg.payload not a msg.
Why not set the topic prior to the trigger and send both on and off from the trigger (to same or different outputs).
e.g.
[{"id":"b5db95460639fe7a","type":"inject","z":"da8a6ef0b3c9a5c8","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":120,"y":580,"wires":[["56e5fb6e81c96f21"]]},{"id":"56e5fb6e81c96f21","type":"change","z":"da8a6ef0b3c9a5c8","name":"","rules":[{"t":"set","p":"topic","pt":"msg","to":"tasmota/topic","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":300,"y":580,"wires":[["86dfb82af7806939"]]},{"id":"86dfb82af7806939","type":"trigger","z":"da8a6ef0b3c9a5c8","name":"","op1":"on","op2":"off","op1type":"str","op2type":"str","duration":"250","extend":false,"overrideDelay":false,"units":"ms","reset":"","bytopic":"all","topic":"topic","outputs":1,"x":500,"y":580,"wires":[["441b83f51eec6037"]]},{"id":"441b83f51eec6037","type":"debug","z":"da8a6ef0b3c9a5c8","name":"debug 116","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":650,"y":660,"wires":[]}]