The RJ45 already has the One-wire bus, and the front end processor has the maths to read and report temperature(s), so if that is already in use, extend the bus - maybe add provision for the extra sensor - but changes can be problematical as the front end’s sketch is easily overwritten when you update emonCMS, which could destroy your changes.
I’m not a Pi expert, but I think the generally recommended way to sense the valve position would be to use the Pi’s GPIO, in much the same way as you can add a second pulse count, and the code to make sense of it. This link might help you: Pulse monitoring on a Pi - #3 by pb66
Against that is, the pulse input is already on the RJ45 as you say, and requires the pulse counting code removing and replacing with a straightforward “steady-state” read of the input pin. It might well be preferable to combine the two in a single changed sketch for the front end '328P. The sketch is split across numerous files - not altogether logically split in some instances, so while you’re working on the changes, my advice would be the throw the lot into a single file, even if you split it back into the constituent parts later (but there’s no need - it compiles into one whichever way the source is arranged).
If the valve position is part of the serial data packet from the front end to the Pi and emonHub, it will simply appear in emonCMS (with a minor change to emonhub.conf) as another input from the emonPi.