Звучит так, будто у тебя действительно тайм-аут. Вы говорите, что иногда это работает ... Есть ли у вас проблемы с приемом данных в вашей сети передачи данных 3G (или что вы используете) в вашем районе?
Если вы пользуетесь интернетом из одного места и страницы не загружают обновления и тайм-ауты, то это, вероятно, ваша проблема.
Попробуйте, где вы знаете, прием хороший. Вы можете обойти эту проблему, перехватив исключение и повторить отправку сообщения еще несколько раз, прежде чем отправлять пользователю сообщение о том, что сообщение не может быть отправлено или что-то подобное. Еще лучше было бы сохранить историю неотправленных сообщений, чтобы пользователь мог отправить их позже. Конечно, я предполагаю, что отправка сообщения осуществляется пользователем. Если нет, то вы можете время от времени проверять прием данных (каждые несколько минут), а затем повторно отправлять их, когда они достаточно хороши, пока они не пройдут.
Надеюсь, что я помог.