Your iphone will work out if the receiving device is suitable for getting an iMessage. If it isn't because it doesn't have a data signal then it will fall back to SMS. There is a setting under messages (Settings > Messages > Send as SMS) where you can turn this behaviour off if you only ever want to send iMessages, but by default the SMS fall back is on. iMessages will show as blue and SMS messages as green, they will also show some text above each message when you switch.
I have the same concern as barzille.
From the tests i've done iMessage does not fall back to SMS when the receiving device doesn't have data to receive the iMessage. The message sits undelivered until data is availble again.
The SMS fall back only applies to the device sending it does not check that the other device can receive (other than the 1st time you contact that person after they install OS5 and an iMessage chat is established)
For me this presents a real problem when I go abroad and turn off my data roaming I won't receive messages from anyone who has already established imessage chats with me.
The only way the sender knows the message hasn't been delivered is if they check back in their messages.
There must be a way around this?
Here is a variation on the problem. A friend updated to an iphone last Friday. Once the system recongnised the phone number's link to her apple id, our texts began to be sent via iMessage. She missed her Android and on Tuesday switched back.
Even though she is no longer on an iPhone and does not own any other iOS device, the texts I sent continued to be blue. None of the messages were received and I had no indication that they failed to send.
It is clear that iMessage is not checking to see if the messages are recieved and is never falling back to sms. Re Chris Howe's comment above, there is no "send as sms" option under settings>messages on the iPhone 3GS. This ability seems to be reserved for the 4 and 4S.
The only solution seems to be to deactivate iMessage completely so that all messages are sent via sms.
I know that Siri is beta software. It seems that iMessage is too.
I have had a similar problem this week and have only found a partial workaround. My husband and I both have an iPhone 4s and I sent an SMS text to him as I was away from wifi. He received it and sent a reply which went as an iMessage because he was on wifi. I obviously could not receive his reply - or the next 2 - until a phone call revealed our problem.
We now know that when he replied, he should have touched the blue iMessage ‘speech bubble’ of the reply to reveal the option to ‘Send as SMS’ and the speech bubble turns green and off it goes.
Surely, if a message is received as an SMS then the default reply position should be as an SMS.
I got same problem. When I have an Internet connection I always send messages as an imessage, but iPhone doesn't check if receiver has Internet connection as well. If it is undelivered iPhone just waits till receiver turns on Internet connection, but, theoretically, it supposed to resend a message via SMS with turned "Send As SMS" option.