Well from what I gathered on my own research of trying to make basically a team select by using spectator. Spectator can’t call server commands. Least not through bp. And clients always spawn as thier own pawn they can’t share one though you can call events to influence one, but you are still your own pawn when doing this even if it’s just a camera.
You may want to create a pawn class that acts like a spectator that is default then use widgets to change it.
You’d be basically changing pawn class and respawn as it. But don’t use an actual spectator because you can’t call to server to replicate it.