Нельзя создавать call-файлы непосредственно в этой папке.
Aven ( 2012-05-05 23:51:57 +0400 )редактироватьМожно, если делать это быстро и сразу же закрывать файл.
switch ( 2012-05-06 09:47:53 +0400 )редактироватьswitch, это рейс-кондишн в чистом виде. не надо так делать.
komrad123 ( 2012-05-06 10:33:40 +0400 )редактироватьпо русски, то что тебе везет успеть записать и скинуть буфера до того как астериск начал читать файл на текущем железе с текущей нагрузкой совсем не говорит отом что везти тебе будет так всегда. В один прекрасный момент будешь долго дебажиться из за того астериск вычитал на пару строк меньше из твоего файла чем ты туда записал.
komrad123 ( 2012-05-06 10:48:00 +0400 )редактироватьСпасибо, кэп! Но в реальных системах я никогда не использую call файлы, а этот код привел в качестве примера новичку, для его задачи это оптимальное решение. Я же написал: "Самый простой способ...". Если хочешь, то можешь нагрузить человека парой мегабайт кода на дотнете.
switch ( 2012-05-06 10:50:41 +0400 )редактироватьзачем дотнет ? mv вполне себе атомарная операция идеально подойдет для этого случая.
P.S. успешно использую call файлы в реальных системах, полет нормальный.
komrad123 ( 2012-05-06 11:02:31 +0400 )редактироватьУффф... Давай еще придеремся к чистоте кода, что можно было бы сделать в 100500 раз быстрее и проще, а? Я вроде по-русски написал, что это самый простой способ. И это нифига не значит, что самый лучший, эффективный и абсолютно без ошибок. Я прекрасно знаю, что писать в этот каталог не стоит, но это не критично при небольшой нагрузке и на современных процессорах. По крайней мере у меня никаких проблем с этим не возникает, ибо все изменения в файловой системе хранятся в tmpfs и запись происходит мгновенно. А на большой нагрузке и в реальных приложениях call файлы не использую потому что не удобно.
Хотя уже объяснял уже все это...
switch ( 2012-05-06 11:10:01 +0400 )редактироватьвместо того чтоб добавить в свой скрипт одну строку ты почемуто предпочитаешь флейм развести... Проще не означает работающий с багами. Проще это как раз без всяких наворотов, а чем меньше наворотов тем меньше багов..
komrad123 ( 2012-05-06 11:21:27 +0400 )редактироватьну добавь эту строку, вместо того чтобы флейм разводить. Я говорю, что у меня багов нет.
switch ( 2012-05-06 11:25:33 +0400 )редактироватьЕсли я правильно понял то лучше вначале записать файл в темповую папку а потом его перенести в /var/spool/asterisk/outgoing ????
А как часто Астерикс читает call файлы??? а можно какой нибудь юзер гайд по этой теме???
И еще (не силен в пхп) скопировал скрипт запускаю выдает ".$to."\r\n". "Context: from-internal\r\n". "Extension: ".$to."\r\n". "Priority: 1\r\n"; $tmpfname = tempnam и т.д. Я понимаю что косяк с ковычками, но с какой не могу сообразить
tigreno ( 2012-05-11 00:01:53 +0400 )редактироватьДа, лучше создавать в одном месте, затем не копировать, а перемещать. Астериск вроде как отслеживает изменения средствами ОС. Доп. инфа тут: http://voip.rus.net/tiki-index.php?page=Asterisk+auto-dial+out
switch ( 2012-05-11 08:10:08 +0400 )редактировать
Есть несколько компонент написаных специально для работы из 1С:
Бесплатная http://simplit.com.ua/index.php/ip-phone-menu/ipphone-integration-menu/204-1cphone-free
Платная у нас http://telefon1c.ru/asterisk/
Для выполнения нужного действия нужно вызвать следующую команду: http://wiki.miko.ru/doc:1cajam:api:originate
jorikfon ( 2012-07-26 13:28:56 +0400 )редактировать