Miranda IM

Miranda IM (Miranda Instant Messenger) - програма обміну миттєвими повідомленнями для Windows. Розповсюджується під ліцензією GNU General Public License.

Miranda IM забезпечує робоче середовище клієнта для мереж обміну миттєвими повідомленнями, дизайн і функціональність якої можна змінювати і розширювати за допомогою додаткових плагінів.

Поширюється в двох версіях - Unicode (під ОС сімейства Windows NT - NT, XP і далі), і ANSI (під ОС сімейства Windows 9x).


1. Історія

1.1. Початок

Miranda була створена Роландом Рабьеном ( англ. Roland Rabien ) 2 лютого 2000. На той момент це був мінімалістський клон програми ICQ і офіційно програма називалася Miranda ICQ. Перша версія 0.0.1 була випущена 6 лютого 2000 року. Програма використовувала бібліотеку LibICQ, не мала підтримки історії повідомлень, бази даних, плагінів і мала розмір менше 100 Кбайт.

Основною особливістю версії 0.0.4 став бот MegaHAL, який дозволяв вести автоматичний чат між Miranda і іншими користувачами. З версією 0.0.6 з'явилася підтримка плагінів і першим став плагін історії Logger.


1.2. Версія 0.1.x

Після випуску версії 0.0.6.1 26 грудня 2000 розробники перестали підтримувати Miranda. Версія 0.1.0.0 була випущена 8 квітня 2001 Річардом Хьюзом ( англ. Richard Hughes ), Який взяв керівництво над проектом. Код Miranda був істотно перероблений, вікно діалогу повідомлень вперше було винесено в окремий плагін. У версію 0.1.1.0 був доданий протокол MSN Messenger, який став другим протоколом, який стала підтримувати Miranda. Також ця версія була першою, в якій була додана підтримка мовних пакетів. З того часу Miranda стала мультипротокольной і мультимовним IM-клієнтом.

Після випуску версії 0.1.0.0 почалася активна розробка плагінів для Miranda. До версії 0.1.2.1, випущеної 28 лютого 2002, було доступно приблизно 50 плагінів. У цей час був випущений плагін Lizard, що дозволяє використовувати різні стилі оформлення, однак розробка плагіна з часом припинилася через нестабільність, яку він створював у Miranda.


1.3. Версія 0.2.x

Після відходу Річарда Хьюза в червні 2002 року [2], розробники Мартін Оберг, Роберт Рейнвотер, Сем До і Ліон Лім взяли на себе подальшу розробку проекту. Розробку протоколу MSN продовжив рако Шізука. Він також розробив першу версію протоколу Yahoo! Messenger, що став третім протоколом, підтримуваним у Miranda. Плагін Yahoo! мав закритий вихідний код і втратив актуальність у зв'язку із змінами в офіційному протоколі Yahoo!. Пізніше плагін протоколу Yahoo! був переписаний Геннадієм Фельдманом.

У цей час з'явилися перші плагіни, які не ставилися до передачі миттєвих повідомлень, такі як RSS (RSS News) і зведення погоди (Weather). Вперше контакти у списку контактів почали використовуватися для відображення інформації, а не для спілкування.

У цей час почалися дискусії про перейменування програми і виділення коду підтримки ICQ з ядра. 17 грудня 2002 року, в зв'язку із збільшенням підтримуваних протоколів, проект був офіційно перейменований в Miranda IM.

Нова версія програми, названа Miranda IM, вийшла 1 лютого 2003, через 3 роки після заснування проекту. Всього через два тижні вийшла наступна версія Miranda, що містить виправлення помилок.


1.4. Версія 0.3.x

Самим значним зміною версії 0.3, випущеної 23 червня 2003, було переміщення підтримки ICQ з ядра програми в окремий плагін. З цього часу Miranda могла працювати без підтримки ICQ. [3] Сайт проекту отримав нову адресу (www.miranda-im.org) і на ньому були відкриті новий форум для обговорень і файловий архів.

У версію 0.3 були включені плагіни протоколів ICQ, MSN, AIM і Jabber. Протокол Yahoo! не був включений в дистрибутив. Підтримку протоколу IRC пізніше забезпечив Йорген Перссон і цей протокол 8 серпня 2003 увійшов в офіційний реліз Miranda версії 0.3.1. [4]

Іншим значною зміною Miranda в цій гілці було переміщення модуля відправки-отримання повідомлень (Send-Receive Messaging Module) з ядра в окремий плагін SRMM. [4] Це помітно зменшило розмір виконуваного файлу і дало поштовх до створення нових плагінів-вікон листування. У цей період з'явилася безліч варіацій SRMM (SRAMM, SRMM_mod і т. п.), що пропонують різні нові можливості і поліпшення стандартної реалізації.


1.5. Версія 0.4.x

Miranda IM, змінена за допомогою стилів і плагінів

Версія 0.4 була випущена 7 квітня 2005. Це була перша версія з протоколом Yahoo!, включеним в офіційний дистрибутив. Іншими значними змінами стали переміщення модуля списку контактів і модуля бази даних з ядра в окремі плагіни. [5] [6] У результаті з'явилося 4 варіації модуля списку контактів: класичний (clist_classic), мультіоконний (clist_mw), сучасний список контактів (clist_modern) і поліпшений список контактів з розширеним зміною інтерфейсу (clist_nicer).

Також в цей період були створені інші популярні плагіни, включаючи модулі вікон повідомлень з "вкладками" (TabSRMM і Scriver), модуль підтримки HTML-журналу повідомлень (IEView), скриптова плагін mbot і плагін МетаКонтакт.


1.6. Версія 0.5.x

Miranda IM версії 0.5 була випущена 28 липня 2006. Це була перша версія, яка підтримувала юнікод для повноцінного використання на системах Windows NT, 2000 і XP. Іншою особливістю було введення протоколу AIM OSCAR, вперше представленого на початку 2006 року, який дозволяв передавати файли і використовувати статусні повідомлення. Також ця версія передбачала розширену підтримку аватарів серед різних протоколів. [7]


1.7. Версія 0.6.x

Версія 0.6 була випущена 29 грудня 2006 року. Нововведенням цієї версії була підтримка UPnP для поліпшення передачі файлів і прямих з'єднань через маршрутизатори. [8] У цій же версії бази даних починають підтримувати зберігання даних в UTF-8, однак це не є обов'язковим. В API для плагінів додана робота з пам'яттю. Крім того, до моменту завершення роботи над версією 0.5 виникла загроза, що різні шматки Miranda розповзуться занадто далеко.


1.8. Версія 0.7.x

Версія 0.7 побачила світ 1 жовтня 2007. У ній було зроблено безліч змін в ядрі Miranda. Система меню була переписана, модуль роботи зі шрифтами (FontService) і модуль роботи з піктограмами (IcoLib) були внесені в ядро. У дистрибутив увійшли плагіни для роботи із зображеннями і менеджер аватарів. Зберігання даних в базі даних було примусово переведено в UTF-8, що викликало багато проблем сумісності зі старими плагінами і пошкодженими базами даних. [9] Модульний інтерфейс був змінений і тепер плагіни повинні були ідентифікувати себе і надаються функції з допомогою унікальних ідентифікаторів ( UUID).

Протокол Jabber перейшов у стадію активного розвитку, його інтерфейс був якісно перероблений і став придатний для регулярного використання.


1.9. Версія 0.8.x

Версія 0.8 Miranda доступна c 17 червень 2009. У ній реалізована робота з декількома акаунтами одного протоколу, без необхідності копіювання DLL-файлів плагінів. [10] Покращена сумісність з Windows Vista. Також стало більш доброзичливим вікно налаштувань, в якому з'явився пошук по настройках. [11]

Розвиток гілки продовжується і після появи серії 0.9.x. Всі піктограми замінені на більш якісні, для Windows 7 додана підтримка великих іконок - з великою роздільною здатністю.


1.10. Версія 0.9.x

Версія 0.9.0 вийшла 24 серпня 2010 року. [12] Поліпшення сконцентровані в основному на підтримку Unicode і протоколів. З'явилася підтримка можливостей нової панелі завдань Windows 7. Додана перша офіційна 64-бітова версія.

1.11. Версія 0.10.x

Версія 0.10.0 вийшла 18 липня 2012.

1.12. Miranda NG

До 2011 року протиріччя в бригаді розробників поглибилися. Нові версії Miranda IM виходили вкрай нерегулярно; часто в списку змін була всього одна строчка. Частина розробників відкололася і створила форк - Miranda NG (New Generation). Цілі нового проекту:

  • Відмовитися від підтримки ANSI-версії. Будуть тільки Unicode-і x64-версії.
  • Закрити архітектурні вади старої Miranda IM.
  • Тимчасово розморозити API плагінів. Плагіни будуть сумісні тільки з тією версією Miranda NG, під яку вони створювалися; всі поширені плагіни Miranda IM централізовано оновлюються на сайті Miranda NG.
  • Дати розробникам плагінів бібліотеку корисних функцій, які раніше кожен плагін реалізовував сам.

Спочатку проект не мав офіційного сайту, обговорення йшло в конференції miranda-im@conference.jabber.ru, потім був зареєстрований домен miranda-ng.org. [13] на жовтень 2012 року форк в стані стабільної бета-версії.


2. Плагіни

Miranda являє собою компактний програмний інтерфейс до набору різноманітних модулів-плагінів. Плагіни протоколів обміну повідомленнями можна відключити або замінити на написання сторонніми авторами або самостійно. Можливості програми можуть бути розширені за допомогою модулів, які реалізують розширення інтерфейсу, включаючи переклад на інші мови, дозволяють вести розгорнуті логи і статистику, забезпечувати безпечну зв'язок, видавати нагадування і виконувати безліч інших функцій, аж до ведення з видаленим партнером логічних ігор. Для установки плагіна достатньо завантажити архів з ним і розпакувати його в підкаталог Plugins в каталозі Miranda (у рідких випадках - безпосередньо у каталог програми).


3. Підтримувані протоколи

Основні плагіни для реалізації протоколів обміну повідомленнями, які ставляться при установці програми за замовчуванням, підтримують протоколи IRC, Jabber (в тому числі Google Talk), MSN, OSCAR ( AIM, ICQ), Yahoo, Gadu-Gadu.

Додатково можна завантажити плагіни протоколів Battle.net Messenger, Mail.ru Agent, MS Exchange IM protocol (RVP), MySpaceIM, SIP, Skype (для нього потрібний встановлений Skype), Spinchat, Twitter, Tlen, QQ, WallaChat, Xfire, Facebook і ВКонтакте (хоча до Facebook і Вконтакте зручніше підключатися через стандартний Jabber Plugin).

Протоколи обміну повідомленнями по локальній мережі включають EmLanProto, Novell NetWare NCP, Vypress Chat, WinPopup, QuickChat.


3.1. Протокол OSCAR

  • ICQ OscarJ - плагін, який реалізує функціональність протоколу OSCAR і входить в офіційну поставку Miranda IM. Має підтримку розширених статусів і аватар. Обмежене управління видимістю, не підтримується Privacy menu.
  • ISee - альтернативний плагін, який реалізує протокол ICQ в Miranda IM, один з найбільш функціональних і стабільних плагінів, що має цілий ряд переваг, включаючи управління видимістю (Privacy menu), відгук авторизації (видалення себе з контакт листа співрозмовника), деякі способи перевірки "на невидимість ", можливість зміни ідентифікатора клієнтської програми і версії протоколу. Однак робота над плагіном не ведеться вже більше двох років. [14]
  • ICQJ Plus Mod - одна з останніх альтернативних реалізацій протоколу OSCAR для Miranda, зараз знаходиться в стані розробки. Плагін вміє працювати зі списками приватності і Privacy menu, володіє можливістю відкликання авторизації, вбудованим захистом від відомих спам-ботів, підтримує можливість зміни ідентифікатора клієнтської програми і версії протоколу, аватари і розширений набір статусів.

3.2. Протокол XMPP / Jabber

Налаштування на роботу з сервером Живого журналу

Входить в стандартну поставку Miranda плагін протоколу XMPP (раніше називався Jabber) забезпечує можливість роботи з XMPP-серверами (в тому числі і з серверами GTalk, Facebook і ВКонтакте). Плагін підтримує конференції, можливість передачі файлів через сервер або пряме підключення, роботу зі списками видимості, безпечну аутентифікацію і роботу з сервером по протоколу SSL, а також стиснення переданої інформації (доступно не на всіх серверах).


4. Безпека

Відкритий вихідний код клієнта і основних модулів, в тому числі і забезпечують захист, дає можливість (маючи відповідний досвід) перевірити програму на наявність помилок, перевірити відсутність "закладок" і, при необхідності, змінити необхідні модулі - наприклад, замінивши використовуваний в SecureDB алгоритм захисту на будь-який інший, що задовольняє певним вимогам.

4.1. Обмін повідомленнями та даними

Miranda IM підтримує безпечну аутентифікацію ICQ ( MD5) і Jabber SASL, захист з'єднань за допомогою SSL / TLS з тими сервісами, які це підтримують. Для забезпечення безпеки переданих по кожному з протоколів повідомлень можливо їх шифрування за допомогою плагіна SecureIM [15], із застосуванням або вбудованого в плагін шифрування повідомлень алгоритмом AES -192, або зовнішніх програм GPG / PGP. При цьому необхідно, щоб обидва кореспонденти використовували Miranda з SecureIM.

Для шифрування повідомлень за допомогою GPG / PGP є й інші плагіни - наприклад, GnuPG. [16] Також, користувачі Miranda можуть за допомогою плагіна OTR безпечно обмінюватися повідомленнями, захищеними AES, з клієнтами, що підтримують той же протокол. [17]


4.2. Захист профілю та бази даних

Для зберігання паролів і захисту бази даних повідомлень Miranda використовує не "секретність" подання цих даних за допомогою тримається в таємниці формату, а плагіни, що дозволяють захистити збережені паролі або всю базу даних за допомогою шифрування відомими криптографічними алгоритмами. Для захисту паролів в стандартній базі даних використовується плагін msecure [18], за допомогою якого паролі зберігаються в зашифрованому вигляді, використовуючи 190-бітний алгоритм Blowfish. Той же плагін захищає Miranda від несанкціонованого запуску - перевагою його використання є відсутність необхідності запам'ятовування паролів до акаунтів (яких одночасно може бути багато) і заміна їх на один пароль.

Замінивши стандартний плагін бази даних користувача на SecureDB [19], можна повністю захистити від несанкціонованого доступу весь свій профіль (не тільки збережені паролі, але і повідомлення, контакт-листи, збережені локально і т. д.), що вельми зручно як для роботи з комп'ютером "загального користування", так і для захисту від викрадення паролів. Варіант же SecureDB + Autobackup забезпечить резервування бази даних налаштувань і повідомлень, за розкладом або запускається вручну. Для застосовуваної в версії 7 бази даних Memory-Mapped Database (dbx_mmap) також існує безпечний варіант із захистом за допомогою алгоритму RC4 і можливістю резервного копіювання - Memory-Mapped Secured Database. [20]

Крім названих, існують й інші плагіни, що захищають Miranda від запуску і т. д.


4.3. Захист від спаму

Є плагіни, що забезпечують захист від спаму - наприклад, SpamFilter. [21] Захист здійснюється у вигляді завдання питання і порівняння відповіді із заданим. Питання можна задати як на повідомлення, так і на інші дії (запит авторизації і т. д.). За рахунок цього стає можливим з великою часткою ймовірності визначити, є співбесідник рекламним роботом або живою людиною. Якщо відповідь вірний, то повідомлення від цього номера (UIN) приймаються. При цьому можлива перевірка повідомлень як від тих, хто не входить в список контактів (або контакт-лист) користувача, так і від наявних в контакт-листі, так само можливо Автододавання в контакт-лист і дозвіл авторизації "перевіреним" таким чином контактам.

Некоторые плагины ICQ-протокола, например ICQJ, имеют встроенную возможность блокирования сообщений и авторизационных запросов от известных "спам-UIN-нов" и гибкие настройки видимости и раскрытия "статус-сообщения".


4.4. Приватность

Для Miranda существуют плагины, позволяющие скрыть следы работающей Miranda нажатием некоторой комбинации клавиш (т. н. boss key) [22] и очищающие историю сообщений и другую личную информацию [23], что важно при её использовании на рабочем месте в офисе или другом публичном месте.

Также Miranda легко можно запустить с переносного носителя - флеш -карты и т. п. Это позволяет хранить всю приватную информацию при себе, работая на любом подходящем компьютере.


5. Кроссплатформенность

Miranda IM не является кроссплатформенным приложением, так как структура программы довольно жёстко ориентирована на использование Windows API, и поэтому её затруднительно портировать под другие операционные системы. Однако имеется возможность использования программы в среде Unix-совместимых операционных систем с помощью Wine.

6. Дополнительные особенности

Miranda отличается от многих других мессенджеров широкой настраиваемостью и функциональностью, что является основным достоинством данной программы. Для пользователей существенными являются также высокая скорость, что немаловажно на устаревших или перегруженных задачами машинах (однако эти характеристики зависят от количества подключённых плагинов). Кроме того, бывает полезна возможность работы без установки программы. А при работе по протоколу ICQ не загружается реклама, что снижает нагрузку на каналы связи и экономит трафик.


7. Недоліки

Недостатки Miranda являются обратной стороной достоинств: некоторые пользователи (особенно из числа не имеющих большого опыта работы на компьютере) жалуются на скромность внешнего вида, предоставляемого по умолчанию, а также сетуют на сложность самостоятельного подбора наиболее эффективных плагинов. Эти недостатки легко преодолеваются не только посредством самостоятельного изучения и подбора дополнительных модулей, но и путём установки готовых дистрибутивов, иначе называемых "сборками", снабжённых целым рядом уже настроенных расширений и плагинов.

Также, недостатком является отсутствие кроссплатформенности - работы как родного приложения в ОС, отличных от Windows.


8. Реакция на изменение протоколов

Корпорація AOL периодически вносила в протокол ICQ изменения, которые не мешают работе программ AOL, но приводят к невозможности работы Miranda. [24] Эта проблема касается и других альтернативных ICQ-клиентов. [25] Однако нередко изменения в протоколе, делающие неработоспособными другие альтернативные клиенты, не нарушают работоспособность Miranda. [26]

Как правило, разработчики Miranda оперативно реагируют на возникновение подобных проблем, внося изменения в соответствующий плагин. Для удобства можно использовать плагин Updater [27], позволяющий автоматизировать процесс обновления.

Достаточно быстро отреагировали разработчики на изменение в протоколе ICQ от 21 января 2009 года. Уже вечером появилась исправленная версия плагина Miranda IM ICQ+, 22 января была выложена обновлённая версия плагина ICQ OscarJ, а 23 января - очередной релиз (0.7.14). [28]


Примітки

  1. Miranda IM v0.10.10 Released - www.miranda-im.org/2013/02/10/miranda-im-v0-10-10-released. Официальный сайт (10 февраля 2013). Архивировано - www.webcitation.org/6BYim81Xo из первоисточника 20 октября 2012.
  2. OSDir.com :: Open Source, Linux News & Software - osdir.com / Downloads index-req-viewdownloaddetails-lid-156-ttitle-Miranda_IM.phtml
  3. Miranda IM v0.3 released - sourceforge.net / forum / forum.php? forum_id = 287706 (25 червня 2003). Читальний - www.webcitation.org/65DeEbFi6 з першоджерела 5 лютого 2012.
  4. 1 2 Miranda IM v0.3 Changelog - www.miranda-im.org/release/changelog.php. Офіційний сайт. Читальний - web.archive.org/web/20050403105952/http :/ / www.miranda-im.org/release/changelog.php з першоджерела 3 квітня 2005.
  5. Miranda IM v0.4 Release Announcement - www.miranda-im.org/release/. Офіційний сайт (9 квітня 2005). Читальний - web.archive.org/web/20050410043730/www.miranda-im.org/release / з першоджерела 9 квітня 2005.
  6. Miranda IM v0.4 Changelog - www.miranda-im.org/release/changelog.php. Офіційний сайт. Читальний - web.archive.org/web/20050508012345/http :/ / www.miranda-im.org/release/changelog.php з першоджерела 8 травня 2005.
  7. Miranda IM v0.5 Released - www.miranda-im.org/2006/07/28/miranda-im-v05-released/. Офіційний сайт (28 липня 2006). Читальний - www.webcitation.org/65DeFHoaQ з першоджерела 5 лютого 2012.
  8. Miranda IM v0.6 Released - www.miranda-im.org/2006/12/29/miranda-im-v06-released/. Офіційний сайт (29 грудня 2006). Читальний - www.webcitation.org/65DeFra1I з першоджерела 5 лютого 2012.
  9. Miranda IM v0.7 Released - www.miranda-im.org/2007/10/02/miranda-im-v07-released/. Офіційний сайт (2 жовтня 2007). Читальний - www.webcitation.org/65DeGQOBF з першоджерела 5 лютого 2012.
  10. Miranda IM v0.8.0 Build # 9 Discussion - forums.miranda-im.org/showthread.php? t = 17374
  11. 0.8 Roadmap on official forums - forums.miranda-im.org/showpost.php? p = 138019 & postcount = 2
  12. Miranda IM v0.9.0 Released - www.miranda-im.org/2010/08/24/miranda-im-v0-9-0-released/. Офіційний сайт (24 серпня 2010). Читальний - www.webcitation.org/65DeH0DmK з першоджерела 5 лютого 2012.
  13. Сайт Miranda NG - miranda-ng.org (Англ.)
  14. Плагін ISee - addons.miranda-im.org/details.php? action = viewfile & id = 1037 на addons.miranda-im.org (Англ.)
  15. Плагін SecureIM - addons.miranda-im.org/details.php? action = viewfile & id = 2445 на addons.miranda-im.org (Англ.)
  16. Плагін GnuPG - addons.miranda-im.org/details.php? action = viewfile & id = 3485 на addons.miranda-im.org (Англ.)
  17. Плагін OTR - addons.miranda-im.org/details.php? action = viewfile & id = 2644 на addons.miranda-im.org (Англ.)
  18. Плагін MSecure - addons.miranda-im.org/details.php? action = viewfile & id = 848 на addons.miranda-im.org (Англ.)
  19. Плагін SecureDB - addons.miranda-im.org/details.php? action = viewfile & id = 3389 на addons.miranda-im.org (Англ.)
  20. Плагін Memory-Mapped Secured Database - addons.miranda-im.org/details.php? action = viewfile & id = 3667 на addons.miranda-im.org (Англ.)
  21. Плагін Spam Filter (beta) - addons.miranda-im.org/details.php? action = viewfile & id = 2188 на addons.miranda-im.org (Англ.)
  22. Плагін BossKey - addons.miranda-im.org/details.php? action = viewfile & id = 495 на addons.miranda-im.org (Англ.)
  23. Плагін History Sweeper + - addons.miranda-im.org/details.php? action = viewfile & id = 3291 на addons.miranda-im.org (Англ.)
  24. Miranda знову не підключається до ICQ - www.lenta.ru/news/2006/07/12/miranda/. Lenta.ru (12 липня 2006 року). Читальний - www.webcitation.org/65DeIEjFa з першоджерела 5 лютого 2012.
  25. Тисячі користувачів залишилися без доступу до ICQ - news.softodrom.ru/ap/b3076.shtml
  26. ICQ версії 5.1 більше не підтримується - icq2u.ru/2008/icq-versii-51-bolshe-ne-podderzhivaetsya /
  27. Плагін Updater - addons.miranda-im.org/details.php? action = viewfile & id = 2596 на addons.miranda-im.org (Англ.)
  28. Miranda IM v0.7.14 Released - www.miranda-im.org/2009/01/23/miranda-im-v0714-released/. Офіційний сайт (23 січня 2009). Читальний - www.webcitation.org/65DeJOlqU з першоджерела 5 лютого 2012.