Is there a dynamic way for Direkt Blueprint Communications?

Hello,

is there a way to read out variables from a specific blueprint inside a level on approach? Maybe with LineTrace for example.
Let’s say i have pushable boxes all around placed inside my Level. When my character approaches one of these boxes from one of the four directions, the character than communicates with this specific box, to check in which direction the box can be pushed.
The status of each direction will be set/stored inside the box itself, with simple Boolean- variable Types, like North, East, West, South. When there are obstacles in the way, the box sets the specific direction to false, so it can’t be pushed in this direction.

The thing is, i will have different characters i can swap to back and forth. When Player01 is standing below a box and than i swap to Player02 and place him in front of the box, Player01 can no longer push the box in the upper direction. So the box has to tell him this, before i swap back to Player01 and try to start pushing the box…
But there will be different types of boxes in my level and a different amount of instances of each box type.
So with the LineTrace i might maybe be able to identify the type and instance of a box, and than try to communicate with this specific box, to get the variables.
But how would i do that?

I’ve read the chapter about the Direct Blueprint Communications but variable type and instance should be set somehow dynamically for my case…