Как поддерживается связь

  1. Как родилась идея
  2. Создание протокола
  3. Как это работало

Сначала, когда Андрей уже решил ехать в Европу, и даже когда уже точно была известна дата начала поездки, никакой идеи вести ежедневный рассказ о его поездке на страницах сайта у меня не было. У него, похоже, тоже. У Андрея была одна навязчивая идея: чтобы я ему ежедневно высылал прогноз погоды на следующий день на мобильный телефон в виде SMS, благо это невеликий труд, который ничего, к тому же, не стоит. Я не имел никаких возражений делать это, ибо сам ежедневно узнаю погоду на сайте Gismeteo, но была одна загвоздка: чтобы прогноз погоды был точным, мне нужно было точно знать местоположение путешественников, иначе нет смысла.

После некоторых размышлений было решено, что Андрей будет сообщать мне местоположение также в виде SMS. Одновременно к нему пришла идея, что не плохо бы в том же сообщении указать и кое-какую другую информацию, которую мне было бы интересно знать. Предстояло только договориться, что именно он будет мне сообщать и как. Во время нашей поездки в Оредеж, как раз в день его увольнения, в электричке мы составили список парметров, которые он будет мне сообщать наряду местом ночевки. Этих параметров было много и он предложил для каждого параметра составить список возможных его значений и кодировать в SMS-сообщении каждый параметро только одним символом.

Примерно в это же время мне пришла в голову мысль, что, раз я каждый день точно буду знать, где они остановились, неплохо было бы графически на карте отображать их маршрут и вывешивать карту на сайте. Этой идее не суждено было найти свою реализацию, ибо точной сканированной карты Европы у меня не было, карта необходимой подробности и качества была бы очень большой и вряд ли кто стал бы ее скачивать... Словом, бросия я эту затею, но вместо того решил вести ежедневный текстовый репортаж. Вот, собственно, так и родилась его идея.

Как только я решил вести ежедневный репортаж и получил одобрение от Андрея, возникла необходимость написать протокол обмена информацией в бумажном виде, чтобы уже все было точно. Хотелось использовать имеющиеся в SMS 160 символов экономно, чтобы запихать туда побольше информации, и, в то же время, обеспечить защиту от ошибок - возмодных потерь отдельных сообщений.

Написание документа заняло несколько дней и получился 6-страничный трактат :). Полностью желающие могут ознакомиться с докмуентом, скачав его zip-версию (11 кБайт). Основные идеи следующие:

Каждое сообщение в первом символе содержит номер, постоянно увеличивающийся - если одно из них пропадет, то по пропавшему номеру я смогу запросить повторную передачу.

Выделена группа параметров, сообщаемых регулярно. За каждой позицией в блоке таких параметров закреплен свой параметр, поэтому его название можно не указывать, достаточно указывать только значение, выбираемое из списков возможных значений, которые были также сотавлены.

Также группа пареметров, сообщаемых редко: это сведения о поломках, заболеваниях и прочих ситуациях, возникающих не каждый день. Для них указывался 1 символ - тип параметра, 2 символ -к кому из путешественников он относится и 3 - собственно значение, тоже из списка.

Гениальной идеей Андрея было то, что можно было уже в ходе путешествия специальной командой зарезервировать новые значения в соответствующих списках, что избавило нас от заведомо бесполезных попыток предусмотреть все возможные ситуации. Например, укусы клещей у нас исходно в списке заболеваний не значились и были зарегистрированы Андреем, когда он находился уже в Швеции.

Распечатав в нескольких экземплярах окончательно согласованный вариант протокола, с ним Андрей и отправился в путешествие :)

Пока я решал бумажный вопрос (разумеется, постоянно обсуждая возможные варианты), Андрей решал вопрос энергетический. Он изготовил устройство для зарядки аккумулятора телефона от динамомашины велосипеда, чтобы не приходилось лихорадочно искать розетку и потом сидеть около нее, присматривая за телефоном (могут ведь спереть!). Вопрос был успешно решен, и очень кстати, потому что, похоже, путешественникам из-за постоянных ночевок в лесу было бы трудно иначе решить энергетический вопрос и обеспечить бесперебойную связь. Охотно представляю. что в конце дня, после сотни километров, уже не до поисков цивилизации... (кто-то там говорил об интернет-кафе?).

Как только я проводил ребят на поезд, лень вызвала в моей голове мысли об автоматизации и я засел писать программу, которая бы позволяла автоматически создавать отчеты по СМСкам от Андрея. Эта идея с треском провалилась! - несмотря на детально проработанный формат СМС, почти в каждой из них Андрей допускал мелкие ошибки, которые неплохо можно было исправить, исходя из здравого смысла, но компьютер их браковал. Мне ничего не оставалось, как каждый день набирать вручную текст отчета за очередной день, и кодировать все это в HTML.

К концу второй недели это занятие стало невыносимым! :-) Поэтому я решил пойти на компромисс: разбивку текстат СМС на поля производил я, но тут же заносил их в базу данных Microsoft Access, а странички уже на основании этой базы данных строились автоматически - они были написаны на ASP. Все прекрасно работало, и обновления стали выходить более оперативно, но ничто не вечно: через две недели примерно хостинг стал вести себя очень нестабильно - пришлось от него отказаться. Впрочем, отказ занял не более часу - ASP-скрипт был уже написан и не составило труда переделать его в программу на VBA, которая строила страницы репортажа о поездке на моем компьютере.

Так мне удалось продержаться до возвращения путешественников :-) Мне кажется, что идея такой организации репортажа (с помощью базы данных сообщений) существенно облегчает труд :-) А вот протокол СМС необходимо на будуще существенно упростить и переработать - принцип его был верным, но слишком много лишнего. Поэтому в ближайшее время я постараюсь выложить и вторую версию - вдруг кому пригодится :-)

Роман. (zrw@spbgmu.org)

Wild Travellers' Page
Главная

О нас
Европа 2002
Все наши путешествия
Амельчино 2007
Ракетная база
Путь на север Norway
Вокруг Ладоги
Неболчи-Медвежий край
Город Мышкин
Экзистенция
Начало экзистенции
Продолжение экзистенции. Ромкина философия свободы
Продолжение экзистенции. Философия Свободы Александра
Сало-байкеры
Информация
Одежда для похода
Потертости у велосипедистов
Как проезжать на велосипеде большие растояния
Опасности при активном отдыхе
Маскировка в походе
Что взять в велопоход
Питание в велопоходе
Где взять воду в походе
Электропитание мобильных устройств в походе
Как сделать гамак
Велосипедные болезни
О диких путешественниках
Ссылки


INFOBOX - хостинг php, mysql + бесплатный домен!