Menu

Skip to content
AppleScriptの穴
  • Home
  • Products
  • Books
  • Docs
  • Events
  • Forum
  • About This Blog
  • License
  • 仕事依頼

AppleScriptの穴

Useful & Practical AppleScript archive. Click '★Click Here to Open This Script' Link to download each AppleScript

LAN上のdaapクライアントの共有名をリストアップ v2

Posted on 5月 12, 2021 by Takaaki Naganoya

LAN上のdaap(Music/iTunesライブラリ共有)サービス名を検出するAppleScriptです。

LAN上の他のマシンで動作中のサービス名を収集します。AppleScriptを実行している自機のサービスは除外しています。

他のフォーラムへの無断転載、および転載時にもヘッダー部分を削除することを厳禁します。

AppleScript名:LAN上のdaapクライアントの共有名をリストアップ v2.scptd
—
–  Created by: Takaaki Naganoya
–  Created on: 2021/05/11
—
–  Copyright © 2021 Piyomaru Software, All Rights Reserved
—   http://piyocast.com/as/
—
–  ** You are allowed to use this AppleScript with holding this header comment **
–  ** Don’t re-post this script to other forums without this header comment **
–  ** I’m very angry with removing header comment **

use AppleScript version "2.4"
use scripting additions
use framework "Foundation"
use framework "AppKit"

property foundList : {}
property myHostNames : {}
property services : {}
property comingF : false
property resolveF : false

set mList to findHostsViaBonjour("_daap._tcp", "") of me
–> {"Takaaki Naganoya のライブラリ", "ぴよぴよ ライブラリ"}

on findHostsViaBonjour(aType as string, aDomain as string)
  set my foundList to {}
  
set my comingF to true
  
set my resolveF to false
  
set my myHostNames to (current application’s NSHost’s currentHost()’s names()) as list
  
–> {"MacMini2014.local", "macmini2014.local", "localhost"}
  
  
set aBrowser to current application’s NSNetServiceBrowser’s alloc()’s init()
  
aBrowser’s setDelegate:me
  
aBrowser’s searchForServicesOfType:aType inDomain:aDomain
  
  
repeat 100 times
    if my comingF = false then
      if my foundList is not equal to {} then exit repeat
    end if
    
delay 0.01
  end repeat
  
  
repeat 100 times
    if my resolveF = false then
      if my foundList is not equal to {} then exit repeat
    end if
    
delay 0.01
  end repeat
  
  
aBrowser’s setDelegate:(missing value)
  
return (my foundList)
end findHostsViaBonjour

–searchForServicesOfTypeのdelegate
on netServiceBrowser:aNetServiceBrowser didFindService:aNetService moreComing:aMoreComing
  copy (aMoreComing as boolean) to my comingF
  
set my resolveF to true
  
aNetService’s setDelegate:me
  
set cInfo to aNetService’s resolveWithTimeout:3
end netServiceBrowser:didFindService:moreComing:

–NetService’s resolveWithTimeoutのdelegate
on netServiceDidResolveAddress:aSender
  set cDesc to (aSender’s |name|()) as string
  
set dDesc to (aSender’s |hostName|()) as string
  
aSender’s |stop|() –すげー大事
  
  
set dDesc to repChar(dDesc, ".local.", ".local") of me
  
  
if dDesc is not in (my myHostNames) then
    set the end of (my foundList) to cDesc
  end if
end netServiceDidResolveAddress:

–文字置換
on repChar(origText as string, targChar as string, repChar as string)
  set curDelim to AppleScript’s text item delimiters
  
set AppleScript’s text item delimiters to targChar
  
set tmpList to text items of origText
  
set AppleScript’s text item delimiters to repChar
  
set retText to tmpList as string
  
set AppleScript’s text item delimiters to curDelim
  
return retText
end repChar

★Click Here to Open This Script 

(Visited 105 times, 1 visits today)
Posted in Network | Tagged 10.14savvy 10.15savvy 11.0savvy NSHost NSNetService NSNetServiceBrowser | Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

電子書籍(PDF)をオンラインストアで販売中!

Google Search

Popular posts

  • シンプルな文字置換
  • macOS(Mac OS X/OS X)上のAppleScriptの歴史
  • Apple Creator Studioに含まれるKeynote/Pages/Numbersは新バージョン?
  • 最初期に書かれた書籍「AppleScript道入門」の序文をいま振り返る
  • Claris FileMaker Pro 2025(v22)がリリースされた
  • 指定フォルダ内から指定拡張子のファイルを取得し、エイリアスだったらオリジナルのパスをPOSIX pathで取得
  • MacBook Air/MacBook Proのディスプレイ開閉角度を取得
  • ASCII ART QR Encoder
  • macOS 15.7.2 スクリプトメニューから実行できなくなった地図系ライブラリ?
  • Adobe InDesignのAppleScript実行エンジンがCarbonからCocoaベースに書き換えられる
  • 「AppleScriptセキュリティ実践ガイド」を発売
  • 暗黙のuseコマンド
  • 開始時刻から終了時刻までhh:mm形式の文字列を15分単位でリスト出力
  • 各種GUIアプリ書類のオープン速度を向上するためにUIアニメーションの一時停止を
  • Finder上で選択中のHEIC画像から位置情報を削除_v5
  • Keynote->Keynote Creator Studio(以下同様)
  • FSFindFolder failed with error=-43
  • 2025年に書いた価値あるAppleScript
  • 翻訳テスト
  • YouTubeムービー再生実験

Tags

10.11savvy (1101) 10.12savvy (1242) 10.13savvy (1391) 10.14savvy (587) 10.15savvy (440) 11.0savvy (283) 12.0savvy (212) 13.0savvy (204) 14.0savvy (159) 15.0savvy (172) 26.0savvy (51) CotEditor (68) Finder (53) Keynote (123) NSAlert (61) NSArray (51) NSBitmapImageRep (20) NSBundle (20) NSButton (34) NSColor (53) NSDictionary (28) NSFileManager (23) NSFont (21) NSImage (41) NSJSONSerialization (21) NSMutableArray (63) NSMutableDictionary (22) NSPredicate (36) NSRunningApplication (56) NSScreen (30) NSScrollView (22) NSString (119) NSURL (98) NSURLRequest (23) NSUTF8StringEncoding (30) NSView (33) NSWorkspace (20) Numbers (80) Pages (58) Safari (45) Script Editor (27) WKUserContentController (21) WKUserScript (20) WKWebView (23) WKWebViewConfiguration (22)

カテゴリー

  • 2D Bin Packing
  • 3D
  • AirDrop
  • AirPlay
  • Animation
  • Apple Inteligence
  • AppleScript Application on Xcode
  • Beginner
  • Benchmark
  • beta
  • Bluetooth
  • Books
  • boolean
  • bounds
  • Bug
  • Calendar
  • call by reference
  • check sum
  • Clipboard
  • Cocoa-AppleScript Applet
  • Code Sign
  • Color
  • Custom Class
  • date
  • dialog
  • diff
  • drive
  • Droplet
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • Font
  • GAME
  • geolocation
  • GUI
  • GUI Scripting
  • Hex
  • History
  • How To
  • iCloud
  • Icon
  • Image
  • Input Method
  • Internet
  • iOS App
  • JavaScript
  • JSON
  • JXA
  • Keychain
  • Keychain
  • Language
  • Library
  • list
  • Locale
  • Localize
  • Machine Learning
  • Map
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Newt On Project
  • NFC
  • Noification
  • Notarization
  • Number
  • Object control
  • OCR
  • OSA
  • parallel processing
  • PDF
  • Peripheral
  • process
  • PRODUCTS
  • QR Code
  • Raw AppleEvent Code
  • Record
  • rectangle
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • Review
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • Scripting Additions
  • sdef
  • search
  • Security
  • selection
  • shell script
  • Shortcuts Workflow
  • Sort
  • Sound
  • Spaces
  • Spellchecker
  • Spotlight
  • SVG
  • Swift
  • System
  • Tag
  • Telephony
  • Text
  • Text to Speech
  • timezone
  • Tools
  • Update
  • URL
  • UTI
  • Web Contents Control
  • WiFi
  • XML
  • XML-RPC
  • イベント(Event)
  • 未分類

アーカイブ

  • 2026年8月
  • 2026年7月
  • 2026年6月
  • 2026年5月
  • 2026年3月
  • 2026年2月
  • 2026年1月
  • 2025年12月
  • 2025年11月
  • 2025年10月
  • 2025年9月
  • 2025年8月
  • 2025年7月
  • 2025年6月
  • 2025年5月
  • 2025年4月
  • 2025年3月
  • 2025年2月
  • 2025年1月
  • 2024年12月
  • 2024年11月
  • 2024年10月
  • 2024年9月
  • 2024年8月
  • 2024年7月
  • 2024年6月
  • 2024年5月
  • 2024年4月
  • 2024年3月
  • 2024年2月
  • 2024年1月
  • 2023年12月
  • 2023年11月
  • 2023年10月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年6月
  • 2023年5月
  • 2023年4月
  • 2023年3月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月

https://piyomarusoft.booth.pm/items/301502

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org

Forum Posts

  • 人気のトピック
  • 返信がないトピック

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
Proudly powered by WordPress
Theme: Flint by Star Verte LLC