Вы не авторизованы

Вы можете читать сообщения. Если вы хотите создать новую тему или присоединиться к обсуждению, пройдите процедуру регистрации или авторизуйтесь.

Выбрать дату в календареВыбрать дату в календаре

[ Закрыто] Asterisk 11 + УПП отравка факсов, Отправка факса из 1С через res_http_post.so
 
Если честно я думал этот параметр служит только если использовать php скрипт! Подставил и убрал костыли из 1С ВСЕ РАБОТАЕТ!
[ Закрыто] Asterisk 11 + УПП отравка факсов, Отправка факса из 1С через res_http_post.so
 
Да все заработало, надо бы в конфигурации 1С добавить комментарии что корректировать вручную надо!
[ Закрыто] Asterisk 11 + УПП отравка факсов, Отправка факса из 1С через res_http_post.so
 
Добрый день,делаю интеграцию для отправки факсов. Настроил все по инструкции. С компьютера до сервера asterisk через post файл уходит.


Код
 captain@captain-M85M-US2H ~ $ curl --cookie cookies.txt --cookie-jar cookies.txt "http://192.168.6.2:8088/asterisk/rawman?action=Login&username=1cami&secret=password"
Response: Success
Message: Authentication accepted

captain@captain-M85M-US2H ~ $ curl --cookie cookies.txt -F "file=@/home/user/Документы/201303141246.pdf" "http://192.168.6.2:8088/asterisk/uploads"
<!DO CTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<ht ml><head>
<title>200 OK</title>
</head><body>
<h1>OK</h1>
<p>File successfully uploaded.</p>
<hr />
<address>Asterisk Server</address>
</body></html>
Файл как и положено появляется в папке /var/spool/asterisk/uploads

Но при отправке из 1С файл не появляется(специально в dialplan закоментировал ;exten => 0000333,n,System( rm ${input_path}${faxfile}.pdf),тоесть фактически PDF файл не передается ):


Код
[2013-06-17 15:24:16] ERROR[3936][C-00000074]: res_fax.c:2341 sendfax_exec: access failure.  Verify '/var/spool/asterisk/fax/SIP-770170613032617.tif' exists and check permissions.

 
Cо стороны 1С


Код
Если Компонент.PostFile(ИмяФайлаДляОтправки,УРЛСервераДляОтправкиФакса,,,Результат) Тогда 
            ФайлОтправленНаСерверAsterisk=Истина;
            // Askozia                      // "http://"+Хост+":56080/1c/upload.php" 
            // FreePBX (скрипты версии 2.1)    // "http://"+Хост+":80/1c/upload.php"  

УРЛСервераДляОтправкиФакса имеет значение:
Код
http://192.168.6.2:

Дальше в компоненте я соответственно не знаю что происходит не подскажите где ловить ошибку?
Изменено: Пономарев Дмитрий - 17.06.2013 14:29:49
[ Закрыто] Права доступа на Обработку Мико
 
Спасибо разобрались,оказывается без присваивания номеров она не запускается,что конечно же логично! Спасибо за помощь!
[ Закрыто] Права доступа на Обработку Мико
 
1. Версия компоненты: 1.0.18.3

2. Версия обработки: 1.3.18.11

3. Версия 1С: УПП 1.3.39.1

4. Платформа 8.2.18.82

4. Режим запуска панели телефонии: встроенная в конфигурацию

Укажите, пожалуйста, более подробно к каким подсистемам (модулям,справочникам, константам, регистрам и т.п.) необходим доступ обработке, т.к. у нас не используются типовые права конфигурации
Изменено: Пономарев Дмитрий - 11.06.2013 09:15:01
Получение callerID из cdr asterisk или при звонке!
 
Цитата
Текущая версия компонента не поддерживает кириллицу. Исправим, в следующих релизах.
Очень было бы полезно! Я бы реализовал через внешнее подключение 1С к mysql, но 1С почему-то нормально не подключается,баги с отображение таблиц базы mysql

Цитата
В общем мы давно думали над этим вопросом, пришли к выводу, что это не требуется.

Вообще я бы тут поспорил,приведу два примера:

1. АТС и 1С занимаются обычно разные люди и зачастую, справочники вообще не согласованны,а если еще учитывать что в 1С работает лишь какая-то часть пользователей, а АТС пользуются ВСЕ то очень важно иметь локальный справочник для АТС,так как удобно когда вместе с телефоном высвечивается фамилия звонящего,те же телефоны Yealink это позволяют!

2. Если используются внешние справочники,например тот же 2gis или AD(заворачивая данные в callerID), то получается для правильной работы надо делать синхронизацию и с 1С,получается двойная работа!

     А в добавление данного функционала в компоненту обходится парой строчкой и НИКАК не влияет на тот же справочник 1С,так как данные из него являются приоритетными!
Получение callerID из cdr asterisk или при звонке!
 
Добрый День, не подскажите еще по интеграции панели к 1С, хотел чтобы в 1С попадал callerID который забит на пользователя на АТС. Добавил в контекст 0000555 поле a.clid
Код
exten => 0000555,n,ExecIf($[${i}=1]?Set(SQLrequest=SEL ECT a.calldate,a.src,a.dst,a.channel,a.dstchannel,a.billsec,a.disposition,a.uniqueid,a.clid  fr om (SELECT * fr om cdr wh ere calldate BETWEEN
callerID русские имена кодировка utf-8. Со стороны 1С видно что поле приходит, но в не читаемой кодировке, файл ${tmp_dir}/${UNIQUEID} имеет кодировку utf-8. В какой кодировке должен быть файл ${tmp_dir}/${UNIQUEID},чтобы 1С через компоненту понял русский язык ?

Вообще мне кажется надо бы изменить слегка логику,сейчас у вас не берется callerID вовсе что не совсем удобно,так как например может быть локальный справочник. По идеи логика должна быть такая: Если в справочнике 1С нету информации,то брать callerID из asterisk, если есть в 1С и asterisk,то брать приоритетно из 1С!
[ Закрыто] Права доступа на Обработку Мико
 
Права на Администрирование данных выставлены,ошибки не выдает теперь но панель не появляется. Под полными правами все работает,возможно еще что-то надо?
[ Закрыто] Права доступа на Обработку Мико
 
Добрый День не подскажите какие права доступа необходимо проставить в 1С, помимо прав доступа на Обработку Мико? На обычного пользователя в УПП выдает:

Код
{Обработка.МИКО_ПанельТелефонииAsterisk.МодульОбъекта(415}: Ошибка при вызове метода контекста (Загрузить) 
по причине: 
{Обработка.МИКО_ПанельТелефонииAsterisk.МодульОбъекта(415}: Ошибка при вызове метода контекста (Загрузить) 
 
по причине: 
Нарушение прав доступа!
[ Закрыто] Запись звонков и получение на них ссылки, Запись звонков и получение на них ссылки из панели 1С
 
Вообщем сделал Настройка Asterisk для скачивания файла записи пользователем из панели телефонии без добавление

Цитата
exten => s,n,Set(CDR(recordingfile)=${CALLFILENAME})
Подредактировал на asterisk диалплан 0000666к такому виду(переконвертирую в mp3,нужно чтобы в системе стоял lame)


Код
exten => 0000666,1,NoCDR()
exten => 0000666,n,Set(chan=${v1})
exten => 0000666,n,Set(uniqueid1c=${v3})
exten => 0000666,n,Set(monitor_path=${ASTSPOOLDIR}/monitor)
exten => 0000666,n,Set(fax_path=${ASTSPOOLDIR}/fax)
exten => 0000666,n,Set(recuploadfldr=/var/www/1c/rec)
exten => 0000666,n,Set(faxuploadfldr=/var/www/1c/fax)
exten => 0000666,n,Set(RecFax=${v6})
exten => 0000666,n,Answer()
exten => 0000666,n,Gotoif($[${RecFax} = FAX]?FAX)
exten => 0000666,n,Gotoif($[${RecFax} = Records]?Records)
exten => 0000666,n,Hangup()

exten => 0000666,n(FAX),NoOp()
exten => 0000666,n,Set(result=${SHELL(find ${fax_path} -name ${uniqueid1c}* -exec cp {} ${faxuploadfldr} \;)})
exten => 0000666,n,Set(faxfile=${SHELL(cd ${faxuploadfldr} && find  ${uniqueid1c}*|head -n 1)})
exten => 0000666,n,ExecIf($[${LEN(${faxfile})} < 4 ]?UserEvent(FailDownloadFax,Channel: ${chan}))
exten => 0000666,n,ExecIf($[${LEN(${faxfile})} > 4 ]?UserEvent(StartDownloadFax,Channel: ${chan},FileName: 80/1c/fax/${faxfile))
exten => 0000666,n,Wait(30)
exten => 0000666,n,System(rm  ${faxuploadfldr}/${faxfile})
exten => 0000666,n,Hangup()

exten => 0000666,n(Records),NoOp()
exten => 0000666,n,Set(namedorashiren=$[${LEN(${uniqueid1c})}-4])
exten => 0000666,n,Set(decode_mp3=${SHELL(lame -S -V2 ${monitor_path}/${uniqueid1c} ${monitor_path}/${uniqueid1c:0:${namedorashiren}}.mp3 && rm -f ${monitor_path}/${uniqueid1c} && echo OK)})
exten => 0000666,n,Set(recordingfile=${uniqueid1c:0:${namedorashiren}}.mp3)
exten => 0000666,n,Gotoif($[${LEN(${recordingfile})} > 4]?FindInFileSystem:FailDownload)
exten => 0000666,n(FindInFileSystem),Set(result=${SHELL(echo OK && cp ${monitor_path}/${recordingfile} ${recuploadfldr})})
exten => 0000666,n,Wait(1)
exten => 0000666,n,Set(recfile=${SHELL(cd ${recuploadfldr} && find *${recordingfile}*|head -n 1)})
exten => 0000666,n,ExecIf($[${LEN(${recfile})} > 4 ]?UserEvent(StartDownloadRecord,Channel: ${chan},FileName: 80/1c/rec/${recfile}))
exten => 0000666,n(FailDownload),ExecIf($[${LEN(${recfile})} < 4 ]?UserEvent(FailDownloadRecord,Channel: ${chan}))
exten => 0000666,n,Wait(15)
exten => 0000666,n,System(rm  ${recuploadfldr}/${recfile})
exten => 0000666,n,Hangup() 
На стороне 1С использую не Monitor,а Mixmonitor для того чтобы создавался один файл,а также конвертирую его из wav в mp3

P.S  Мне кажется надо добавить в комментарии в коде 1С к параметрам Monitor что для микширования каналов должен быть установлен sox
[ Закрыто] Запись звонков и получение на них ссылки, Запись звонков и получение на них ссылки из панели 1С
 
Цитата
Алексей Портнов пишет:
То есть, где стартует запись разговоров там и заполняйте поле.
А нельзя ли добавить в вашь контекст 0000666,чтобы это срабатывало только при записи из 1С ?
[ Закрыто] Запись звонков и получение на них ссылки, Запись звонков и получение на них ссылки из панели 1С
 
Настраиваю демо версию чтобы оценить все возможности и купить лицензию!  Компонент установился и подключили к 1С, проходит звонок и срабатывает запись(создаются файлы разговора в...asterisk/monitor/ ), но ссылка в 1С не формируется (Файл с записью разговора не найден на сервере ASTERISK.) !  Лог asterisk'а

   
Код
-- Executing [0000666@miko_ajam:1] NoCDR("Local/0000666@miko_ajam-0000000a;2", ""    in new stack
    -- Executing [0000666@miko_ajam:2] Set("Local/0000666@miko_ajam-0000000a;2", "chan=SIP/780"    in new stack
    -- Executing [0000666@miko_ajam:3] Set("Local/0000666@miko_ajam-0000000a;2", "uniqueid1c="    in new stack
    -- Executing [0000666@miko_ajam:4] Set("Local/0000666@miko_ajam-0000000a;2", "monitor_path=/var/spool/asterisk/monitor"    in new stack
    -- Executing [0000666@miko_ajam:5] Set("Local/0000666@miko_ajam-0000000a;2", "fax_path=/var/spool/asterisk/fax"    in new stack
    -- Executing [0000666@miko_ajam:6] Set("Local/0000666@miko_ajam-0000000a;2", "recuploadfldr=/var/www/1c/rec"    in new stack
    -- Executing [0000666@miko_ajam:7] Set("Local/0000666@miko_ajam-0000000a;2", "faxuploadfldr=/var/www/1c/fax"    in new stack
    -- Executing [0000666@miko_ajam:8] Set("Local/0000666@miko_ajam-0000000a;2", "RecFax=Records"    in new stack
    -- Executing [0000666@miko_ajam:9] Set("Local/0000666@miko_ajam-0000000a;2", "dbname=asterisk"    in new stack
    -- Executing [0000666@miko_ajam:10] Set("Local/0000666@miko_ajam-0000000a;2", "user=asterisk"    in new stack
    -- Executing [0000666@miko_ajam:11] Set("Local/0000666@miko_ajam-0000000a;2", "password=27152715"    in new stack
    -- Executing [0000666@miko_ajam:12] Answer("Local/0000666@miko_ajam-0000000a;2", ""    in new stack
    -- Executing [0000666@miko_ajam:13] GotoIf("Local/0000666@miko_ajam-0000000a;2", "0?FAX"    in new stack
    -- Executing [0000666@miko_ajam:14] GotoIf("Local/0000666@miko_ajam-0000000a;2", "1?Records"    in new stack
    -- Goto (miko_ajam,0000666,24)
    -- Executing [0000666@miko_ajam:24] NoOp("Local/0000666@miko_ajam-0000000a;2", ""    in new stack
    -- Executing [0000666@miko_ajam:25] Set("Local/0000666@miko_ajam-0000000a;2", "recordingfile=
"    in new stack
    -- Executing [0000666@miko_ajam:26] GotoIf("Local/0000666@miko_ajam-0000000a;2", "0?FindInFileSystem:FindInUserfield"    in new stack
    -- Goto (miko_ajam,0000666,27)
    -- Executing [0000666@miko_ajam:27] Set("Local/0000666@miko_ajam-0000000a;2", "recordingfile=
"    in new stack
    -- Executing [0000666@miko_ajam:28] GotoIf("Local/0000666@miko_ajam-0000000a;2", "0?FindInFileSystem:FailDownload"    in new stack
    -- Goto (miko_ajam,0000666,34)
    -- Executing [0000666@miko_ajam:34] ExecIf("Local/0000666@miko_ajam-0000000a;2", "1?UserEvent(FailDownloadRecord,Channel: SIP/780)"    in new stack
    -- Executing [0000666@miko_ajam:35] Wait("Local/0000666@miko_ajam-0000000a;2", "30"    in new stack



Посмотрел по базе cdr поле recordingfile пустое,тоесть не заполняется,поэтому и не видит файл! Asterisk у меня без FreePBX. Получается чтобы это поле заполнялось во все экстеншены мне надо вставить
exten => s,n,Set(CDR(recordingfile)=${CALLFILENAME}) что будет не красиво, возможно ли это где-то указать в конфиге cdr ? Вообщем вопрос как лучше сделать? На wiki(http://wiki.miko.ru/doc:panel1ccrm:asterisk_config:playrecords) для простого asterisk данный вопрос не рассмотрен!