AttackedByObject is only thrown in response to active attacks where the attacker can be identified: plain attacks, casting a spell, etc. How are you applying the damage?
CharacterReceivedDamage is indeed triggered whenever anyone receives damage for whatever reason.