Хранение записей в общей папке windows В ряде случаев необходимо предусмотреть сохранение записей разговоров на сетевой диск. В этом примере покажем как подключить к MikoPBX общий каталог windows.
Обратите внимание : если сетевой каталог будет не доступен, возможны сбои в работе АТС.
Создадим каталог для хранения скрипта
Copy mkdir /storage/usbdisk1/mikopbx/custom_modules/shared-folder-script
Copy cat > /storage/usbdisk1/mikopbx/custom_modules/shared-folder-script/mount-shared-folder.sh
Вставьте содержимое скрипта
Copy #!/bin/sh
HOST = '//172.16.32.38/SharedFolder' ;
USER = '' ;
PASS = '' ;
REC_DIR = 'autorecords' ;
mountPoint = '/storage/win-shared' ;
createLink ()
{
subDir = "$(date '+%Y/%m')" ;
monitorDir = "$(/bin/busybox grep monitordir < /etc/inc/mikopbx-settings.json | /bin/busybox cut -f 4 -d '"')";
if [ "${monitorDir}x" = ' x ' ];then
echo "Empty monitor dir";
return;
fi;
/bin/busybox mkdir -p "$monitorDir" "$mountPoint/$REC_DIR/$subDir";
if [ ! -L "$monitorDir/$subDir" ] && [ -d "$monitorDir/$subDir" ];then
cp -r "$monitorDir/$subDir/"* "$mountPoint/$REC_DIR/$subDir";
rm -rf "${monitorDir:?}/$subDir/";
ln -s "$mountPoint/$REC_DIR/$subDir" "${monitorDir:?}/$subDir";
fi;
if [ ! -L "$monitorDir/$subDir" ] && [ ! -f "${monitorDir:?}/$subDir" ]; then
ln -s "$mountPoint/$REC_DIR/$subDir" "${monitorDir:?}/$subDir";
fi;
}
/bin/busybox mount | /bin/busybox grep "$HOST";
resGrep="$?";
if [ "$resGrep" = "0" ]; then
echo "Disk is mounted..."
createLink;
exit 2;
fi;
mkdir -p "$mountPoint";
/bin/busybox mount -t cifs "$HOST" "$mountPoint" -o "username=$USER,password=$PASS,vers=2.0"
resMount="$?";
if [ "$resMount" != ' 0 ' ];then
echo "Error mount $HOST"
exit 1;
fi;
createLink;
Нажмите сочетание клавиш «CTRL+D» два раза для завершения создания файла
Предоставьте права на исполнение
Copy chmod +x /storage/usbdisk1/mikopbx/custom_modules/shared-folder-script/mount-shared-folder.sh
В переменных скрипта «HOST,USER,PASS » следует описать параметры подключения к общему каталогу
Скрипт необходимо доавить в cron для автоматического подключения общей папки
Перейдите в раздел «Система » - «Кастомизация системных файлов »
Добавьте в конец файла «/var/spool/cron/crontabs/root » следующее правило
Copy */1 * * * * /storage/usbdisk1/mikopbx/custom_modules/shared-folder-script/mount-shared-folder.sh > /dev/null 2> /dev/null
Протестируйте работу АТС, убедитесь, что записи разговоров сохраняются на сетевой диск.