import getopt,sys,faxlib version="0.1" modify_date="2003/11/25" usage='''usage: hfax_cmd -H host -P port -u user -p passwd -m notify-email -f faxfile -n fax number arguments: -H host -need -P port -u username -need -p password -m notify email address -f fax file -need -n fax number -need -v or -V get version information ''' args=sys.argv[1:] def test_fax(faxnum): import string T_string=string.digits+"()-," for a in faxnum: if string.find(T_string,a)==-1: print "faxnumber must in char '013456789()-1'" sys.exit(0) def test_faxfile(faxfile): try: fd=open(faxfile,"r") except: print "fax file can't be open!" sys.exit(0) else: fd.close() try: opts,arg=getopt.getopt(args,"H:P:p:n:u:p:m:f:Vv") except: print "unknow arguments !" print usage sys.exit(0) host="" port="4559" user="" password="" notify_email="" fax_file="" fax_number="" for a in opts: if a[0]=="-H": host=a[1] if a[0]=="-P": port=a[1] if a[0]=="-u": user=a[1] if a[0]=="-p": password=a[1] if a[0]=="-m": notify_email=a[1] if a[0]=="-f": fax_file=a[1] if a[0]=="-n": fax_number=a[1] if a[0]=="-V" or a[0]=="-v": print "This program write by c.s.c \n"+"Modify at :"+modify_date+"\n"+"Version:"+ version sys.exit(0) if len(host)==0 or len(user)==0 or len(fax_file)==0 or len(fax_number)==0: print "you must supply some need arguments!" print usage sys.exit() if len(fax_number)>0: test_fax(fax_number) else: print "fax number must supply" sys.exit(0) if len(fax_file)>0: test_faxfile(fax_file) faxobj=faxlib.faxlib() conn_flag,conn_message=faxobj.connect(host,port,user,password) if conn_flag==1: if len(notify_email)==0: faxobj.send_fax(fax_number,fax_file) else: faxobj.send_fax(fax_number,fax_file,notify_email) faxobj.quit() print 1 sys.exit(1) else: print "connect fail!" print -1 sys.exit(-1)