Hi Bryan,
Sorry for the delay in replying.
I have recently had the following feedback from our SQA team regarding P240 dialpad:
"The dialpad functionality for Calisto P240 is exposed through IDeviceListener::onBaseButtonPressed API.
It is the BASE_BUTTON_DIAL_PAD property in eBaseButton enum.
It is available to all SDK access methods, Native, COM, COM Interop, and REST.
There is one trick, if VOIP call is NOT present, then dialpad key presses will trigger events all at once, but only after Talk button is pressed, for example, if device is in idle state and user presses keys 1-2-3 then at this point events will NOT show up, after user presses Talk button then 3 dialpad events will show up, all clumped up together like this:
Event 3: ICOMDeviceListenerEvents::onBaseButtonPressed: base button=[BaseButton_DialPad], dialed key=[1]
Event 3: ICOMDeviceListenerEvents::onBaseButtonPressed: base button=[BaseButton_DialPad], dialed key=[2]
Event 3: ICOMDeviceListenerEvents::onBaseButtonPressed: base button=[BaseButton_DialPad], dialed key=[3]
Event 6: ICOMDeviceEvents::onTalkButtonPressed: [Talk button pressed]
If VOIP call is present, then dialpad key presses will trigger events right away, one event per key press."
Let me know if that helps.
Thanks,
Lewis.