iPhone making no noise except ringtones My wife's iPhone is playing up.  It won't make any noise except for when it revceives a call.  Messages, etc. only vibrate.  Just now it made the unlock sound when I unlocked it, but I can't get it to make the sound again.   When you press the volume keys, the ringer icon appears with no volume bar:



The lock button was also playing up for about 12 hours.  It would randomly press itself, causing the power off slide to appear or the phone to lock randomly.  That problem went away by itself.

Also:


iPhone 4 with iOS 5.0.1
Tried power off and hard reset
Silent switch is off
Silent switch mutes all sounds when on
Bluetooth is off
I've cleaned the dock and headphone ports
The water damage indicator is red in the dock port and white in the headphone port (caused by baby drool)


Is there anything else software based I can try to fix this phone, or do I have to pay for repairs?
It's clear that it's not a hardware issues since the sound works in certain scenarios. It seems to be a software based issue. I would suggest backing up and restoring the device using these steps. Make sure you set it up as a new device so as not to transfer any old software back to the phone after the restore.