Страница 1 из 1
Автоматически добавление в конференцию.
Добавлено: 07 апр 2022, 13:35
Ziqqi
Добрый день, передо мной поставили такую задачу, руководителью нужно дать один номер, при набора должна создаватся конференция уже заранее предоставленном списком сотрудников (нап. менеджеры..), всем в этом списке должно пойти одновременно звонок и при ответе каждый попадает в эту конференцию.
как это можно правильно реализовать? спасибо!
Asterisk 16.25, Cent OS 7
Re: Автоматически добавление в конференцию.
Добавлено: 07 апр 2022, 19:23
Wapo
Сделайте поиск по форуму - тема уже всплывала
Re: Автоматически добавление в конференцию.
Добавлено: 08 апр 2022, 08:34
Ziqqi
Спасибо, но пока что не смог найти ничего
Re: Автоматически добавление в конференцию.
Добавлено: 08 апр 2022, 09:17
Wapo
Коротко: при звонке на номер конференции запускаете скрипт, который генерит call-файлы для обзвона участников типа:
Channel: LOCAL/<номер сотрудника>@from-internal
MaxRetries: 1
RetryTime: 45
WaitTime: 30
Context: custom-conf
Extension: <номер конференции>
Priority: 1
Re: Автоматически добавление в конференцию.
Добавлено: 08 апр 2022, 09:45
Ziqqi
Диалплан и скрипт выгладят так. При звонке на 555 попадаю на конференцию, номерам на списке /var/spool/asterisk/list.txt не приходят звонки.
что тут не так?
extensions.conf
[from-internal]
exten => _XXX,1,Dial(SIP/${EXTEN})
exten => _555, 1, Answer()
exten => _555, n,System(/var/spool/asterisk/call_list.sh)
exten => _555, n,ConfBridge(555)
exten => h, 1, System(asterisk -rx confbridge kick 555 all)
[conference]
exten => s, 1, Answer()
exten => s, n, ConfBridge(555)
/var/spool/asterisk/call_list.sh
#!/bin/sh
while read number; do
cat <<EOF > /var/spool/asterisk/$number
Channel: Local/$number@from-internal
Callerid: $number
MaxRetries: 1
RetryTime: 20
WaitTime: 30
Context: conference
Extension: 555
Priority: 1
Archive: yes
Set: CDR(userfield)=${REASON}
Account: confrence_1
EOF
chown asterisk:asterisk /var/spool/asterisk/$number
mv /var/spool/asterisk/$number /var/spool/asterisk/outgoing
echo "$number"
number=`expr $number + 1`
while [ "$?" -eq "0" ]
do
count_files ()
{
count_f=`ls /var/spool/asterisk/outgoing | wc -l`
if [ "$count_f" -eq "15" ]; then
sleep 10
return 0
else
return 1
fi
}
count_files
done
done < /var/spool/asterisk/list.txt
exit 0
Re: Автоматически добавление в конференцию.
Добавлено: 08 апр 2022, 12:10
Wapo
У вас в салл-файле посылают в контекст conference на экстен 555, а у вас там только s