ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

callback: Unable to set utime

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

callback: Unable to set utime

Сообщение Makioro » 18 июн 2017, 15:29

Здравствуйте! Мне двадцать лет, я бородат, живу с мамой, тролль, лжец и девственник. Вот и сейчас... P.S. Извените за неровный почерк.
Настроил callback (не для обзвона, а чтоб в веб-интерфейсе на номер телефона тыкнуть и астериск позвонил на телефон, а потом соединил с этим номером)
Всё работает, но не нравятся вот такие сообщения:
[Jun 18 14:03:09] WARNING[100662]: pbx_spool.c:318 safe_append: Unable to set utime on /var/spool/asterisk/outgoing/1497783789.call: Operation not permitted

Гугл подсказывает что проблема в том, что файл .call не с владельцем "asterisk". Файл создаётся с помощью php скрипта когда тыкаешь на номер на странице детализации звонков, поэтому владелец по-умолчанию "www". В php есть функция "chown", но как сказано по ссылке, изменить владельца файла может только суперпользователь.
Вижу несколько вариантов решения:
1) Запускать астериск под пользователем www
2) запускать веб-сервер под пользователем asterisk
3) забить, ведь всё и так работает
Первые два совсем не нравятся. С третьим успешно справлялся, но выдалась свободное время и подумал почему бы не убрать лишние warning'и. Может есть какое-то более изящное решение?
Makioro
 
Сообщений: 21
Зарегистрирован: 22 сен 2016, 13:11

Re: callback: Unable to set utime

Сообщение yur4ik » 18 июн 2017, 18:43

Хорошо то как тут у вас

Ну это пока ded не пришел :D , обычно после его ответов у всех меняется такое праздничное настроение ...
Что касаемо вашего вопроса , вы бы не ленились пользоваться поиском , здесь же на форуме обсуждался подобный вопрос ...
В вашем случае php скрипт должен создавать фай в другой папке ( tmp ) менять пользователя и уж потом копировать в папку /var/spool/asterisk/outgoing
yur4ik
 
Сообщений: 97
Зарегистрирован: 18 фев 2013, 16:56
Откуда: Израиль , Тель-Авив

Re: callback: Unable to set utime

Сообщение Makioro » 18 июн 2017, 21:22

Скрипт так и делает: создаёт в другой папке файл, а потом его перемещает в /var/spool/asterisk/outgoing/. Могу его выложить, если надо.
Проблема, как я уже писал в первом сообщении, в том, что php-скрипт запускается под пользователем www, который не имеет прав на изменение владельца файла.
По форуму я искал, поэтому-то в первом сообщении уточнил что этот скрипт не для автообзвона - прочел вот эту тему и эту. В обеих нет решения этой проблемы. Больше тем по поиску "Unable to set utime" не находится (теперь ещё моя добавилась)
Makioro
 
Сообщений: 21
Зарегистрирован: 22 сен 2016, 13:11

Re: callback: Unable to set utime

Сообщение virus_net » 19 июн 2017, 07:20

Есть иной вариант: клиент-сервер
Запустить tcp сервер из под root, который будет передавать команды от web-интерфейса скрипту, который уже сможет выполнить любую прихоть (в том числе и chown).
Как пример такого взаимодействия (см. раздел Installing on remote host to be run separately from web-interface)
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: callback: Unable to set utime

Сообщение fecyt » 19 июн 2017, 11:33

А что, если добавить обоих пользователей в группу каждого, т.е. asterisk в www и www в asterisk, а права при создании файлика делать 775 например, или как там?
fecyt
 
Сообщений: 148
Зарегистрирован: 17 янв 2017, 18:51

Re: callback: Unable to set utime

Сообщение Repz » 19 июн 2017, 11:56

вариант три прям очень хороший)))))))
если серьезно то можно посмотреть https://www.voip-info.org/wiki/view/Ast ... ample:+PHP
Repz
 
Сообщений: 169
Зарегистрирован: 04 мар 2015, 12:35

Re: callback: Unable to set utime

Сообщение virus_net » 19 июн 2017, 13:29

AJAM тоже может быть вариантом, но надо учитывать что в таком варианте с безопасностью придется поморочится подольше.
Вот мой пример AJAM клиента на PHP, который я сделал для работы bot.subnets.ru
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: callback: Unable to set utime

Сообщение Makioro » 23 июн 2017, 20:33

Спасибо за ответы. Узнал для себя что-то новое (про AJAM)
Но, согласитесь, это слишком сложные решения чтобы просто убрать warning из логов
Пока буду следовать решению №3 :)
Makioro
 
Сообщений: 21
Зарегистрирован: 22 сен 2016, 13:11


Вернуться в Вопросы новичков

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 24

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH