サンプル:言語設定を切り替えるAGIスクリプト

    目次
    ヘッダーがありません

    2024年 12月 22日, 10:46 現在の版

    この版へ

    版の一覧 に戻る。

    現在の版を閲覧

    trixbox Proから、「日付や時刻を音声で案内させる」処理をさせる場合、言語設定をjaにしておかないと語順が英語のまま再生されてしまうことがあります。下記のようなスクリプトを/var/lib/asterisk/agi-bin/ に保存し、Runscript(スクリプトを実行)コマンドで実行させると、正しい言語設定に切り替えることができます。また、メニューに応じて、多言語で対応するIVRを作成することもできるでしょう。
    #!/usr/bin/perl
    use strict;
    use Asterisk::AGI;
    
    $|=1;
    
    # Setup some variables
    my %AGI; my $tests = 0; my $fail = 0; my $pass = 0;
    my $astagi = new Asterisk::AGI;
    
    while(<stdin>) {
    	chomp;
    	last unless length($_);
    	if (/^agi_(\w+)\:\s+(.*)$/) {
    		$AGI{$1} = $2;
    	}
    }
    #$astagi->say_alpha($AGI{'callerid'});
    
    #while( (my $name, my $value) = each %AGI ){
    #    $astagi->verbose("$name, $AGI{$name}");
    #}
    
    #
    # Language Settings
    #
    $astagi->set_variable("CHANNEL(language)","ja");
    
    Powered by MindTouch Core