Browse Source

Commit necessário para ter as atualizações para definir em sip_general.conf pela web

master
bruno 1 year ago
parent
commit
191297d408
  1. 11
      debian/pabx/Dockerfile
  2. 7
      debian/pabx/config-docker.php
  3. 37
      debian/pabx/config_network
  4. 4
      debian/pabx/etc_asterisk/sip_general.conf
  5. 0
      debian/pabx/supervisor

11
debian/pabx/Dockerfile vendored

@ -29,20 +29,22 @@ RUN /build-asterisk_php.sh
COPY etc_asterisk/* /etc/asterisk
RUN printenv | sed 's/^\(.*\)$/export \1/g' > /env_to_crontab.sh
# definir as variáveis de ambiente para o cron
RUN printenv | sed 's/^\(.*\)$/\1/g' > /etc/environment
COPY crontab.sh /
RUN sh /crontab.sh
RUN bash /crontab.sh
RUN crontab /etc/crontab
# Script chamado quando acessar a página web ip:8080/config-docker.php
COPY /config_network /
RUN chmod 755 /config_network
RUN bash /config_network
RUN chown pbx:pbx /config_network
EXPOSE 80/tcp 5038/tcp 5060/udp 5060/tcp 5160/udp 5160/tcp 10000-10030/udp
COPY docker-entrypoint.sh /
COPY supervisord.conf /etc/supervisor/supervisord.conf
RUN sed -i "s/rtpend=.*/rtpend=10030/g" /etc/asterisk/rtp.conf
RUN sed -i "s/hostname=.*/hostname=postgres/g" /etc/asterisk/cdr_pgsql.conf
RUN sed -i "s/;nocolor = .*/nocolor = yes/g" /etc/asterisk/asterisk.conf
@ -50,6 +52,7 @@ RUN sed -i "s/;nocolor = .*/nocolor = yes/g" /etc/asterisk/asterisk.conf
COPY cnvrtd /etc/init.d/
COPY rtabd /etc/init.d/
COPY supervisor /etc/init.d/
COPY functions /etc/init.d/
RUN chmod 755 /etc/init.d/rtabd
RUN chmod 755 /etc/init.d/cnvrtd

7
debian/pabx/config-docker.php vendored

@ -0,0 +1,7 @@
<?php
$result_system=system("/config_network $_SERVER[REMOTE_ADDR]",$qwe);
echo "result script $qwe"
?>

37
debian/pabx/config_network vendored

@ -1,22 +1,39 @@
#!/bin/bash
echo "---- Configurar PABX SIMPLES IP ----"
IP_HOST="$1"
if [[ -z $IP_HOST ]];then
echo "Nao definido variavel de ambiente"
echo "Sem argumento IP. ERROR"
exit;
fi
if [[ -n "$(grep "externaddr=" /etc/asterisk/sip_general.conf )" ]]
then
sed -i "s/;\?externaddr=.*/externaddr=${IP_HOST}/g" /etc/asterisk/sip_general.conf
else
echo "externaddr=${IP_HOST}" >> /etc/asterisk/sip_general.conf
fi
[[ $? -eq 0 ]] && echo "<h2>[ok] - definido externaddr=${IP_HOST}<br></h2>" || echo "<h2>[false] - externaddr nao definido</h2>"
sed -i "s/;\?externaddr=.*/externaddr=${IP_HOST}/g" /etc/asterisk/sip_general.conf
sed -i "s/;\?localnet=.*/localnet=0.0.0.0/32/g" /etc/asterisk/sip_general.conf
sed -i "s/;\?media_address=.*/media_address=${IP_HOST}/g" /etc/asterisk/sip_general.conf
pid_asterisk=$(ps -aux|grep -E "\/usr\/sbin\/asterisk"|awk '{print $2}')
if [[ -z $pid_asterisk ]];then
exit;
if [[ -n "$(grep "localnet=" /etc/asterisk/sip_general.conf )" ]]
then
sed -i "s/;\?localnet=.*/localnet=0.0.0.0\/32/g" /etc/asterisk/sip_general.conf
else
echo "localnet=0.0.0.0/32" >> /etc/asterisk/sip_general.conf
fi
[[ $? -eq 0 ]] && echo "<h2>[ok] - definido localnet=0.0.0.0/32<br></h2>" || echo "<h2>[false] - localnet nao definido</h2>"
if [[ -n "$(grep "media_address=" /etc/asterisk/sip_general.conf)" ]]
then
sed -i "s/;\?media_address=.*/media_address=${IP_HOST}/g" /etc/asterisk/sip_general.conf
else
echo "media_address=${IP_HOST}" >> /etc/astersk/sip_general.conf
fi
[[ $? -eq 0 ]] && echo "<h2>[ok] - definido media_address=${IP_HOST}<br></h2>" || echo "<h2>[false] - media_address nao definido</h2>"
kill -9 $pid_asterisk
asterisk -rx "sip reload"
[[ $? -eq 0 ]] && echo "<h2>[ok] - asterisk atualizado<br></h2>" || echo "<h2>[false] - nao carregado no asterisk</h2>"
echo "<h1>Concluido</h1>"

4
debian/pabx/etc_asterisk/sip_general.conf vendored

@ -9,3 +9,7 @@ minexpiry=60
relaxdtmf=yes
alwaysauthreject=yes
sipdebug=no
;externaddr=
;localnet=0.0.0.0/32
;media_address=

0
debian/pabx/supervisor vendored

Loading…
Cancel
Save