2017年11月29日水曜日

Asterisk の再セットアップ -- 各種設定ファイル


Asterisk/Hylafax/iaxmodem/ssmptp の各種設定ファイルは以下のとおりです。


これらはコピペして使っていいのですが、各自の環境や運用に合わせて変更しなくてはならないものを含んでいますので、適正に判断ください。



-------------------------------------------------------------------------------------------
❏ Raspbian STRETCH をクリーンインストールする
❏ Asterisk をインストールする
❏ googletts.agi を使ってみる
❏ Asterisk にボイスメールを設定する
❏ Asterisk で FAX 送受信してみる
❏ Asterisk の各種設定ファイル ⇐ いまココ
-------------------------------------------------------------------------------------------




一覧にすると以下のファイルが対象です。

この中には変更や新たに設定するもの、および変更がないものも含まれています。


プログラム
場所(ディレクトリ)
対象ファイル(xxxxは変更なし)
asterisk
/etc/asterisk
asterisk.conf
sip.conf
extensions.conf
iax.conf
modules.conf
voicemail.conf
hylafax
/etc/hylafax
config
config.ttyIAX
FaxDispatch
faxmail.ps
hfaxd.conf
hosts.hfaxd
hyla.conf
pagesizes
sendfax.conf
setup.cache
setup.modem
templates(ディレクトリ)
typerules
/etc
dialrules
lutRS18.pcf
iaxmodem
/etc/iaxmodem
ttyIAX
Iaxmodem 起動スクリプト
/etc/init.d
iaxmodem
ssmtp
/etc/ssmtp
ssmtp.conf



設定ファイルの・新たな内容/変更内容



❏ asterisk:; asterisk.conf(以下を変更)

31行目(コメントを外して 'yes' にする)
languageprefix = yes

71行目('en' を 'ja' に変更する)
defaultlanguage = ja




❏ asterisk:; sip.conf(各自の環境に合わせて設定ください)




❏ asterisk:; extensions.conf(各自の環境に合わせて設定ください)





❏ asterisk:; iax.conf(ファイル全体の内容)

[general]
port=4569
iaxcompat=yes
language=ja
bandwidth=medium
jitterbuffer=no
forcejitterbuffer=no
minregexpire=300
maxregexpire=3600
quality=yes
transfer=no

[iaxmodem]
type=friend
username=iaxmodem
secret=パスワード
host=dynamic
disallow=all
allow=ulaw
allow=slin
allow=gsm
context=fax-out  extensions.conf FAX送信 exten を記述するセクション名





❏ asterisk:; modules.conf

以下を最終行に追記

noload => res_phoneprov.so
noload => res_ari.so
noload => chan_mobile.so
noload => chan_skinny.so
noload => app_confbridge.so
noload => cel_custom.so





❏ asterisk:; voicemail.conf(ファイル全体の内容)

[general]
format=wav49
serveremail=asterisk
attach=yes
maxmsg=999
maxsecs=180
skipms=3000
maxsilence=10
silencethreshold=128
maxlogins=3

charset=UTF-8
emailsubject=[PBX]: 音声メールボックス: ${VM_MAILBOX} ${VM_MSGNUM} 番に新しいメッセージです

emailbody=電 話 番 号: ${VM_CALLERID}\n\nメッセージ長: ${VM_DUR} \n\n${VM_DATE}\n\n\t\t--- by   Asterisk Server

emaildateformat=着 信 日 時: %Y/%m/%d, %r
mailcmd=/usr/sbin/sendmail -t
saycid=yes
sendvoicemail=yes
delete=yes

[zonemessages]
japan=Japan|Q PHM 'jp-ni' 'vm-received'

[default]
500 => 1111,送信者名,メールアドレス,,delete=1|tz=japan
;500 はボイスメール番号、1111 はパスワード
;送信者名(任意)、メールアドレス(送信して欲しいメールアドレス)
[other]
;*** End of voicemail.conf



❏ hyafax:; config(ファイル全体の内容)

LogFacility: daemon
CountryCode: 81
AreaCode: 50   ; 電番の 03 とか(IP電話の場合 50)
LongDistancePrefix: 0
InternationalPrefix: 001
DialStringRules: "etc/dialrules"
ServerTracing: 1




❏ hylafax:; config.ttyIAX(ファイル全体の内容)

CountryCode: 81
AreaCode: 50
FAXNumber: +81.50.abcd.efgh
LongDistancePrefix: 0
InternationalPrefix: 001
DialStringRules: etc/dialrules
ServerTracing: 1
SessionTracing: 0xFFF
RecvFileMode: 0600
LogFileMode: 0600
DeviceMode: 0600
RingsBeforeAnswer: 1
SpeakerVolume: off
GettyArgs: "-h %l dx_%s"
LocalIdentifier: "050.abcd.efgh"
TagLineFont: etc/lutRS18.pcf
TagLineFormat: "From %%l|%c|Page %%P of %%T"
MaxRecvPages: 10

ModemType: Class1
Class1AdaptRecvCmd: AT+FAR=1
Class1TMConnectDelay: 400
Class1RMQueryCmd: "!24,48,72,96"
Class1TMQueryCmd: "!24,48,72,96"

ModemResetCmds: AT+VCID=1
PagerTTYParity: none

CallIDPattern: "NMBR="
CallIDPattern: "NAME="
CallIDPattern: "ANID="
CallIDPattern: "NDID="




❏ hylafax:; FaxDispatch(ファイル全体の内容・以下の3行のみ)

SENDTO=メールアドレス
FROMADDR=メールアドレス
FILETYPE=pdf;




❏ hyafax:; hfaxd.conf

28行目に追記
JobFmt: "%-5j %1a %-12.12e %5P %5D %Y %.27s"

最終行に追記
TimeZone: local




❏ hylafax:; hosts.hfaxd(ファイル全体の内容・5〜6行目は2〜3行目をコピペする

localhost 127.0.0.1
^root@:::pppppppp          個々のセットアップ状況で異なる
^ユーザー名@:::qqqqqqqq  個々のセットアップ状況で異なる
192.168.xxx.*                   個々のセットアップ状況で異なる
^root@:::pppppppp           ➡ 個々のセットアップ状況で異なる
^ユーザー名@:::qqqqqqqq   ➡ 個々のセットアップ状況で異なる




❏ hylafax:; pagesizes

最終行に追記
default    A4     9920   14030  9240   13200    472    345




❏ hylafax:; sendfax.conf(ファイル全体の内容)

以下の2行のみ
MaxTries: 2
MaxDials: 2



❏ hylafax:; typerules

最終行に以下を追記
0 byte x ps %F/textfmt -f Courier-Bold -u -p 11 -s %s >%o <%i



❏ iaxmodem:; ttyIAX(ファイル全体の内容)


device /dev/ttyIAX
owner uucp:uucp
mode 660
port 4569
refresh 300
server 127.0.0.1
peername iaxmodem
secret iaxのコンテキストのパスワード
cidname 送信者名
cidnumber 050abcdefgh

codec slinear




❏ iaxmodem:; 起動スクリプト(ファイル全体の内容)

#! /bin/sh
#

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/iaxmodem
DAEMON_OPTS=ttyIAX
NAME=iaxmodem
DESC=iaxmodem

test -x $DAEMON || exit 0

set -e

case "$1" in
  start)
  echo -n "Starting $DESC: "
  start-stop-daemon --start --quiet --background --make-pidfile --pidfile /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS
    echo "$NAME."
    ;;
  stop)
    echo -n "Stopping $DESC: "
    start-stop-daemon --stop --quiet --oknodo --pidfile /var/run/$NAME.pid \ 
              --exec $DAEMON -- $DAEMON_OPTS
    echo "$NAME."
    ;;
  restart)
    echo -n "Stopping $DESC: "
    start-stop-daemon --stop --quiet --oknodo --pidfile /var/run/$NAME.pid \
              --exec $DAEMON -- $DAEMON_OPTS
    echo "$NAME."
    sleep 1
    echo -n "Starting $DESC:"
    start-stop-daemon --start --quiet --background --make-pidfile --pidfile /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS
    echo "$NAME."
    ;;
  status)
        if [ -s /var/run/$NAME.pid ]; then
            RUNNING=$(cat /var/run/$NAME.pid)
            if [ -d /proc/$RUNNING ]; then
               if [ $(readlink /proc/$RUNNING/exe) = $DAEMON ]; then
                   echo "$NAME is running."
                   exit 0
               fi
            fi

            # No such PID, or executables don't match
            echo "$NAME is not running, but pidfile existed."
            rm /var/run/$NAME.pid
            exit 1
       else
            rm -f /var/run/$NAME.pid
            echo "$NAME not running."
            exit 1
       fi
       ;;
*)
       N=/etc/init.d/$NAME
       echo "Usage: $N {start|stop|restart|status}" >&2
       exit 1
       ;;
esac

exit 0





❏ ssmtp:; ssmtp.conf(ファイル全体の内容)

root=メールアドレス
Mailhub=smtpサーバーアドレス:送信ポート番号
AuthUser=ユーザ名@の前の名前)
AuthPass=パスワード
AuthMethod=LOGIN
UseSTARTTLS=Yes(使用する暗号化方式)
UseTLS=Yes(使用する鍵方式)
hostname=メールサーバーのドメインアドレス(例: gmail.com)



設定ファイルは以上です。