solenoid hammer trigger control
I would go for the timing method you have in mind. A 555 probably won't be accurate enough to do what you need. I suspect that the timing of the trigger pulse will be fairly sensitive and you'll want to drive it with a half bridge to turn it off quickly as well, and not just let the spring make it return.

So at the very least (in my opinion), you need a micro-controller like an Arduino (and possibly a programmer), a Solenoid strong enough to push the pin, and a half bridge to drive the solenoid.