FacetNormal is exactly what you are looking for. And the terms you implemented are correct for the variational form above.
But as you said that Gamma_s is an interface, I would expect it to be a interior surface measure dS which you integrate over, and in this case you have to restrict the quantities using, e.g.,
inner(n_1('+'), u('+'))*q('+')*dS(1)
as described here Integrating over an interior surface
Also, no need to define n_1 and n_2 here, you can just use one object for these (it is the same anyway, and is restricted by the appropriate (surface) measures)