#! /usr/bin/python
import socket
import struct
import sys
import os
import string
#MADDX = '225.100.100.100'
MADDX = '224.0.0.103'
RAW = False
#! /usr/bin/python
import socket
import struct
import sys
MADDX = '224.0.0.103'
ADDR = '' #bind to address? leave blank for any
DATA="414e542d534541524348204d4441502f312e310d0a3436" #the Hello ID request
import binascii
SDATA = binascii.a2b_hex(DATA) #convert to ASCII
##http://mail.python.org/pipermail/python-list/2005-December/358117.html
#bind((outgoing_if, tc_local_port))
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
sock.bind((ADDR,1103)) #bind to any address and local port 1103
sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 2)
sock.sendto(SDATA, (MADDX, 3235)) # send to required DEST address and PORT
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
sock.bind(('',3235)) #port 3235 is the port the thomson software responds on
mreq = struct.pack('4sl', socket.inet_aton(MADDX), socket.INADDR_ANY)
sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq)
if RAW == True: #if we want the RAW datastream, we just loop until keyboard interrupt
while True:
print sock.recv(1024)
else:
while True:
Dkilobyte = sock.recv(1024)
if string.find(Dkilobyte,'ANT-ID:') != -1:
for line in string.split(Dkilobyte):
if string.find(line,'ANT-ID:') != -1:
print "serial: CP" + string.strip(line,"ANT-ID:") + "\n\n"
sys.exit(0) #success! we quit
It says there is a syntax error at sock.recv(1024)
Help! using python 3.2 this script must be for 2. versions can anyone fix it and repost it plz?