Наши
Сайдбары
   
IRC-канал
Linuxportal.ru
   
Импорт новостей
 
Вход Быстрая регистрация На главную

Поиск:
 
   БИБЛИОТЕКА
     Другие статьи этого раздела:
 

    Hardware
Другие разделы библиотеки:
   БИБЛИОТЕКА
     последние поступления:
 

Hardware
Перевод Linux Power Management Support
03.04.2004 | San АНДРЕЕВ
Варианты решения проблем со смещением геометрии монитора.
10.10.2003 | EsTaF
Руководство по установке NVIDIA Accelerated Linux Driver Set.
06.08.2003 | Alexey Dmitriev
Multimedia
VideoCD для пингвинов
10.10.2003 | Buddha
Смотрим любимые фильмы с помощью MPlayer
23.07.2003 | Alexey Dmitriev
X-сервер
НАСТРОЙКА СЕРВЕРА XDMCP ДЛЯ WINDOWS-КЛИЕНТОВ
09.09.2004 | Kotjara
Type1 и truetype шрифты в LaTeX.
03.05.2004 | geekkoo
Почему Мозилла печатает вместо русских букв пустые квадраты, хотя в PrintPreview все нормально?
18.08.2003 | geekkoo
Разное
The Multi Router Traffic Grapher
02.06.2004 | Crion
Должностная инструкция системного администратора
04.04.2004 | San АНДРЕЕВ
GPL и LGPL: Лицензирование новых программ по GPL. Права и обязанности Пользователя и Автора программы. (Часть 2)
03.04.2004 | White_Mouse
Сеть
"Огненная стена" или строим файрвол на базе iptables
15.03.2005 | Alexey Dmitriev
Защищенная почтовая система
08.09.2004 | Crion
Postfix+Cyrus-SASL
18.12.2003 | geekkoo
Система
Усыпляем компьютер
11.01.2006 | San АНДРЕЕВ
Запуск Windows из под Linux с помощью Win4Lin.
11.11.2005 | Crion
Обновляем с помощью apt SuSE 9.1 на 9.2 или 9.3
24.05.2005 | CrownRU
   БИБЛИОТЕКА Hardware    
Автор статьи: Master400
Дата: 23.07.2003

Тарификация мини АТС PANASONIC

Предыстория.

Для PC под Windows есть прога WinTarif, которая с помощью дополнительной программы снимает логи (в режиме демона) с телефонной станции (МиниАТС) с последовательного порта (функция SMDR). Данная программа по логам с телефонной станции создает отчет: с какого внутреннего номера (EXT) был набран городской номер (куда звонили DIALING) и сколько времени данный человек висел на линии (DURATUION).
Вот я и решил для себя а почему под линухом нельзя сделать такого же.

В описаниях к многим офисным телефонным станциям есть описания данных снимаемых с порта (SMDR).

Вот пример снятия данных с порта станции -
'2003-06-16','13-50-03','16','1111100','00:00:36',120
DATE TIME CO DIAL DURATION EXT (есть еще данные но они у разных станций разные)

Можно в принципе снимать данные с порта и в лог а затем разбирать из лога. Все это муторно и лениво. Хотелось сделать как можно проще для пользователя и начальства.

Задача как бы ясна поискал в инете ничего подобного не нашел за исключением.
amp; amp;amp; amp;amp; amp;body=0

Проги опроса порта, описание, настройки и скрипты взял у автора по нику PREDATOR из Ямала (большое ему спасибо, данных вещей за время работы на линухе я еще не встречал).


Требование к наполнению системы -

Апач с поддержкой PHP, Mysql (можно другое) железо любое.

Апач пересобирал с исходников с поддержкой PHP.
./configure --prefix=/где будет лежать апач --enable-module=php --enable-module=so

PHP тоже с исходников с указанием исходников Апача и поддержкой мускула.
./configure --with-apache=../apache путь где лежат исходники апача --with-xml --with-mod_charset
по умолчанию поддержка мускула включена.
Мускул взял с дистриба готовый.

Последовательность сборки - сначало просто запустить в апаче ./configure без всяких ключей затем собрать РНР как указано выше (по желанию можно добавить все необходимое)затем сам апач. На первов этапе все.

Второй этап мускул и создание базы:

Сама база с таблицами:
Table structure for table 'DIALING'
--

DROP TABLE IF EXISTS DIALING;
CREATE TABLE DIALING (
date date default NULL,
time time default NULL,
co tinyint(3) unsigned default '0',
dial char(35) default NULL,
duration time default NULL,
ext smallint(3) unsigned default '0',
KEY (co)
) TYPE=MyISAM;


--
-- Table structure for table 'OUTLINES'
--

DROP TABLE IF EXISTS OUTLINES;
CREATE TABLE OUTLINES (
co tinyint(2) unsigned NOT NULL default '0',
number mediumint(35) unsigned default '0',
PRIMARY KEY (co)
) TYPE=MyISAM;

Примечание к базе примари кей ставить на рабочие поля не надо идет ошибка записи данных в базу можно поставить на дополнительное поле например счетчик записей.

Мускул запускается из под пользователя Mysql
после запуска надо поправить индексы в базе командой
myisamchk -r --silent --sort-index -O sort_buffer_size=16M db_dir/*.MYI

Далее Мускул запушен после запускаем апач apachectl start.

далее инициализация порта ttyS0 у автора есть готовая строка инициализации чтож она работает на РС без проблем.
Проверяем работу в сопряжении станция комп командой
cat /dev/ttyS0 должны увидеть данные
'2003-06-16','13-50-03','16','1111100','00:00:36',120
если у вас кракозябры то смотри man stty

Применил данные наработки на РС все заработало на ура.

Но у меня ж Макинтош на нем нету РС порта последовательного типа (пробовал его порт с перепайкой разъема не помогло)- вышел из положения сунул в мак PCI плату с 2 СОМ портами. С сайта разработчика взял патч под свое ядро пересобрал работает. Попробовал получить данные на порт фигушки пошли кракозябры тут мне помог geekkoo подсказал команду попроще /usr/bin/stty -F /dev/ttyS0 9600 icanon clocal cs8 -cstopb parenb
parodd

Почему именно так так а не как у автора. Вот данные по станции -
NL-Code:CR
Baud Rate:9600
8bits
Parity:odd
Stop Bit:1

Все заработало.

Теперь сами скрипты которые пишут в базу данные:
есть 2 скрипта они входят в состав пакетов автора PREDATOR. Их пришлось поправить под себя в них отсуствовали строки записи в таблицу OUTLINES.

Ну чтож все работает данные пишуться в базу инфа в браузер по запросу все довольны.
Скрипты вывода инфы можно перелопатить под себя как душе угодно (я не силен в РНР меня и так устроило).

На этом все.

Все сие творение можно применить почти к любым офисным миниАТС любых производителей. Самое главное какие данные выдает атс на порт.

Вот распайка кабеля под станцию ПАНАС 1232 - 25 папа со стороны станции 9 мама со стороны компа.

25 9

2 2
3 3
4 8
5 7
6 4
7 5
20 6

Распаек под разные станции много их можно найти в инете.
На авторство идеи не претендую.

Огромное спасибо PREDATOR за разработку скриптов и идею.
GEEKKOO за вразумление по инициализации ttyS0.


Замечания и предложения приветствуются.

С Уважением
Александр
Master400

[Обновления: Fri, 20 June 2003 11:14]


Юзверы они тоже люди и требуют внимания к себе



Все статьи раздела "Hardware"

©"Linuxportal.Ru". Материалы сайта можно
использовать свободно при условии
сохранения этой свободы при дальнейшем
распространении, если явно не указано иное

Дизайн и программирование:


Powered by pMachine Pro 2.3

Поставьте
нашу кнопку:
Получить код кнопки
Linux Portal.ru ::: Линукс Портал.ру
Наш партнер: