bt-logo40x50.png (6281 bytes) [ Tools ] [ Tester ] [ Key ] [Key Pro] [ Map ] [ Look ] [ IP-телефония ] [ Back ] Botik Tools ] History ] Download ] [ Call for Developers ]

Потенциальным разработчикам

Технические подробности

Программы из пакета Botik Tools как правило написаны на языке Tcl/Tk и могут быть (надеемся) легко перенесены на любые платформы.

При разработке были предприняты усилия для облегчения такого переноса.  Избегалось использование системозависимых средств, применялись обращения к стандартным, существующим на любой платформе, утилитам (например, программа Botik Tester опирается на системные сетевые утилиты: сетевые проверки она не делает сама, а вызывает "из-под себя" существующие утилиты ping и tracert с необходимыми опциями).

О переносимости

Настройка на различные платформы (русская/английская версии MS Windows 9x/NT/2000/XP или OS Linux) должна ограничиться (надеюсь):

  1. Перекодировкой скрипта в кодировку, принятую в целевой операционной системе (изначально Tcl/Tk-скрипты написаны в кодировке Windows CP-1251) и изменением представления концов строк (изначально в скрипте используются CRLF — как принято в DOS/Windows,— в Unix-ах потребуется использовать LF, в MacOS — в CR).
  2. Переопределением команд вызова  ping / tracert   (и их опций) и переопределением шаблонов (регулярных выражений), которыми "разгрызаются" результаты этих команд — все это сосредоточено в двух коротких подпрограммах скрипта: rawPing и rawTracert (используется в программе Botik Tester).
  3. Переопределением действий, позволяющих "из-под себя" открыть умолчательный Веб-браузер (на нужном URL) — это сосредоточено в короткой подпрограмме скрипта rawShowURL (используется в реализации ссылок из встроенной справки на Веб-странички).

Системозависимые процедуры (rawPing, rawTracert и rawShowURL) составляют около 100 строк из более чем 4,000 строк кода пакета Botik Tools.  Поэтому можно ожидать, что перенос пакета на любую платформу займет час-другой работы.  Кроме того, авторы готовы серьезно участвовать в переносе пакета Botik Tools на новые платформы — см. ниже.

Призыв к сотрудничеству

С благодарностью будет принята любая помощь инициативных программистов в деле развития пакета Botik Tools.

Конечно, для многих язык Tcl/Tk незнаком.  Но, попробовать себя в незнакомом языке — нормальное упражнение для программиста.   Тем более, что для языка Tcl/Tk есть свободные реализации (ActiveTcl8.4.1.0-2-win32-ix86.exe), готовые примеры программ и документация (ActiveTcl8.4.1.0-html.tar.gz), включая переводы на русский язык части man-страниц: "tcl_tk_docs.zip".

Но даже и без программирования на Tcl/Tk есть многое, чем можно заняться:

  1. Нарисовать новые красивые иконки для программ пакета.
  2. Дорабатывать сайт (не считаем, что он совершенен) в части содержания, дизайна и т. п.
  3. Исследовать поведение пакета Botik Tools в разных ОС и под разными версиями Tcl/Tk, добавить в сайт описания особенностей (или расширить список поддержанных ОС).
  4. Более того, можно самому не делать, а генерировать идеи по совершенствованию скрипта (ToDo-лист ниже).
  5. И т.п.

Пожалуйста, оставляйте в системе Nadmin::Абоненту свои идеи по развитию программ пакета Botik Tools.

Готовность авторов поддержать перенос на незнакомые ОС

Авторы готовы серьезно участвовать в переносе  пакета Botik Tools на новые платформы.  Поэтому, если Ваша OS отличается от тех, которые поддержаны сегодня, и в ней пакет Botik Tools не работает (или не совсем правильно работает), то свяжитесь с нами, мы постараемся решить проблему.

Информация для реализации системозависимых Tcl/Tk-процедур

По всей видимости, для перенося пакета на новые платформы чаще всего речь пойдет о правке системозависимых Tcl/Tk-процедур: одно-пакетного пинг-теста (rawPing), трассировки пути к хосту (rawTracert) и процедуры запуска умолчательного Веб-браузера на нужном URL (rawShowURL).

Чтобы поправить под Вашу платформу эти Tcl/Tk-процедуры нам надо представлять, какими командами (из командной строки) на Вашей платформе выполняются эти действия.  Просто пришлите нам вид трех следующих команд Вашей ОС и варианты вывода (stdout) этих команд:

C:>ping -n 1 -l 1450  -w 1500 195.208.224.2

Pinging 195.208.224.2 with 1450 bytes of data:

Reply from 195.208.224.2: bytes=1450 time<10ms TTL=253

Ping statistics for 195.208.224.2:
    Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum =  0ms, Average =  0ms
C:>tracert www.yandex.ru

Tracing route to yandex.ru [213.180.194.129]
over a maximum of 30 hops:

  1    13 ms   <10 ms   <10 ms  pole-router.botik.ru [195.208.225.1]
  2   <10 ms   <10 ms   <10 ms  post-router-bb.botik.ru [192.168.73.100]
  3   <10 ms   <10 ms   <10 ms  botik1.yaroslavl.ru [217.15.133.105]
  4   <10 ms    14 ms    14 ms  10.60.255.9
  5    14 ms    14 ms    13 ms  10.3.50.1
  6  1098 ms  1016 ms  1167 ms  D142.Z193-125-20.relcom.ru [193.125.20.142]
  7  1194 ms  1209 ms  1057 ms  fa2-0.M9-10.Relcom.net [193.125.15.10]
  8  1084 ms  1058 ms   892 ms  M-9-2-Fa3-0-11.ruscomnet.ru [193.232.244.52]
  9    28 ms    13 ms    41 ms  ix2-m9.yandex.net [193.232.244.93]
 10    82 ms    28 ms    27 ms  yandex.ru [213.180.194.129]

Trace complete.

Для сбора таких данных в OS Windows можно использовать oslog.bat — после его выполнения будет записан файл OsLog.txt, который будет содержать всю необходимую информацию. Этот файл надо послать авторам.


Последнее исправление: Октябрь 15, 2008
[ Tools ] [ Tester ] [ Key ] [Key Pro] [ Map ] [ Look ] [ IP-телефония ] [ Back ] Botik Tools ] History ] Download ] [ Call for Developers ]