Bound particles to mesh. Is it possible?

Hello fellows.
I was making artwork for weekend challenge and encountered one problem with particles.
My goal was to make sparks flying out of the bottle in a swirly manner. And for static image I managed to make it just by finding random acceptable frame, here you can see the result -


But now I want to animate it, and some frames doesn’t look so good because particles are not bound to the bottle and passing freely through it walls, like here -

The emitter is made from inner side of the bottle with prolonged neck -

So the question is - how can I bound particles to the inner space of the emitter or in other words - to prevent them from going through the bottle walls.

ps. rendered image you can find in the weekend challenge #848.

Add a collision object, basically a copy of a bottle but invisible for render and with simplified geometry

Are you talking about that option? I added copy of the emitter to the new collection named collision, but it didn’t affect particles in any noticeable way : (

It’s another setting, “Collision” is in “Physics” tab. It will appear in modifier stack after enabling.