The overall entity setup already looks very good and it shouldn’t be difficult to achieve that only players activate it.
First thing you might want to do is checking your names. In the map file the func_invisible_user entity is called door_invisible and in the script it’s called door_trigger. Either is fine, but it must be the same. Personally, I’d probably go with door_trigger and rename the entity in the map.
I would recommend to always use the solid spawnflag on script_movers. In the past I ran into problems when not using it. Prime example that burned itself in my memory is that moving water like in Oasis or DIngenskirchen also need to be solid to work properly.
Then you want to slightly change your door_trigger routine in the script. First thing is to replace trigger door_trigger main in the spawn routine (line 25) with trigger door_trigger up to directly open the front door at map start. You need to change that line, because we are now also going to rename trigger main into activate. Without the trigger in front! That is the routine that gets executed whenever a player activates the func_invisible_user entity.
Hope that helps.
// EDIT: Yes, I am using notepad++ in light mode.