"If during a support call a technician asks a customer to enter a short code, CIQ will be listening for it; when it’s entered, CIQ will relay the appropriate diagnostic information to the carrier. Any keystrokes beyond that are ignored."
Their explanation then, for monitoring keystrokes, is that they are waiting for a diagnostic code to be entered by the user. Presumably this can be done from anywhere within the phone, on any platform, without regards to running applications.
"During a support call a technician asks a customer to enter a short code, CIQ will be listening for it"
Without knowing a ton more, maybe there's a _much_ better way to do this..like having the user explicitly launch a program rather than having something always running and always listening. No argument there. But if you're thinking they should abstract away some "code_entered" event, ultimately something lower-level is going to be listening to each keypress and looking at sequences to raise those events.
Some of this stuff happens at a lower level than a lot of us might be use to programming nowadays. I'm not sure that there's necessarily a pretty error event they can hook into. Something about all of this reminds me of using stuf like Spy++ on Windows and you see just how much raw data is available at the lowest levels