As usual there are many ways and as usual it depends on what other things your program is doing and what hardware resources you have available - in the PIC and outside.

When not registred the dutycycle of the signal is ~33% and when registred it's ~10%.
Run it thru a low pass filter and sample it with the ADC or use a comparator. Yes, the frequency is really low so you'll need a "large" filter but so what. It's not going to jump on and off the network several times per minute (hopefully).

Or, if your mainloop is somewhat constant in its execution time then simply poll the input every iteration and work out the time.

With that said, doesn't it have some kind of statusregister, with a bit indiciating network status, that you can read?

/Henrik.