예제 #1
0
def main():
    w3 = Web3(HTTPProvider('http://localhost:8545'))
    print(w3.admin.peers)
    print('Peers:')
    for peer in w3.admin.peers:
        print(' -> ' + peer['network']['remoteAddress'] + ' ' + peer['name'] +
              ' ' + str(peer['caps']))

    shh = Shh(w3)
    print('Whisper version: ' + shh.version)
    print('Whisper info: [memory: ' + str(shh.info.memory) + ', messages: ' +
          str(shh.info.messages) + ', max_message_size: ' +
          str(shh.info.maxMessageSize) + ', min_pow: ' + str(shh.info.minPow))

    symKeyID = shh.generateSymKeyFromPassword(
        'shh!! this is a secret password')
    print('Identity: ' + symKeyID)
    print('Symmetric key: ' + shh.getSymKey(symKeyID))

    result = shh.post({
        'payload': Web3.toHex(text='Hello world!'),
        'symKeyID': symKeyID,
        'topic': '0x12340000',
        'powTarget': 2.5,
        'powTime': 2
    })
    print('Message sent: ' + str(result))
예제 #2
0
    def __init__(self, provider):
        self._requestManager = RequestManager(provider)

        self.eth = Eth(self)
        self.db = Db(self)
        self.shh = Shh(self)
        self.net = Net(self)
        self.personal = Personal(self)
        self.version = Version(self)
        self.txpool = TxPool(self)
        self.miner = Miner(self)
        self.admin = Admin(self)
예제 #3
0
 def __init__(self, name):
     super(Bot, self).__init__()
     self.name = name
     self.shh = Shh(Web3(HTTPProvider('http://localhost:8545')))
     print(self.name + ': Whisper version: ' + self.shh.version)
     print(self.name + ': Whisper info: [memory: ' +
           str(self.shh.info.memory) + ', messages: ' +
           str(self.shh.info.messages) + ', max_message_size: ' +
           str(self.shh.info.maxMessageSize) + ', min_pow: ' +
           str(self.shh.info.minPow))
     self.symKeyID = self.shh.generateSymKeyFromPassword(
         'shh!! this is a secret password')
     print(self.name + ': Identity: ' + self.symKeyID)
     print(self.name + ': Symmetric key: ' +
           self.shh.getSymKey(self.symKeyID))
예제 #4
0
파일: main.py 프로젝트: vitaly-am/web3.py
    def __init__(self, provider):
        self._requestManager = RequestManager(provider)
        self.currentProvider = provider

        self.eth = Eth(self)
        self.db = Db(self._requestManager)
        self.shh = Shh(self._requestManager)
        self.net = Net(self._requestManager)
        self.personal = Personal(self._requestManager)
        self.version = Version(self._requestManager)
        self.txpool = TxPool(self._requestManager)
        self.miner = Miner(self._requestManager)
        self.admin = Admin(self._requestManager)

        self.providers = {
            'RPCProvider': RPCProvider,
            'IPCProvider': IPCProvider,
            'TestRPCProvider': TestRPCProvider,
        }

        self.RPCProvider = RPCProvider
        self.IPCProvider = IPCProvider
        self.TestRPCProvider = TestRPCProvider

        # Encoding and Decoding
        self.toHex = to_hex
        self.toAscii = decode_hex
        self.toUtf8 = compose(decode_hex, force_text)
        self.fromAscii = encode_hex
        self.fromUtf8 = encode_hex
        self.toDecimal = to_decimal
        self.fromDecimal = from_decimal

        # Currency Utility
        self.toWei = to_wei
        self.fromWei = from_wei

        # Address Utility
        self.isAddress = is_address
        self.isChecksumAddress = is_checksum_address
        self.toChecksumAddress = to_checksum_address