Загружается...
 
Asterisk версии 1.4.x

Asterisk версии 1.4.x


Когда выходили релизы?

25 декабря 2006 - вышла в свет версия Asterisk 1.4.0!
15 июня 2007 - вышла в свет версия Asterisk 1.4.5
29 июня 2007 - вышла в свет версия Asterisk 1.4.6
10 июля 2007 - вышла в свет версия Asterisk 1.4.7.1
18 июля 2007 - вышла в свет версия Asterisk 1.4.8 (critical security bug fixes)
25 июля 2007 - вышла в свет версия Asterisk 1.4.9 (security bug fixes)
08 августа 2007 - вышла в свет версия Asterisk 1.4.10
10 августа 2007 - вышла в свет версия Asterisk 1.4.10.1
17 августа 2007 вышел релиз пакета драйверов Zaptel 1.4.5.
22 августа 2007 - вышла в свет версия Asterisk 1.4.11
17 августа 2007 - вышел релиз пакета драйверов Zaptel 1.4.5.1.
02 октября 2007 - вышел Asterisk-addons версии 1.4.3
02 октября 2007 - вышло обновление для сервера Asterisk версии 1.4.12.
06 октября 2007 - вышло обновление для сервера Asterisk версии 1.4.12.1.
10 октября 2007 - вышло обновление для сервера Asterisk версии 1.4.13.
16 октября 2007 - вышел Asterisk-addons версии 1.4.4.
06 ноября 2007 - вышел релиз пакета драйверов Zaptel 1.4.6.
11 ноября 2007 - вышло обновление для сервера Asterisk версии 1.4.14.
27 ноября 2007 - вышел релиз пакета драйверов Zaptel 1.4.7.
29 ноября 2007 - вышло обновление для сервера Asterisk версии 1.4.15.
13 декабря 2007 - вышел релиз пакета драйверов Zaptel 1.4.7.1.
20 декабря 2007 - вышло обновление для сервера Asterisk версии 1.4.16.2.
03 января 2008 - вышло обновление для сервера Asterisk версии 1.4.17.
14 января 2008 - вышел релиз пакета драйверов Zaptel 1.4.8.
19 февраля 2008 - вышел релиз пакета драйверов Zaptel 1.4.9.
02 февраля 2007 - вышел Asterisk-addons версии 1.4.6 - Список изменений.
18 марта 2008 - вышло критическое обновление для сервера Asterisk версии 1.4.18.1 - Список изменений.
02 апреля 2008 - вышло обновление для сервера Asterisk версии 1.4.19 - Список изменений.
08 апреля 2008 - вышел релиз пакета драйверов Zaptel 1.4.10.
20 мая 2008 - вышло обновление для сервера Asterisk версии 1.4.20 - Список изменений.
28 мая 2008 - вышел релиз пакета драйверов Zaptel 1.4.11 - Список изменений.
12 июня 2008 - вышло обновление для сервера Asterisk версии 1.4.21 - Список изменений.
02 октября 2008 - вышло обновление для сервера Asterisk версии 1.4.22 - Список изменений.
21 января 2009 - вышло обновление для сервера Asterisk версии 1.4.23 - Список изменений.
16 марта 2009 - вышло обновление для сервера Asterisk версии 1.4.24 - Список изменений.
28 апреля 2009 - вышел Asterisk-addons версии 1.4.8 - Список изменений.
21 мая 2009 - вышло обновление для сервера Asterisk версии 1.4.25 - Список изменений.
05 июня 2009 - вышел security fix для сервера Asterisk версии 1.4.25.1 - Список изменений.
21 июля 2009 - вышло обновление для сервера Asterisk версии 1.4.26 - Список изменений.
03 сеньтября 2009 - Вышел security fix для сервера Asterisk версии 1.4.26.2 - Список изменений.
18 декабря 2009 - вышло обновление для сервера Asterisk версии 1.4.28 - Список изменений.
15 января 2010 - вышло обновление для сервера Asterisk версии 1.4.29 - Список изменений.
12 марта 2010 - вышло обновление для сервера Asterisk версии 1.4.30 - Список изменений.
04 мая 2010 - вышло обновление для сервера Asterisk версии 1.4.31 - Список изменений.
01 июня 2010 - вышло обновление для сервера Asterisk версии 1.4.32 - Список изменений.
18 июня 2010 - вышло обновление для сервера Asterisk версии 1.4.33 - Список изменений.
23 июля 2010 - вышло обновление для сервера Asterisk версии 1.4.34 - Список изменений.
10 августа 2010 - вышло обновление для сервера Asterisk версии 1.4.35 - Список изменений.
13 сентября 2010 - вышло обновление для сервера Asterisk версии 1.4.36 - Список изменений.
11 ноября 2010 - вышло обновление для сервера Asterisk версии 1.4.37 - Список изменений.
02 декабря 2010 - вышло обновление для сервера Asterisk версии 1.4.38 - Список изменений.
14 января 2011 - вышло обновление для сервера Asterisk версии 1.4.39 - Список изменений.
18 января 2011 - Вышел security fix для сервера Asterisk версии 1.4.39.1 - Список изменений.
28 февраля 2011 - вышло обновление для сервера Asterisk версии 1.4.40 - Список изменений.
03 марта 2011 - вышло обновление для сервера Asterisk версии 1.4.41 - Список
изменений
.
29 июня 2011 - вышло обновление для сервера Asterisk версии 1.4.42 - Список изменений.
08 декабря 2011 - вышло обновление для сервера Asterisk версии 1.4.43 - Список изменений.


Изменения по сравнению с версией 1.2:


  • Более 4,000 внесенных изменений по сравнению с версией 1.2
  • Участники, обрабатывающие очереди вызовов, теперь именуются.
  • Переработана система CLI команд.
    • Изменен подход к структуре CLI команд.
    • Множество команд теперь имеют синтаксис: <module> <verb> <args>
  • Обновлена версия драйвера канала chan_h323.
  • Добавлена пакетизация RTP.
  • Добавлена поддержка SLA (Shared Line Appearance).
  • Добавлена возможность транзитной передачи факсов по SIP с использованием протокола T.38.
  • Общий для всех каналов jitter буфер (spawned from RTP)
  • Добавлена поддержка сигналов DTMF различной длительности для большей совместимости с различными системами, использующих DTMF.
  • Улучшена маштабируемость драйвера канала chan_iax2, путем использования multithreading.
  • AEL2 был заменен оригинальной реализацией AEL. Цифра "2" в названии - удалена.
    • За дополнительной информацией обращайтесь по адресу: http://www.voip-info.org/wiki/view/Asterisk+AEL2.
    • AEL более не считается экспериментальной возможностью.
  • Новые звуковые файлы; Приглашения на Английском, Испанском и Французском (а где Русский) языке, так же как и файлы для музыки ожидания, в различных форматах сервера Asterisk.
  • Использование IMAP для хранения голосовой почты.
  • Интеграция с Jabber/GoogleTalk.
  • Новый интерфейс (API) систем распознавания речи для взаимодействия с различными пакетами программ распознавания речи.
  • более продвинутая система настроек и конфигурации при создании системы (утилита configure стала более продвинутой),
  • Сохранение CDR записей при использовании протокола Radius.
  • Поддержка SNMP.
  • Поддержка SMDI (Simplified Message Desk Interface).
  • Переделан формат конфигурации для настройки параметров музыки ожидания (Music On Hold).
  • Управление с использованием протокола HTTP.
  • Значительные изменения в драйвере канала chan_skinny.
  • Значительные изменения в драйвере канала chan_misdn.
  • Усовершенствован механизм перевода вызовов (transfer) при использовании SIP протокола.
  • Поддержка подписки на MWI информацию в протоколе SIP.
  • Сильно улучшена поддержка видео для SIP протокола.
  • Для SIP протокола добавлена возможность контроля переводом вызова (transfer) и подпиской (включение/отключение для каждого из устройств).
  • Режим "шепота" (whisper) для ChanSpy (Whisper Paging).
  • Поддержка конфигурационного языка для управления произношением дат и времени.
  • Существенные усовершенствования в архитектуре для улучшения работы с памятью и повышения производительности.
  • Для IAX2 протокола введен режим перевода вызовов (transfer) - Media-only.
  • Обновлен код для поддержки Радио ретрансляторов и репитеров.
  • Функция плана набора - AgentCallbackLogin объявлена устаревшей, в пользу решения на основе плана набора.
  • Встроенная поддержка uClibc.
  • Большая работа по совместимости с операционной системой freeBSD.
  • Большая работа по совместимости с операционной системой Solaris.
  • Базы данных на основе FreeTDS могут быть использованы для работы механизма Realtime.
  • Новые внутренние структуры данных, строковые поля, которые использованы в реализации протоколов IAX и SIP, позволили уменьшить размер потребляемой памяти примерно на 50%.
  • Использование локального пространства трейдов для хранения данных позволило уменьшить число задач по выделению/освобождению памяти и уменьшило потребление пространства стека.
  • Реорганизованы файлы в директориях: docs/ main/ configs/, включая, в некоторых случаях, изменение их имен.
  • Много усилий было приложено по приведению в порядок документации на исходные коды и перевода ее в формат doxygen.
  • Усовершенствована поддержка IP TOS для протоколов IAX и SIP.
  • Встроенный мини HTTP сервер.
  • Добавлена поддержка карт от Sigma Designs.
  • Используется кэширование заголовков фреймов для уменьшения процессов выделения и освобождения памяти.
  • Поддержка прозрачной передачи и записи/воспроизведения аудиопотоков с использованием широкополосного кодека G.722.
  • Использование mpg123 для проигрывания MP3 файлов музыки ожидания объявлено устаревшим решением в версии 1.4 (начинает использоваться внутренняя поддержка этого формата).


Новые приложения для использования в плане набора:

  1. AMD() - Определение наличия автоответчика.
  2. ChannelRedirect() - асинхронный переход, перенаправляет текущий канал в заданный контекст/екстеншен/приоритет в плане набора.
  3. ContinueWhile() - Дополнение к функции While(). Работает, как команда "continue".
  4. ExitWhile() - Дополнение к функции While(). Работает, как команда "break".
  5. ExtenSpy() - эта функция очень близкий родственник ChanSpy().
  6. FollowMe() - findme/followme приложение для перевода вызовов.
  7. Log() - Отправка сообщения в журнал, в зависимости от уровня важности.
  8. MacroExclusive() - Выполняет не более одного заданного макроопределения в плане набора в любой момент времени.
  9. MorseCode() - передача заданной строки телеграфным кодом.
  10. OSPAuth() - OSP авторизация.
  11. QueueLog() - позволяет Вам записывать в лог очереди вызовов Ваши сообщения.
  12. SLAStation() - Shared Line Appearance
  13. SLATrunk() - Shared Line Appearance
  14. SpeechCreate() - Запуск интерфейса интеграции с системой распознавания речи...
  15. SpeechActivateGrammar()
  16. SpeechStart()
  17. SpeechBackground()
  18. SpeechDeactivateGrammar()
  19. SpeechProcessingSound()
  20. SpeechDestroy()
  21. SpeechLoadGrammar()
  22. SpeechUnloadGrammar()
  23. StopMixMonitor() - остановка работы приложения MixMonitor.
  24. TryExec() - выполняет приложение из плана набора без фатальных последствий.


Функции плана набора, которые были удалены:

  1. CheckGroup — проверку производите с помощью конструкции: ${GROUP()}.
  2. Curl — вместо нее используйте функцию: CURL().
  3. Cut — вместо нее используйте функцию: CUT().
  4. DateTime — вместо нее используйте приложение: SayUnixTime.
  5. DBget — объявлена устаревшей еще в версии 1.2, теперь удалена.
  6. DBput — объявлена устаревшей еще в версии 1.2, теперь удалена.
  7. Enumlookup — вместо нее используйте функцию: ENUMLOOKUP().
  8. Eval — вместо нее используйте функцию: EVAL().
  9. GetGroupCount — вместо нее используйте функцию: GROUP_COUNT().
  10. GetGroupMatchCount — вместо нее используйте функцию: GROUP_MATCH_COUNT().
  11. Intercom — вместо этой функции используйте модуль chan_oss.
  12. Math — вместо нее используйте функцию: MATH().
  13. MD5 — вместо нее используйте функцию: MD5().
  14. SetCIDname — вместо нее используйте: CALLERID(name).
  15. SetCIDnum — вместо нее используйте: CALLERID(number).
  16. SetGroup — вместо этого используйте: SET( GROUP=group).
  17. SetRDNIS — вместо нее используйте функцию: CALLERID(rdnis).
  18. Sql_postgres — объявлена устаревшей еще в версии 1.2, теперь удалена.
  19. Txtcidname — вместо нее используйте функцию: TXTCIDNAME.


Новые функции плана набора:

  1. ARRAY()
  2. BASE_64_DECODE()
  3. BASE_64_ENCODE()
  4. CHANNEL()
  5. CURL()
  6. CUT()
  7. DB_DELETE()
  8. FILTER()
  9. GLOBAL()
  10. IFTIME()
  11. KEYPADHASH()
  12. ODBC()
  13. QUOTE()
  14. RAND()
  15. REALTIME()
  16. SHA1()
  17. SORT()
  18. SPRINTF()
  19. SQL_ESC()
  20. STAT()
  21. STRPTIME()


Приложения, у которых появились изменения в их настройке:

  1. Authenticate() - добавлен необязательный аргумент maxdigits.
  2. ChanSpy() - новые опции:
    • w - Включает режим 'whisper', при этом "шпионящий" может говорить с ...
    • W - Включает режим 'private whisper', при этом "шпионящий" может ...
  3. DBdel() - Объявлена устаревшей в версии 1.4.x, используйте: DB_DELETE.
  4. Dial,:::::()" class="wiki wiki_page">Dial()
    • Новая опция: O(x) для работы с драйвером Zaptel.
    • Новая опция: K/k парковка вызова с использованием dtmf сигналов.
  5. Dictate() - добавлен необязательный аргумент с именем файла.
  6. Directory() - новая опция: e - в дополнение к имени, также считывает номер екстеншена...
  7. Meetme() - новые опции:
    • 'I' - Анонс входа/выхода пользователя конференции без суммарной информации.
    • 'l' - устанавливает режим "слушателя" (Может только слушать, но не говорить).
    • 'o' - Включает оптимизацию разговора - обработка "говорящих" участников, которые молчат, как...
    • '1' - Не проигрывать сообщение, когда в конференцию входит первый участник.
  8. MeetmeAdmin() - новые опции:
    • 'r' — Сброс настроек громкости для одного пользователя.
    • 'R' — Сброс настроек громкости для всех пользователей.
    • 's' — Понижает уровень громкости говорящих внутри конференции.
    • 'S' — Повышает уровень громкости говорящих внутри конференции.
    • 't' — Уменьшение громкости звука разговора одного пользователя.
    • 'T' — Уменьшение громкости звука разговора всех пользователей.
    • 'u' — Уменьшение уровня громкости принимаемых сигналов для одного пользователя.
    • 'U' — Уменьшение уровня громкости принимаемых сигналов для всех пользователей.
    • 'v' — Уменьшение уровня громкости принимаемых сигналов внутри конференции.
    • 'V' — Увеличение уровня громкости принимаемых сигналов внутри конференции.
  9. OSPFinish() - теперь может в качестве результата возвращать ERROR.
  10. OSPLookup() - Устанавливает больше переменных, также теперь может в качестве результата возвращать ERROR.
  11. Page() - Новая опция: r - записывать сообщение в файл (см. параметр 'r' для приложения app_meetme).
  12. Pickup() - несколько екстеншенов, PICKUPMARK; читайте описание!
  13. Queue()
    • Новый Аргумент: AGI
    • Новая опция: i
  14. Random() - Объявлена устаревшей в версии 1.4.x
  15. Read() - Параметры 'skip' и 'noanswer', соответственно заменены на: 's' и 'n', добавлен параметр 'i'.
  16. Record() - Новая опция: 'x' - игнорировать все завершающие запись сигналы (DTMF) и производить запись до окончания разговора.
  17. UserEvent() - Небольшие изменения в поведении. Читайте описание.
  18. VoiceMailMain() - Новая опция: a(#), непосредственно переправляет в папку #.
  19. WaitForSilence() - Новый, необязательный третий аргумент, в котором указывается задержка перед выходом из функции.


Функции, у которых появились изменения в их настройке:

  1. CDR - новая опция: u.
  2. LANGUAGE - Устарела. Вместо нее используйте конструкцию: CHANNEL(language).
  3. MUSICCLASS - Устарела. Вместо нее используйте конструкцию: CHANNEL(musicclass).


Изменения в конфигурационных файлах.


Новые файлы конфигурации

  1. amd.conf - Параметры приложения для определения автоответчиков.
  2. followme.conf - Параметры для трансфера вызовов системы findme/followme.
  3. func_odbc.conf - В этом файле определяются параметры доступа к sql базам данных.
  4. gtalk.conf - В этом файле определяется, как обрабатывать вызова по протоколу gtalk.
  5. h323.conf - Конфигурация канала h323.
  6. http.conf - Конфигурация встроенного мини http сервера в asterisk.
  7. jabber.conf - Конфигурация интерфейса с jabber.
  8. jingle.conf - Конфигурация интерфейса с протоколом jingle.
  9. res_snmp.conf - Включение поддержки snmp в asterisk и определение статусов агентов full/sub.
  10. say.conf - Определения правил произношения цифр, дат и т.д. Для различных языков.
  11. skinny.conf - Конфигурация Ваших специфичных телефонов, использующих протокол skinny ...
  12. sla.conf - Конфигурация Shared Line Appearance.
  13. smdi.conf - Конфигурация обмена сообщениями SMDI.
  14. udptl.conf - конфигурация для транспорта T38 udptl.
  15. users.conf - конфигурация пользователей.

Файлы конфигурации, в которых появились изменения в настройках.

  1. Основные изменения:
    • В связи с тем, что появилась поддержка буфера Jitter для многих каналов. В их файлах конфигурации появились новые переменные:
      • jbenable
      • jbmaxsize
      • jbresyncthreshold
      • jbimpl
      • jblog
    • После модернизации приложения для проигрывания музыки ожидания (Music On Hold), появились две новые переменные:
      • mohinterpret
      • mohsuggest
  2. agents.conf
    • Добавлена переменная: maxlogintries.
    • Добавлена переменная: autologoffunavail.
    • Добавлена переменная: endcall.
    • Добавлена переменная: agentgoodbye.
    • Удалена переменная: createlink.
  3. alsa.conf
    • Добавлена переменная: mohinterpret.
    • Добавлена переменная: Jitterbuffer.
  4. cdr.conf
    • Добавлена переменная: endbeforehexten.
    • Добавлена секция для csv и radius, с новыми переменными: usegmtime, loguniqueid, loguserfield и radiuscfg.
  5. cdr_tds.conf
    • Добавлена переменная: table.
  6. extensions.ael
  7. extensions.conf
    • Переменная autofallthru, теперь, по умолчанию, имеет значение "yes".
    • Добавлена переменная: userscontext.
    • Добавлена информация и примеры для paging и hints.
  8. features.conf
parkedplay variable added (who to beep at)
    • parkedmusicclass.
    • Добавлена переменная: atxfernoanswertimeout.
    • Добавлена переменная: parkcall (одностадийная парковка вызова),
    • Улучшена документация по динамическому определению дополнительных возможностей!
  1. iax.conf
    • Добавлена переменная: adsi.
    • Добавлена переменная: mohinterpret.
    • Добавлена переменная: mohsuggest.
    • Изменение в определении jitterbuffer.
    • Добавлена переменная: iaxthreadcount.
    • Добавлена переменная: iaxmaxthreadcount.
    • Изменен способ определения IP TOS.
    • Удалена переменная: mailboxdetail.
  2. indications.conf
Добавлены определения для: [bg] (Болгария).
Добавлены определения для: [il] (Израиль)
Добавлены определения для: [in] (Индия)
Добавлены определения для: [jp] (Япония)
Добавлены определения для: [my] (Малайзия)
Добавлены определения для: [th] (Таиланд)
  1. manager.conf
    • Добавлена переменная: webenabled.
    • Добавлена переменная: httptimeout.
    • Добавлена переменная: timestampevents.
  2. mgcp.conf
    • Добавлена поддержка jitterbuffer.
  3. misdn.conf
    • Добавлена переменная: l1watcher_timeout.
    • Добавлена переменная: pp_l2_check.
    • Добавлена переменная: echocancelwhenbridged.
    • Добавлена переменная: echotraining.
    • Добавлена переменная: max_incoming.
    • Добавлена переменная: max_outgoing.
  4. modules.conf
    • Добавлена закомментированная строка загрузки модуля res_speech.so.
    • Удалено упоминание о глобальных параметрах.
    • Удалены ненужные записи для удаленных из дистрибутива модулей chan_modem_* и app_intercom.
  5. musiconhold.conf
    • По умолчанию, используются файлы в "нативном формате" из директории /var/lib/asterisk/moh.
  6. osp.conf
    • Добавлена переменная: authpolicy.
  7. oss.conf
    • Добавлена переменная: debug.
    • Добавлена переменная: device.
    • Добавлена переменная: mixer.
    • Добавлена переменная: boost.
    • Добавлена переменная: callerid.
    • Добавлена переменная: autohangup.
    • Добавлена переменная: queuesize.
    • Добавлена переменная: frags.
    • Добавлена поддержка JitterBuffer.
    • Добавлена секция для определения альтернативных звуковых карт.
  8. queues.conf
    • Добавлена переменная: autofill.
    • Добавлена переменная: monitor-type.
    • Переменная musiconhold переименована в musicclass, с соотв. изменением в определении.
    • Добавлена переменная: autofill.
    • Добавлена переменная: autopause.
    • Добавлена переменная: setinterfacevar.
    • Добавлена переменная: ringinuse.
  9. res_odbc.conf
    • Добавлена переменная: pooling.
  10. rpt.conf
    • Добавлена переменная: duplex.
    • Добавлена переменная: tailmessagetime.
    • Добавлена переменная: tailsquashedtime.
    • Добавлена переменная: tailmessages.
  11. rtp.conf
    • Добавлена переменная: rtcpinterval.
  12. sip.conf
    • Добавлена переменная: allowoverlap.
    • Добавлена переменная: allowtransfer.
    • Удалена переменная: tos.
    • Добавлена переменная: tos_sip.
    • Добавлена переменная: tos_audio.
    • Добавлена переменная: tos_video.
    • Добавлена переменная: minexpiry.
    • Добавлена переменная: t1min.
    • Удалена переменная: musicclass.
    • Добавлена переменная: mohinterpret.
    • Добавлена переменная: maxcallbitratesuggest.
    • Добавлена переменная: allowsubscribe.
    • Добавлена переменная: videosupport.
    • Добавлена переменная: maxcallbitrate.
    • Добавлена переменная: g726nonstandard.
    • Добавлена переменная: dumphistory.
    • Добавлена переменная: allowsubscribe.
    • Добавлена переменная: t38pt_udptl.
    • Переменная canreinvite теперь может принимать значение 'nonat'.
    • Добавлена переменная: rtsavesysname.
    • Добавлена поддержка JitterBuffer.
  13. skinny.conf
    • Переменная port переименована в bindport.
    • Добавлена поддержка JitterBuffer.
    • Удалена переменная: model.
    • Добавлена переменная: mohinterpret.
    • Добавлена переменная: mohsuggest.
    • Добавлена переменная: speeddial.
    • Добавлена переменная: addon.
  14. voicemail.conf
    • Добавлена переменная: userscontext.
    • Добавлена переменная: smdiport.
    • Добавлена переменная: attachfmt.
    • Добавлена переменная: volgain.
    • Добавлена переменная: tempgreetwarn.
  15. zapata.conf
    • Улучшено описание переменной pritimer.
    • Новый метод сигнализации: fgccama.
    • Новый метод сигнализации: fgccamamf.
    • Добавлена переменная: outsignalling.
    • Добавлена переменная: distinctiveringaftercid.
    • Переменная cidsignalling теперь может принимать значения: v23_jp и smdi.
    • Добавлена переменная: usesmdi.
    • Добавлена переменная: smdiport.
    • Добавлена переменная: mohinterpret.
    • Добавлена переменная: mohsuggest.
    • Добавлена поддержка JitterBuffer.


Голосовые кодеки и каналы, которые были удалены:

  1. Голосовой кодек: codec_g723 был удален вследствие того, что текущая реализация данного кодека разработана не для широкого использования.
  2. chan_modem_* , и соответствующие модули, были удалены из дистрибутива, по той причине, что они используют устаревшее взаимодействие с ядром системы, содержат множество ошибок и не поддерживаются разработчиком.


Новые утилиты, вошедшие в поставку:

  1. aelparse - компилирует .ael файлы без использования asterisk.


Новые события в интерфейсе управления (manager interface):

  1. Событие OriginateResponse - оно заменяет два других события: OriginateSuccess и OriginateFailure.

Создано yuri. Последнее изменение: среда 14 / декабрь, 2011 16:16:54 MSK автор yuri.