LinkIt Smart 7688を使ってみる

Python + Socket

LinkItでは、pythonのSocketライブラリを使うことができます。

こちらが、ポート番号=9876にBroadcastメッセージを送信するコードです。
import socket
import time
import signal

def handler(signal, frame):
  global flag
  print('handler')
  flag = False


cs = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
cs.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
cs.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
signal.signal(signal.SIGINT, handler)
flag = True
while flag:
    cs.sendto('This is a test', ('<broadcast>', 9876))
    time.sleep(10)



こちらが、ポート番号=9876からBroadcastメッセージを受信するコードです。
import select, socket

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(('<broadcast>', 9876))
s.setblocking(0)

while True:
    result = select.select([s],[],[])
    msg = result[0][0].recv(1024)
    print msg.strip()

続く....