|
Как передать AT-командами факс через факс модем??? Где ошибка???
|
|||
---|---|---|---|
#18+
Вниманию в первую очередь: «Konst_One», «Antonariy», «ATM-TURBO 2», «Бенедикт», «Shocker.Pro», «Дмитрий77» и др. Прошу указать на ошибки или поделиться рабочим кодом!!!!! Пытаюсь передать одностраничный факс на факс-аппарат Panasonic KX-FT932 (старая модель) через китайский 56к факс-модем CONEXANT CX93001-EIS_V0.2013-V92(описания нет) из vb6 под Win7. Факс-модем исправен. Без проблем передает факсы (TIFF-файлы) на факс аппарат Panasonic KX-FT932 через FAXCOMEXLib или через службу факсов. TIFF-файлы «правильные», получены через службу факсов. Требования MSDN к TIFF-файлам: «Служба факсов примет файл TIFF для передачи, если он обладает следующими свойствами: • Сжатие может быть 1 (без сжатия) или 4 (кодирование факсимильного сообщения группы 4 для CCITT) [Автор: CCITT4(Fax4)] • Ширина изображения составляет 1728 пикселей • Разрешение X = 204 точки на дюйм (dpi) и разрешение Y <200 точек на дюйм • Все страницы имеют одинаковую Y-резолюцию» Использовал TIFF-файлы со всеми возможными типами сжатия: без сжатия, CCITT3(Fax3), CCITT4(Fax4) и даже те которые не применяются RLE, LZW. TIFF-файл открывается и передается в MSComm (параметры по умолчанию) всеми известными мне способами: OpenFileBinary, WIA.ImageFile, ADODB.Stream, а также с помощью WinAPI "Create/Read/WriteFile", в том числе и пакетами по 64, 128, 256, 1024 байта, которые для Class1 предваряются или обрамляются символами <DLE>. Завершается передача данных символьной парой <DLE><ETX>. Передавал файл целиком и со смещением по формуле 8+(2+12*КоличествоТэгов). Сессии заканчиваются с ошибками, как правило в «фазе С», т.е. в момент передачи данных в MSComm, при этом факс аппарат 2-а раза протаскивает бумагу по ~2см и печатает во всю ширину 2-е пунктирные линии. Для указанной пары <факс+модем> согласованные параметры сессии отличаются от параметров передаваемых TIFF-файлов, полученных с помощью службу факсов, только тем, что: • Разрешение по Y - 0(default): Normal: 98 lpi, а используемых мной - 1: Fine: 196 lpi; • Сжатие - 0(default): 1-D modified huffman. Точно не знаю, но вероятно это - CCITT3(Fax3). Отсюда вопросы: 1. Как программно изменить «Разрешение по Y» имеющийся TIFF-файл c 196 lpi на 98 lpi; 2. Как программно сжать имеющийся TIFF-файл по алгоритму «1-D modified huffman». 3. В чем разница между «lpi» и «dpi» '''**** Типичная СЕССИЯ ****************************************** '''**************************************************************** ATZ OK AT+FCLASS=2 OK ATX4 OK ATDT ХХХХХХХ - №факса +FCON +FDIS: 1,2,0,2,1,0,0,5 OK AT FDT +FDCS: 0,3,0,2,0,0,0,5 Согласованные параметры СЕССИИ: 1. Несоответствие №1. 1-й параметр=0 - Разрешение по Y=98 lpi; 2. Несоответсвие №2. 5-й параметр=0 – Сжатие =«1-D modified huffman»; 3. Остальные подходят. Connect Передача TIFF-файла(получен через службу факсов: Y=196 lpi, CCITT4(Fax4)) + DLE+ETX OK AT FET = 2 +FPTS: 002 - Страница плохая; Запросил переподготовку OK ATH +FHNG: 050 - Неопределенная ошибка передачи фазы D. OK '''******** Завершение сессии ************************************* '''************************************************************************ ... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2017, 13:55 |
|
Как передать AT-командами факс через факс модем??? Где ошибка???
|
|||
---|---|---|---|
#18+
espkk3, я одного не понимаю, зачем тебе >AT-командами ??? Тебе факс отправить надо (практический интерес)? Или типа заняться нечем (академический интерес)? Это все написано 20-30 лет назад умными людьми, инженерами-программистами так сказать высокого уровня (вернее "низкого")- иных уж нет а те далече. Имеет воплощение в большом количестве хороших, и не очень хороших факс программ. Вот я лично не знаю и никогда сильно не интересовался как его отправить на низком уровне, запихнув в COM-порт AT команды. Ну AT, ATD, ATZ еще знаю, но чтоб отправить факс, любая факс программа это и без моих жалких попыток знает. Когда-то году в 2003(2001?) подобным образом на низком уровне отправлял SMS через модем сотового Siemens -гимор еще тот, это максимум что сваял на эту тему. Если интерес практический, то самое простое и на мой взгляд правильное решение: Windows Fax Service (Microsoft Fax). К твоему модему его подключить 99% не проблема. Если проблема, то займись для начала поисками драйвера (или другого модема, что ни есть проблем даже сейчас). Но судя по слову CONEXANT, для факсов самое то, популярные когда-то у нас Zyxel, надо сказать Г. еще то, для Dial-Up-а может и ничего были, но не для факсов. Для автоматизированных задач существуют прекрасные API: Fax Service Fax Service Extended COM Reference Sending a Fax В VB6 через COM (не тот который порт) билиотека ActiveX подключается и все делается. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2017, 01:27 |
|
Как передать AT-командами факс через факс модем??? Где ошибка???
|
|||
---|---|---|---|
#18+
espkk3, А впрочем, не дочитал. Так понимаю с AT ты как-то разобрался, но есть какие-то проблемы с передаваемым TIFF-файлом. espkk3Отсюда вопросы: 1. Как программно изменить «Разрешение по Y» имеющийся TIFF-файл c 196 lpi на 98 lpi; 2. Как программно сжать имеющийся TIFF-файл по алгоритму «1-D modified huffman». 3. В чем разница между «lpi» и «dpi» Я запихнул 4 моих модуля в архив. Хочешь, разбирайся, чем-то это тебе поможет, коль намерения серьезные. Изменить разрешение с normal на draft - c_MultiFrameImage (gdi++)-класс сделанный когда-то Бенедиктом, я его под себя переделывал. modified huffman - я делал под SFF а не под TIFF, 1-D -уже не помню что это. Это кучу теории читать надо и вникать. Библиотека libtiff (OpenSource) еще в помощь, там кстати есть exe-шники, кот. мудруют над форматом TIFF. При этом следует понимать что понимания компрессий, битов и т.п. немного разнятся с Microsoft-овским. libtiff -одна кухня GDI++ -другая TIFF в MSFax -третья, при этом он не любой TIFF понимает, вернее MSFax это оболочка, а c TIFF работает FSP, и как правило это Microsoft Modem FSP (Fax Service Provider), но можешь написать своего FSP под MSFax. Вопросы задавать конечно можешь, но лично мне вникать сейчас во все это не очень охота, все что мне надо было давно сделал. Еще есть куча моих постов на эти темы, где учавствует Бенедикт (это про GDI++), а также касательно SFF, можешь поиском глянуть. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2017, 03:24 |
|
|
start [/forum/topic.php?fid=60&fpage=15&tid=2155260]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
27ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
2ms |
others: | 295ms |
total: | 409ms |
0 / 0 |