Fix iMessage
- Reboot your iMessage app by tapping Settings, then Messages. Turn off iMessage, then turn off your iPhone by pressing and holding the on or off switch. Slide to power off and wait for your iPhone to power up again.
- Then return to the Settings and Messages menus. Turn iMessage back on.
To check if iMessage is turned on for your device, go to Settings > Messages > iMessage. iMessage is temporarily unavailable on your device or on your recipient's device. You might need to update your settings for Messages after you set up a new device.
Other Fix:
8 Easy fixes for iMessage is signed out error on iPhone
Checking iMessage server.
Restart your iPhone.
Enable and disable iMessage.
Check the Apple ID used for iMessage.
Reset iMessage Region on iPhone.
Ensure the iPhone has the correct date and time.
Update your iPhone.
Reset networks settings on iPhone.
---
Other Fix
If you are out of data, or the 3G/4G connection is poor, try one of the following:
In addition to switching the aerials on and off using Airplane Mode, turning your iPhone on and off again may also help it find a stronger signal. Log onto a nearby Wi-Fi network to send your iMessage. To find a nearby network, go to Settings > Wi-Fi and have a look to see if there is a free Wi-Fi network nearby. If your Wi-Fi connection is the problem then turn off Wi-Fi and use 3G/4G. If none of those tips works you may need to reset your network settings. Tap Settings > General > Reset > Reset Network Settings and see if this fixes the problem. If you still don’t get a data connection, and there is no WiFi available, you should be able to press and hold on the undelivered message and choose to ‘Send as text message’ from the options that come up. A text message should get through even over a GPRS connection.