2008년 11월 5일 수요일

upnp 로 공유기 디스커버리 하는 예제 python

전에도 잠깐 해본적 있는데 다시 읽어보니 병신같이 적어뒀네...

# -*- coding: utf-8 -*-
#
# 헐 사무실에 공유기가 안보여서 집에 원격접속해서 간단히 upnp 테스트
# 코드를 돌려봤다. 걍 버리긴 그렇고 해서 적어둔다.
#
from socket import socket,AF_INET,SOCK_DGRAM

s = socket(AF_INET, SOCK_DGRAM)
discovery = "M-SEARCH * HTTP/1.1\r\n" + \
"Host:239.255.255.250:1900\r\n" + \
"ST:urn:schemas-upnp-org:device:InternetGatewayDevice:1\r\n" + \
"Man:\"ssdp:discover\"\r\n" + \
"MX:3\r\n" + \
"\r\n"
if s.sendto(discovery, ("239.255.255.250", 1900)) != len(discovery):
print "send error"
else:
print "send done"

print "try recvfrom"
(data,addr) = s.recvfrom(8192)
s.close()

print addr
print data

디스크립션을 보려면 위의 응답으로 떨어지는 location 에 그냥 브라우저 열고 GET 때려보면 된다.
SOAP 으로 제어하는건... 이전 위키에 있으니 생략.. 음 혹시나 테스트코드를 또 만들게되면 적어두자.




댓글 6개:

하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하하 :

trackback from: UPNP 로 공유기 찾고 포트매핑 추가하기. lisp(SBCL 전용) 예제
아 시바 정말 귀찮네. 이넘들이 망할 soap 을 쓰는 바람에 C 로 짜긴 귀찮은 존재구나. libupnp 까지 붙이고 싶지는 않고.. 내가 지금 하려는거에 굳이 soap 결과를 파싱까지 하고 싶지는 않고.. 그래서 간단히 upnp 기능만 돌려보는 테스트 스크립트를 만들어봤다. slime 상에서 여러가지 경우로 테스트 해보기 위해서 lisp 으로 만들었고 lisp 으로 udp 쏘는건 처음이라 소스를 적어둔다. 아래 소스 로딩하고 (discover-g..

김재호의 디지털보단 아날로그 :

trackback from: Python 3.0 Released
내가 파이썬을 처음 만나본 것은 2006년 12월이었다. 나는 그 때 입사한지 4개월 정도된 신입사원었는데, 파이썬이라는 언어를 생전 들어보지도 못했었다. 그 때 우리 프로젝트에서 사용되던 작은 파이썬 프로그램이 하나 있었는데, 그것은 안철수 연구소의 웹 페이지에 가서 V3 모듈을 내려 받아 업데이트 해주는 프로그램이었다. 나는 그 코드를 고칠 일이 있어 수정 하면서 별 거지 같은 언어라고 얼마나 속으로 투덜 거렸는지 모른다. 그 뒤로 언제부터 파이..

김재호의 디지털보단 아날로그 :

trackback from: Python Essential Reference -David M. Beazley
그다지 두껍지도 않으면서 아주 간결하게 파이썬을 잘 설명해주고 있는 책이다. 다음은 이 책 2판의 목차인데, 레퍼런스 용 책 답게 문법 설명은 최대한 간결하게 하고 다양한 부록을 절반 이상이나 할애하고 있다. 1 A Tutorial Introduction 1 2 Lexical Conventions and Syntax 13 3 Types and Objects 19 4 Operators and Expressions 43 5 Control Flow 55..

김재호의 디지털보단 아날로그 :

trackback from: Art of UNIX Programming - Eric S. Raymond
오픈소스나 유닉스 계열에서 꽤나 유명한 에릭 레이몬드가 쓴 책이다. 이 책의 제목만 봐서는 유닉스 프로그래밍에 대한 고급 기법들을 다룰 것 같지만, 단지 유닉스 철학만을 이야기한다. 도날드 커누스의 Art of Computer Programming의 이름을 본 따서 지었다는데, 책 주제와 상관없는데도 제목을 이렇게 지은 걸 보면 어지간히도 커누스의 Art of 시리즈가 감명 깊었는가보다.( 책 이름이던지 내용이던지 아니면 커누스 그 자체던지간에 )..

김재호의 디지털보단 아날로그 :

trackback from: Paul Graham의 해커와 화가
어떤 사람들은 폴 그레이엄이 건방지거나 혹은 그가 주장하는 바가 틀렸다고 말하면서도 하나 같이 그의 글은 재밌다고 한다. -에릭 싱크, 조엘, 그리고 이 책의 역자인 임백준까지 나도 폴 그레이엄의 글을 좋아한다. 이 책을 읽고 나서 그의 글에 매료되어서 개인 블로그를 즐겨찾기 해두고 종종 가보곤 한다.( 물론 내 빌어먹을 영어 실력 탓에 그 재밌는 최신 글들을 잘 이해할 수 없다는 것이 화가 나지만. ) 이 책의 내용은 조엘 온 소프트웨어 처럼, 폴..

blogring.org :

trackback from: upnp-으로 이어질 블로그링
upnp-에 관한블로그를 요약한 것입니다.