本文整理汇总了Python中sender.Sender.sendMessage方法的典型用法代码示例。如果您正苦于以下问题:Python Sender.sendMessage方法的具体用法?Python Sender.sendMessage怎么用?Python Sender.sendMessage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sender.Sender
的用法示例。
在下文中一共展示了Sender.sendMessage方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Peer
# 需要导入模块: from sender import Sender [as 别名]
# 或者: from sender.Sender import sendMessage [as 别名]
#.........这里部分代码省略.........
elif msgType == 'goodbye':
logging.info( 'Processing goodbye request from: ' + sourceKey )
del self.activePeers[ sourceKey ]
self.status.removePeer( sourceKey )
elif msgType == 'remove':
logging.info( 'Processing remove file: ' + data + ' from: ' + sourceKey )
# Data is the filename
if self.status.checkForFile( data ):
self.status.removeFile( data )
# Remove actual file on filesystem
filepath = os.path.join( os.getcwd(), self.filesDir, data )
if os.path.isfile( filepath ):
os.remove( filepath )
else:
logging.error( 'Invalid msgType: ' + msgType )
elif package['packageType'] == 'command':
# Handle command from user input
command = package['command']
if command == 'insert':
logging.info( 'Processing insert file command: ' + package['filename'] )
self.status.insertFile( package['filename'], package['filepath'],\
package['filesize'] )
elif command == 'leave':
logging.info( 'Processing leave request' )
self.peerTCPServer.shutdown()
for p in self.activePeers:
peer = self.getPeerTuple( p )
result = self.sender.sendMessage( peer[0], peer[1], 'goodbye' )
if not result:
logging.error( 'Failed to send goodbye message to: ' + p )
self.joined = False # mark self as unjoined
self.rQueue = Queue() # Create new Queue to throw away pending requets
if self.shutdownFlag:
self.rQueue.put( 'shutdown' )
for p in self.activePeers:
# clear peer from status
self.status.removePeer( p )
self.activePeers = {}
elif command == 'remove':
fName = package['filename']
context = { 'type': 'remove' }
for p in self.activePeers:
peer = self.getPeerTuple( p )
result = self.sender.sendData( peer[0], peer[1], context, fName )
if not result:
logging.error( 'Failed to send delete message to: ' + p )
self.status.removeFile( fName )
else:
logging.error( 'Invalid command: ' + command )
else:
logging.error( 'Invalid packageType; package ignored' )
def shareChunks( self ):
"""Send out a chunk to each registered peer"""
for p in self.activePeers:
peer = self.getPeerTuple( p )