Have you tried resetting the network settings with iMessage turned off?
To reset your network settings, tap
- Settings > General
- Then scroll down and tap Reset > Reset Network Settings
When the device restarts, turn on your iMessage again and let it activate.
iMessage will use sms/text messaging if the data link to the Apple servers are non-functional. You can configure the phone to send as text by default.
Note that all text messages on the phone are stored in a sqlite3 database file, so if you are concerned and want to access that information, performing an unencrypted backup of the phone will give you a copy of the sqlite3 database file. Though you would need to isolate it from the thousands of other files, all identified with a hash filename. Not that hard, actually.
The other option would be to jailbreak the phone and cd into the app folder for iMessage and access the messages database.
In either case, in answer to your original question, if access to the iMessage servers at Apple are inaccessible, then the phone will default to sms/text messaging.
Note, if someone wants to communicate secretly, there are plenty of apps for that. Plenty of Visual/Audio chat programs out there that completely bypasses the phone log systems.
If they are using FaceTime, then there is no need to use sms/text. Ie, the communication is all happening through the Apple servers.
If they delete it from their logs, then, depending on whether the log entry was purged or just flagged as not displayed, the entry may be recoverable. However, chances are, it's not recoverable.
IF your intention is to find out/keep track of someone's communication, then the only real practical way is to gain additional access to their phone. Ie, jailbreak and then installation of additional code.
One way to say retain the call logs, be they via sms/text or imessage, or factime, would be to:
- Have a script or program continually locate the sqlite3 database for the iMessage app as well as the sqlite3 database for the Addressbook. The location changes in the event of iMessage being updated. Or an OS update.
- Periodically backup the sqlite3 database and the addressbook database.
- Have those copied to your private server somewhere.
- Perform SQL queries against the databases to correlate which imessage goes with which addressbook entry, then generate a report based on the timestamps and correlated information.
If you want to do this without Jailbreaking the phone, you can write and publish an iOS app, which requests and accesses the Addressbook and the iMessage interfaces to achieve the same thing.
Best Answer
There is currently no way to switch to Text Message by default when iMessage you know is going to fail.
1) When you know that your iMessage is not gonna go then try this:
2) Now if you want to send Text Message intentionally by passing iMessage (consider scenario when you know recipient is not on cellular data or wifi) you can do the following: - Disable your Wifi - Disable Cellular data ( Go to Settings -> Select "Cellular" -> disable "Cellular Data" - Type iMessage and send it. It will get stuck with Top bar showing "Sending..." - Long press the iMessage text that is not going. - A menu will appear where you can choose "Send as text message"
Hope that helps!
Screenshots attached:Updating after fsb's comment below. "Send as text message" is not disabled in iOS 10.2.1 (latest as of 02/21/2017)