ALLMON2の機能拡張(1)

AllStarlink(https://www.allstarlink.org)で自ノードの接続状態などをリアルタイムにモニター
するALLMON2に、バブルチャートのテキスト版を機能として追加した。

Allmon2_JJ1YEG.JPG

←JJ1YEG NODE 53197 の画面
 
 【環境】
 ・Raspberry Pi 2/3/4 OS:Debian 10 (buster)
 ・ASL-2.0 (ASterisk + app_rtp + apache2 + php7.4)
 ・Allmon Updated Feburary 2, 2018
 
 初めに、$ mkdir bin とユーザーの位置でbinフォルダーを作成して
 おく。以下のファイルの作成には、例えばnanoで行うのであれば、
 $ nano bin/frd.sh
 として編集する。以下同様。

  1. 【追加prog】
     ・frd.sh
    ##--- ~/bin/frd.sh ------------------------------------
    #!/bin/bash
    
    if [ -f astname.txt ]; then
      rm -f astname.txt
    fi
    sudo tcpdump -i eth0 -nnnAs0 udp port 4569 | grep --color=auto --line-buffer -oP '(?<=....L ).+(?=)' | tee -a astname.txt
     
     ・bchart.sh
    ##--- ~/bin/bchart.sh ------------------------------------
    #!/bin/bash
    
    clear
    DATM="none"
    DATX=""
    echo '----- 52984 ---- JH1BLT Bridge Stations --------------' > lab0.txt
    echo -e "Node #\tCallSign\tLocation" >> lab0.txt
    echo '------------------------------------------------------' >> lab0.txt
    rm -f /home/moto/ast0.txt
    rm -f /home/moto/ast1.txt
    while :
    do
    if [ -f /home/moto/astname.txt ]; then
     tail -4 astname.txt | tr ',' '\n' | sort -u | sed -e 's/^T30/T/g' -e 's/^T3/T/g' -e 's/^T/\^/g' > ast1.txt
     echo "^52984" >>ast1.txt
     cat ast1.txt | while read line
     do
       grep $line /var/www/html/allmon2/astdb.txt | sed -e 's/||/|/g' | sed -e 's/|/\t/g' | sed -e 's/,/\t/g' >> ast0.txt
     done
       DATX=`cat ast0.txt | sort -k1 -u`
     if test "$DATX" != "$DATM"; then
       clear
       cat lab0.txt
       echo "$DATX" | sudo tee /var/www/html/allmon2/ast0.txt
       DATM="$DATX"
     fi
    sleep 3
    rm -f ast0.txt
    rm -f ast1.txt
    fi
    done
     
     ・/var/www/html/allmon2/link.php に以下を追加
    A1-TOPに一行追加する
    <meta http-equiv="refresh" content="28">  ← この行
    <?php
     ・
     ・
     ・
     ・
    A2-最後の方に以下を修正追加する
    <!-- <div id="blinky"></div> -->  ← この行は修正
    <span style="font-size:13pt"><b>  ← この行は追加
    <?php  ←------------------------------------- ここから
    $lines = file("http://localhost/allmon2/ast0.txt");
    $ct = count($lines);
    print "<pre>";
    for($i = 0; $i < $ct; $i++ ){
      $j = $i + 1;
      printf("%5s",$j); print ".&nbsp;".$lines[$i];
    }
     print "</b></pre></span></table>";
    ?>  ←------------------------------------- ここまで追加
    <?php include "footer.inc"; ?>   ← オリジナル最後の行
     
  2. 【起動手順】
     terminal を2つ開く。
     terminal-1で、$ drf.sh を起動する。
     terminal-2で、$ bchart.sh を起動する。
     以上、tmuxと言うtoolを使うと、terminalは1つで済む。
     または、RasPi起動時に自動起動するように次回検討する。

リロード   新規 下位ページ作成 凍結解除 差分 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS