1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
Import TXT plugin for Miranda IM
================================
Плагин предоставляет возможность импортировать историю контактов
из других клиентов, хранящуюся в текстовых файлах.
Copyright and License
===============================
Copyright (C) 2008 Andrey Kunitsyn (Abyss) All Rights Reserved
Some procedures are used written by Alexey Kulakov
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Установка:
==========
1. Сделайте бэкап Базы Миранды
2. Скопируйте importtxt.dll, папку importtxt и всё её содержимое в папку Plugins каталога Миранды.
3. Скопируйте файл pcre3.dll в корень миранды или system32
4. Содержимое файла importtxt_translate.txt добавьте в конец Лангпака
5. Запустите миранду
В меню контактов появится пункт "Import history..." ("Импортировать историю")
В главном меню появиться такой же пункт - это мастер импорта.
Для автостарта мастера нужно прописать в базе ImportTXT/AutoStart значение 1 типа byte
ВАЖНО:
======
Обязательно сделайте бэкап базы!
Файлы шаблонов должны быть в кодировке ANSI.
Описание:
=========
Плагин написан с нацеленностью на универсальность, вы можете написать
свои правила разбора файлов и положить в папку importtxt.
НО есть некоторые ограничения:
1. Входные файлы могут быть в любой кодировке (ANSI, UTF8, UCS2)
(перекодирование происходит с кодовой страницей лангпака, если его нет то с системной)
2. Каждое сообщение в файле должно содержать заголовок с полной информацией о нем:
- направление (входящее или исходящее)
- таймштамп (полная дата, полное время (можно без секунд, но это должно быть обозначено в шаблоне)
- текст сообщения :)
3. Начиная с версии 0.0.0.5 поддерживаются входные файлы следующего вида:
в файле есть заголовок с никами переписывающихся , в заголовке каждого сообщения есть Ник, но нет направления сообщения
(под этот тип подходят файлы экспортируемые History++)
4. Для массового импорта необходима информация о контакте назначения (UID или Ник), в заголовке файла или имени файла.
Начиная с версии 0.0.1.2 реализована поддержка некоторых бинарных файлов.
(каких именно смотрите pattern_cfg)
Начиная с версии 0.0.1.7 добавлен импорт из XML файлов ICQ5 (для импорта нужно ядро не ниже 0.8.0.21)
Примерный алгоритм работы:
==========================
В файле ищется регулярное выражение описанное в шаблоне, при помощи подвыражений выделяется дата, время и тд.
Всё что находится после него и до следующего считается текстом сообщения.
Дубликаты
=========
При импорте происходит простая проверка на дубликаты (направление, таймштамп, размер сообщения) как в import.dll
Написание шаблона:
==================
Формат файлов шаблона описан в pattern_cfg
Примеры написания с комментариями в examples
Подробнее о регулярных выражениях вы можете почитать в интернете ;).
|