Top > 日記 > 2011-09-01

ID-91のリモート

9月に入り、ID-91をSkypeからコントロールする構想ができたので、一時WiRES-Ⅱを停止させて、PCと常駐ソフトも以下のとおり変更した。

  • VAIO(英語版)
    Echolink+mmdtmf.vbs、DVAR HotSpot*1
     → DVAR HotSpot、Skype1
  • Acer(日本語版)
    WiRES-Ⅱ、WiRES-Chat、Skype2、Echolink-Proxy、LcwMessenger*2
     → Echolink+mmdtmf.vbs、RS-91*3、Skype2+dst_change.js*4
  1. mmdtmf.vbs*5
    EcholinkAPIを利用し、DTMFデータ → RFのON/OFF、時報など。また今回は同じPC上にRS-91が起動しているので、あまり効果は無いが、dst_change.jsと同じ操作ができるようにした。
    'Instantiate EchoLink's Session component, and set up an event connection
    Set oEchoLink = WScript.CreateObject("EchoLink.EchoLinkSession", "EchoLink_")
    Set SysEchoLink = oEchoLink.SysopConfig
    Set ConfEchoLink = oEchoLink.SystemConfig
    中略
    case "xx" 
       CreateObject("Wscript.Shell").Run "C:\archive\emirate\uwsc\txon.uws"
       Wscript.Sleep 1000
       oEchoLink.SayPhrase 4 'Online
    case "xx" 
       oEchoLink.PTTActivation 1
       oEchoLink.SayString "OK OFF"
       Wscript.Sleep 1000
       CreateObject("Wscript.Shell").Run "C:\archive\emirate\uwsc\txoff.uws"
    以下省略
  2. dst_change.js
    遠方よりSkypeChatでコマンドを送り、ID-91のメモリー操作を行う。
    これを起動する前に、Skype4COMを組み込む参照→link*6
    var skype = new ActiveXObject('Skype4COM.Skype');
    WScript.ConnectObject(skype, 'Skype_');
    skype.Attach();
     
    while(true){
      WScript.Sleep(1000);
    }
    
    function Skype_MessageStatus(msg, status){
     if(status == skype.Convert.TextToChatMessageStatus('RECEIVED')){
    	var sh = new ActiveXObject( "WScript.Shell" );
       var user = msg.FromDisplayName;
       var body = msg.Body;
       var chat = msg.Chat;
    	switch (body){
    		case "#cq":
    			sh.Run( "C:/archive/emirate/uwsc/p20.uws");
    			chat.SendMessage(user + '\n' + 'Your:CQCQCQ');
    			beak;
    
    		case "#u":
    			sh.Run( "C:/archive/emirate/uwsc/p21.uws");
    			chat.SendMessage(user + '\n' + 'Your: ______U');
    			beak;
    以下省略
  3. p20.uws
    UWSCにより画面操作を記録したもの*7
    ACW(GETID("RS-91","TForm"),987,542,283,382,0)
    BTN(LEFT,CLICK,1103,555,300)
    BTN(LEFT,CLICK,1096,660,300)
    KBD(VK_CTRL,DOWN,50)
    KBD(VK_CTRL,DOWN,50)
    KBD(VK_RETURN,DOWN,50)
    KBD(VK_CTRL,UP,50)
  4. デスクトップ画面
    UWSCを利用しているため、RS-91ダイヤログボップクの位置、大きさは固定しておかなくてはならない。((相対位置で指定するのであれば、不要と思う)
    desktop0901B.jpg

URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White


*1 このソフトが英語版OSでないと動かないため、VAIOを簡易的に英語版にした
*2 Echolinkと連携できるのだが、日本語版OSじゃないとNGだったため、この変更で復活
*3 D-STAR機 ID-91 コントロールソフト
*4 SkypeChatでID-91のメモリー操作を行うJScriptでSkype4COM.dllを利用したもの
*5 以前作成したものにUWSC処理追加
*6 コマンドラインから、”regsvr32 Skype4COM.dll” と入力する。ただし、Windows7の場合は別な方法あり
*7 これは絶対位置。本来は相対位置で記録した方がベター

添付ファイル: filedesktop0901B.jpg 599件 [詳細]

リロード   新規 下位ページ作成 凍結解除 差分 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: Fri, 02 Sep 2011 10:37:32 JST (4618d)