Hi the CallCommand is the correct way to go.
And @Cairyn it's in the Snap module because it uses some logic that is already implemented in the snap module such as the enabling state or other internal parameters storage logic. So using the CallCommand make sure everything is setup correctly.
Note that in the end the solo things are only setting/clearing the NBIT_EHIDE of objects.
Cheers,
Maxime.