I was playing around, trying to get something entirely different, and I've started to pay attention to extra characters that client uses.
For now got some logs from the RP dungeon (The Three Missing Warriors, done with 2 characters) and summoning a puppet.
It seems that during RP dungeons and when summoning a puppet, server asks client to log in to a channel as a pet with specific EntityId (golems count as regular pets, according to packets :p), and account id/sesison key pair are same as when our character was logging in, although with puppet one packet seems to be missing.
Anyway, in both cases one major difference from a regular login is that there's an extra byte at the end of ChannelLogin packet, and seems to be constant (0x0b).
Gonna play around a bit and see if I'll manage to recreate the packet sequence on Aura.
The notable packets sent from server (and roles that I think they play):
RequestClientSecondaryConnect = 0x4E29;
RequestClientStartRP = 0x902A;
RequestClientEndRP = 0x902B;
Edit: Also, ironically, RP characters and puppets are in NPC entity id range