本文整理汇总了Python中Network.Network.send方法的典型用法代码示例。如果您正苦于以下问题:Python Network.send方法的具体用法?Python Network.send怎么用?Python Network.send使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Network.Network
的用法示例。
在下文中一共展示了Network.send方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: login
# 需要导入模块: from Network import Network [as 别名]
# 或者: from Network.Network import send [as 别名]
def login(self, login, password):
if (login == '' or password == ''):
return 1
try:
#Obtention du verrou pour éviter les accès concurrents à la base de données
self.lock.acquire()
#On se connecte à la BDD
conn = psycopg2.connect("dbname=puissance5 user=puissance5 password=Disco<3")
#On récupère le hash de l'utilisateur
cur = conn.cursor()
cur.execute("SELECT password FROM users WHERE login=%s;", (login,))
#On vérifie qu'un utilisateur de ce nom existe
if not cur.rowcount:
self.lock.release()
return 1
row = cur.fetchone()
verify = pbkdf2_sha1.verify(password, row[0])
#On vérifie que le mot de passe est le bon
if not verify:
self.lock.release()
return 1
cur.close()
conn.close()
self.lock.release()
except Exception as e:
self.lock.release()
print("Echec de l'authentification du client : \n", e)
return 4
#Création d'un code aléatoire de 20 caractères qui permettra au serveur de jeu d'identifier le client
self.magic_code = generate_password(size=20)
sb = StringBuilder()
sb.add("4")
sb.add(login)
sb.add(str(self.magic_code))
game_server = Network(False)
game_server.setHostAddress(self.game_server_address, self.game_server_port)
game_server.connectToHost()
#On envoie au serveur de jeu l'information que le client 'login' a le droit de se connecter en présentant le code magic_code
game_server.send(sb.data.encode())
res = game_server.receive()
response = StringExtract(res)
if response[1] != '0':
return 4
game_server.close()
return 0
示例2: login
# 需要导入模块: from Network import Network [as 别名]
# 或者: from Network.Network import send [as 别名]
def login(self, login, password):
if (login == '' or password == ''):
return 1
try:
#On se connecte à la boîte à monsieurs
conn = psycopg2.connect("dbname=puissance5 user=puissance5 password=Disco<3")
#On récupère le hash du monsieur
cur = conn.cursor()
cur.execute("SELECT password FROM users WHERE login=%s;", (login,))
if not cur.rowcount:
return 1
row = cur.fetchone()
verify = pbkdf2_sha1.verify(password, row[0])
if not verify:
return 1
cur.close()
conn.close()
except Exception as e:
print("Echec de l'authentification du client : \n", e)
return 4
#magic_code = getrandstr(rng, count=20)
self.magic_code = generate_password(size=20)
sb = StringBuilder()
sb.add("4")
sb.add(login)
sb.add(str(self.magic_code))
game_server = Network(False)
game_server.setHostAddress(self.game_server_address, self.game_server_port)
game_server.connectToHost()
game_server.send(sb.data.encode())
res = game_server.receive()
game_server.close()
return 0
示例3: MainFrame
# 需要导入模块: from Network import Network [as 别名]
# 或者: from Network.Network import send [as 别名]
class MainFrame(wx.Frame):
_custom_classes = {'wx.Panel' : ['CartesianPanel','VelocityPanel']}
def _init_ctrls(self, prnt):
wx.Frame.__init__(self, id=wxID_MAINFRAME, name='MainFrame',
parent=prnt, pos=wx.Point(150, 80), size=wx.Size(1016, 674),
style=wx.DEFAULT_FRAME_STYLE, title='Laser Scanner GUI')
self.SetClientSize(wx.Size(1016, 674))
self.SetBackgroundColour(wx.Colour(0, 0, 255))
self.CartesianPanel = CartesianPanel(id=wxID_MAINFRAMEPANEL1, name='CartesianPanel',
parent=self, pos=wx.Point(8, 8), size=wx.Size(200, 400),
style=wx.TAB_TRAVERSAL)
self.NaoPanel = NaoPanel(id=wxID_MAINFRAMEPANEL1, name='NaoPanel',
parent=self, pos=wx.Point(208, 8), size=wx.Size(800, 400),
style=wx.TAB_TRAVERSAL)
self.VelocityPanel = VelocityPanel(id=wxID_MAINFRAMEPANEL2, name='VelocityPanel',
parent=self, pos=wx.Point(8, 416), size=wx.Size(1008, 250),
style=wx.TAB_TRAVERSAL)
self.Bind(wx.EVT_CLOSE, self.OnMainFrameClose)
self.NumUpdates = 0
self.StartTime = time.time()
def __init__(self, parent):
self._init_ctrls(parent)
psyco.full()
self.laserscanner = HokuyoLaserScanner()
self.localisation = Localisation(400)
self.naofinder = NAOFinder(self.localisation)
self.network = Network()
## control variables
self.control = numpy.zeros(3)
# automatic
self.state = 'init' # states: init, chase, position, lost
self.statecount = 0
self.targetnumber = 0
#self.targets = [[250, -100], [250, 100], [50, 100], [50, -100]]
#self.targets = [[275, -10], [275, 10], [50, 10], [50, -10]]
self.targets = [[275, 0], [50, 0]]
# manual
self.up = False # set these to true when the key is pressed!
self.down = False
self.left = False
self.right = False
self.distance = 0
self.bearing = 0
self.orientation = 0
self.CartesianPanel.setNaoFinder(self.naofinder)
self.NaoPanel.setNaoFinder(self.naofinder)
self.NaoPanel.setLocalisation(self.localisation)
self.closed = False
def updateData(self):
if self.closed == False:
polardata, cartesiandata = self.laserscanner.getRangeData()
self.measurement = self.naofinder.findNAO(polardata, cartesiandata)
self.localisation.update(self.control, self.measurement)
if self.keyPressed() or self.distance != 0 or self.bearing != 0:
self.calculateWalkControl()
else:
self.automaticWalk()
self.network.send(self.localisation.VX, self.localisation.VY, self.localisation.V, self.control[0], self.control[1], self.control[2])
self.CartesianPanel.updateData(cartesiandata, self.localisation.X, self.localisation.Y)
self.NaoPanel.updateData(cartesiandata)
self.VelocityPanel.updateData(self.localisation.VX, self.localisation.VY, self.localisation.V)
self.NumUpdates = self.NumUpdates + 1
#print self.NumUpdates/(time.time() - self.StartTime)
def automaticWalk(self):
""" """
# do state transitions if close then then switch to away, if far switch to toward
if self.state == 'init':
self.statecount += 1
if self.statecount > 20:
print "automaticWalk: init->chase"
self.state = 'chase'
self.statecount = 0
elif self._robotLost():
self.state = 'lost'
elif self.state == 'chase':
self.statecount += 1
if self.statecount > 30 and self._limitReached():
print "automaticWalk: chase->position"
self.state = 'position'
self.targetnumber = (self.targetnumber + 1)%len(self.targets)
self.statecount = 0
elif self.state == 'position':
#.........这里部分代码省略.........