When workers need to access a portion of railtrack (a block), they need to request a possession and isolation from the command center of the line. A possession means no train can approach less than two blocks from the block they will work on, and an isolation means the power is cut (most lines in Europe are electrified).
The procedure to perform this has been specifically designed to avoid miscommunications, with multiple back and forth between the operators on the ground and the command center to ensure one doesn't mindlessly make a mistake. Usually it's done by phone but I believe some lines now have apps for it.
This accident should not have happened. If the possession had been granted then at the very least the signaling system would have warned the train driver to stop several kilometers before he reached them. On modern lines the train would have stopped automatically, without human intervention. And signaling systems are extremely robust, they don't "bug" in a way that makes this possible.
To me this must be a human error. Either the workers worked without a possession (because they though it would be ok, the line was not operating at that time, it was a short operation, yadda yadda. The exact reason why possession requests are mandatory...) or it was an old line and the train driver was not paying attention to the point of ignoring several, big reg lights telling him to stop.
Either way, no GPS location sharing would have helped if someone disregarded safety instructions. :/
Source : I'm not an expert but I did an internship in a company who designs signaling systems in Europe and my project was specifically on the subject of replacing phone calls for possession and isolation with an app on a PDA.