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

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

    2024年 4月 24日, 14:37 現在の版

    この版へ

    版の一覧 に戻る。

    現在の版を閲覧

     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