การใช้งาน SSDP (Simple Service Discovery Protocol) สำหรับ Squeak/Pharo Smalltalk วิธีโหลด:
Metacello new
baseline: ' SSDP ' ;
repository: ' github://rydier/SSDP/repository ' ;
load.
แม้ว่า SSDP จะเป็นโปรโตคอลการค้นพบพื้นฐานที่ใช้โดย uPnP แต่ก็ไม่เคยมีมาตรฐานอย่างสมบูรณ์เลย การใช้งานนี้อิงตาม http://quimby.gnus.org/internet-drafts/draft-cai-ssdp-v1-02.txt ลบฟังก์ชันการทำงานของพร็อกซี ซึ่งถูกทิ้งในเวอร์ชันร่างในภายหลัง โดยพื้นฐานแล้ว ร่างฉบับล่าสุดคือสิ่งที่ได้มีการนำไปใช้ เวอร์ชันที่ใหม่กว่าประกอบด้วยส่วนที่ขยายออกไปมากเกี่ยวกับเหตุผลในการออกแบบ ซึ่งทำให้อ่านได้ดีขึ้นมากสำหรับผู้ที่ต้องการเรียนรู้ว่าโปรโตคอลการค้นหาเป็นเรื่องเกี่ยวกับอะไรและข้อดีข้อเสียที่เกี่ยวข้อง แต่มีความหนาแน่นของข้อมูลน้อยกว่ามากจากมุมมองของผู้ที่นำไปใช้ โปรโตคอล
เซิร์ฟเวอร์ SSDP:
| server |
server := SSDPServer v4SiteLocal.
server
offerServiceType: ' ssdp:testService '
atLocation: ' http:/test.local/ ' .
server shutDown.
ไคลเอนต์ SSDP:
| client |
client := SSDPClient v4SiteLocal.
client filter: ' ssdp:all '
whenAvailable: [ :resource |
resource printOn: Transcript .
' is available ' printOn: Transcript .
Transcript nextPut: Character cr. ]
whenUnavailable: [ :resource |
resource printOn: Transcript .
' is becoming unavailable ' printOn: Transcript .
Transcript nextPut: Character cr. ].
เอกสารรายละเอียดเพิ่มเติมสามารถพบได้ในความคิดเห็นของชั้นเรียน
หากคุณอ่านฉบับร่างในภายหลัง และพบว่ามีบางอย่างไม่สอดคล้องกัน โปรดเปิดประเด็นหรือส่งคำขอดึง
หากคุณใช้วิธีที่ดีกว่าในการค้นหาอินเทอร์เฟซภายในเครื่องที่มีอยู่ (ซึ่งเป็นส่วนที่แย่ที่สุดของโค้ดอย่างที่เป็นอยู่) เพื่อเริ่มฟัง SSDP ฉันยินดีเป็นอย่างยิ่งที่ได้รับการแจ้งเตือน!
ย้ายข้อมูลจาก http://smalltalkhub.com/#!/~henriksp/SSDP โดยใช้ https://github.com/peteruhnak/git-migration