Страница 2 из 4

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 13:04
dimashkarin
Написал с помощью параметра G

Код: Выделить всё

[dostavka2]
exten => _X.,1,Dial(SIP/501,30,30,G([[file12]501]n))

[file12]
exten => _X.,1,system(touch /var/call.txt) ;это не нужно
exten => _X.,n,system(echo "${CALLERID(name)}}" >> /var/dostavka/301.txt)
файл не записывается

Код: Выделить всё

Executing [78126400011@dostavka2:1] Dial("SIP/westcall-out-0000010d", "SIP/501,30,30,G([[file12]501]n)") in new stack
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Called SIP/501
    -- SIP/501-0000010e is ringing
    -- SIP/501-0000010e is ringing
    -- SIP/501-0000010e is ringing
    -- SIP/501-0000010e answered SIP/westcall-out-0000010d
    -- Locally bridging SIP/westcall-out-0000010d and SIP/501-0000010e
  == Spawn extension (dostavka2, 78126400011, 1) exited non-zero on 'SIP/westcall-out-0000010d'

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 13:47
pan-user
это наверное потому что у диал нет опции '30'

:)

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 13:58
dimashkarin
убрал 30
теперь хотя бы ругается

Код: Выделить всё

    -- Executing [78126400011@dostavka2:1] Dial("SIP/westcall-out-0000011b", "SIP/501,30,G([[file12]s]n)") in new stack
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Called SIP/501
    -- SIP/501-0000011c is ringing
    -- SIP/501-0000011c is ringing
    -- SIP/501-0000011c answered SIP/westcall-out-0000011b
    -- Auto fallthrough, channel 'SIP/westcall-out-0000011b' status is 'ANSWER'
  == Starting SIP/501-0000011c at dostavka2,78126400011,3 failed so falling back to exten 's'
  == Starting SIP/501-0000011c at dostavka2,s,1 still failed so falling back to context 'default'

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 14:14
dimashkarin

Код: Выделить всё

[dostavka2]
exten => _X.,1,Dial(SIP/501,30,G(file12,501,1))

[file12]
exten => 501,1,system(touch /var/call.txt) 
exten => 501,n,system(echo "${CALLERID(name)}-${DIALEDPEERNUMBER}" >> /var/dostavka/301.txt)

Файл начал записываться
но после ответа идут короткие гудки, в чем может быть дело?

Код: Выделить всё

  -- Called SIP/501
    -- SIP/501-00000131 is ringing
    -- SIP/501-00000131 is ringing
    -- SIP/501-00000131 answered SIP/westcall-out-00000130
    -- Executing [501@file12:1] System("SIP/westcall-out-00000130", "touch /var/call.txt") in new stack
    -- Executing [501@file12:2] System("SIP/501-00000131", "echo "device-501" >> /var/dostavka/301.txt") in new stack
    -- Auto fallthrough, channel 'SIP/501-00000131' status is 'UNKNOWN'
    -- Executing [501@file12:2] System("SIP/westcall-out-00000130", "echo "78125346380-501" >> /var/dostavka/301.txt") in new stack
    -- Auto fallthrough, channel 'SIP/westcall-out-00000130' status is 'ANSWER'

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 14:21
pan-user
в недочитанной документации

для запуска макросов M
для запуска подпрограмм U

G сильно из другой оперы

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 14:38
kasper
dimashkarin писал(а):К сожалению AMI использовать нельзя.
Омг. Челябинский астериск настолько суров, что при каждом звонке запускает 4 программы и обменивается информацией через текстовые файлы.

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 14:46
dimashkarin
Текстовой файл нужен для интеграции с crm системой

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 15:51
Aven
Суровая челябинская CRM система с интеграцией через текстовые файлы, поди под великим и могучим DOS'ом работает.

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 16:06
dimashkarin
Файл создается, но дублируются команды, не могу понять почему.

Код: Выделить всё

  -- Executing [78126400011@dostavka2:1] Dial("SIP/westcall-out-000001a1", "SIP/501&SIP/301&SIP/302&SIP/303&SIP/304,30,G(file12,s,1)") in new stack
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Called SIP/501
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Called SIP/301
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Called SIP/302
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Called SIP/303
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Called SIP/304
    -- SIP/501-000001a2 connected line has changed. Saving it until answer for SIP/westcall-out-000001a1
    -- SIP/301-000001a3 connected line has changed. Saving it until answer for SIP/westcall-out-000001a1
    -- SIP/302-000001a4 connected line has changed. Saving it until answer for SIP/westcall-out-000001a1
    -- SIP/303-000001a5 connected line has changed. Saving it until answer for SIP/westcall-out-000001a1
    -- SIP/304-000001a6 connected line has changed. Saving it until answer for SIP/westcall-out-000001a1
    -- SIP/304-000001a6 is ringing
    -- SIP/303-000001a5 is ringing
    -- SIP/302-000001a4 is ringing
    -- SIP/301-000001a3 is ringing
    -- SIP/301-000001a3 is ringing
    -- SIP/501-000001a2 is ringing
    -- SIP/501-000001a2 is ringing
    -- SIP/501-000001a2 is ringing
    -- SIP/501-000001a2 connected line has changed. Saving it until answer for SIP/westcall-out-000001a1
    -- SIP/501-000001a2 answered SIP/westcall-out-000001a1
    -- Executing [s@file12:1] System("SIP/westcall-out-000001a1", "touch /var/"501".txt") in new stack
    -- Executing [s@file12:2] System("SIP/501-000001a2", "echo "device" >> /var/dostavka/"501".txt") in new stack
    -- Executing [s@file12:2] System("SIP/westcall-out-000001a1", "echo "78125348684" >> /var/dostavka/"501".txt") in new stack
    -- Executing [s@file12:3] Wait("SIP/501-000001a2", "60") in new stack
    -- Executing [s@file12:3] Wait("SIP/westcall-out-000001a1", "60") in new stack
    -- Executing [s@file12:4] System("SIP/501-000001a2", "mv /var/dostavka/"501".txt /var/dostavka/old/"501".txt") in new stack
    -- Executing [s@file12:4] System("SIP/westcall-out-000001a1", "mv /var/dostavka/"501".txt /var/dostavka/old/"501".txt") in new stack

И осталось сделать так чтобы связывались каналы.

Re: ЗАПУСК КОМАНДЫ SYSTEM ПОСЛЕ ПОДНЯТИЯ ТРУБКИ!

Добавлено: 24 май 2013, 16:07
dimashkarin
сам контекст

Код: Выделить всё

[dostavka2]
exten => _X.,1,Dial(SIP/501&SIP/301&SIP/302&SIP/303&SIP/304,30,G(file12,s,1))

[file12]

exten => s,1,system(touch /var/"${DIALEDPEERNUMBER}".txt)
exten => s,n,system(echo "${CALLERID(name)}" >> /var/dostavka/"${DIALEDPEERNUMBER}".txt)
exten => s,n,Wait(60)
exten => s,n,system(mv /var/dostavka/"${DIALEDPEERNUMBER}".txt /var/dostavka/old/"${DIALEDPEERNUMBER}".txt)