Justin,
There is a good set of documentation and resources on Cisco's developer community website. The phones support several XML objects that you can use to "control" the phone. Keypresses are definitely included. Any physical button on the phone can be remotely "pressed" if you leverage the methods defined in the IP Phone SDK. Check the following URL for more information and resources:
http://developer.cisco.com/web/ipps
HTH.
Regards,
Bill
Please remember to rate helpful posts.