令和3年度最新版 asterisk で電話であそぶ(その3)

落穂ひろい。

その1,その2まで書いて、実はいろんなところで問題にぶち当たっていて、それに対してどうしたかっていうまとめ。 なんだろう、踏まなくてよい地雷を踏んでいる気がする。

その1,メールが送れない問題。

OB25規制のせいで、メールの送信がけっこう面倒なことになっています。 FreeBSD ではデフォルトは sendmail です。 今まででしたら、/etc/mail/以下で、make して、作られたひな形をいじって、 もう一回 make して、 sendmail.mcからsendmail.cf を作ってという処理で、送信するだけのサーバを作るのはそれほど 大変ではありませんでした。 だが、今は時代が違います。

しょうがないので、プロバイダの smtp に smtp auth して投げることにしたのですが、素の sendmail は -DSASL が無い 状態でbuild されているので、smtp auth が使えません。ぐぬぬ。 postfix を入れて対応することも考えましたが、たかだかメールを送信サーバに転送するだけで、そこまでやるのも何か 納得がいかなかったので、いろいろ探して、nbsmtp を使うことにしました。

# cd /usr/ports/mail/nbsmtp # make install clean # vim /usr/local/etc/nbsmtprc relayhost=送信メールサーバ port=587 fromaddr=asterisk@メールドメイン auth_user=認証ユーザー auth_pass=認証パスワード auth_mech=crammd5
これでsmtp認証して送信メールサーバに送ってくれます。gmail とかに送るのはぐぐるといっぱい出てきます。 生わすわーどが書いてあるので、ファイルのパーミッションに注意しましょう

その2 番号読み上げると途中で落ちる問題。

voicemail.conf で saycid = yes にしておくと、番号非通知の電話が録音されたときに、再生しようとしてエラーで落ちます。 CALLERID(num) が Anonymous の時は値を空にしてしまうとどうにか乗り越えられます。非通知なんて受けるなという話でも ありますが。 これ、楽天linkでwifi で通話すると全部非通知になるという問題と、うちの自宅が楽天回線つながらないという問題がなければ 気が付かない(気にならない)問題でした。ぐぬぬ。でも、楽天link経由での通話は料金無料なので、こういったテストをするときは とても重宝します。

その3 メール添付が動かない。 その1で、留守電が入るとメールを送ってくるように設定したのですが、その際に、attach=yesをつけているので、本来で あれば送られてくるメールに音声データが添付されてくるはずです。が、なぜかついてきません。 この辺は謎すぎてよくわかりません。もうちょっと追ってみて、わかり次第ネタにする予定ですが、どうなることやら。 まあとりあえず、外部から電話して再生はできるようになったので、「無いと困る」ってほどでもないのですが、なぜか 動かないというのは気持ちが悪いので。

ということで、何年かぶりに asterisk を再設定してみたのですが、しばらくいじっていると、ダイヤルプランが理解できる ようになってきますが、またしばらくすると忘れて「なんぞこれ?」ってなってしまうのだろうなあ。 また何年後かに式年遷宮しよう。

おまけ。

#vim /usr/local/etc/asterisk/pjsip_trunk_smartalk.conf [fusion] type=registration transport=transport-udp outbound_auth=fusion server_uri=sip:smart.0038.net:5060 client_uri=sip:5********@smart.0038.net:5060 retry_interval=60

[fusion] type = auth auth_type=userpass username=5******* password=*******

[fusion] type=endpoint transport = transport-udp context=from-smartalk outbound_auth=fusion disallow = all allow = g722,ulaw aors=fusion

[fusion] type=identify match=61.213.230.153 endpoint=fusion

[fusion] type=aor contact=sip:5********@smart.0038.net qualify_frequency=30

このファイルを pjsip.conf で include してあげると、SMARTalk を asterisk に収納することができます。 qualify_frequency=30 が無いと、最初はつながるのですが、しばらくすると着信ができなくなってしまいます。

SMARTalk も楽天に買収されてしまって新規受付終了してしまったのでもうあまり意味がないのかもしれませんが とりあえずおまけにつけておきます。

タグ: FreeBSD SMARTalk Asterisk Pjsip Voicemail メール送信