|
|
@ -396,7 +396,6 @@ class DashElectrumX(ElectrumX): |
|
|
|
super().__init__(*args, **kwargs) |
|
|
|
self.electrumx_handlers['masternode.announce.broadcast'] = self.masternode_announce_broadcast |
|
|
|
self.electrumx_handlers['masternode.subscribe'] = self.masternode_subscribe |
|
|
|
self.subscribe_mns = False |
|
|
|
self.mns = set() |
|
|
|
|
|
|
|
async def notify(self, height, touched): |
|
|
@ -404,7 +403,6 @@ class DashElectrumX(ElectrumX): |
|
|
|
|
|
|
|
await super().notify(height, touched) |
|
|
|
|
|
|
|
if self.subscribe_mns: |
|
|
|
for masternode in self.mns: |
|
|
|
status = await self.daemon.masternode_list(['status', masternode]) |
|
|
|
payload = { |
|
|
@ -417,7 +415,7 @@ class DashElectrumX(ElectrumX): |
|
|
|
|
|
|
|
def server_version(self, client_name=None, protocol_version=None): |
|
|
|
'''Returns the server version as a string. |
|
|
|
ForcE version string response for Electrum-Dash 2.6.4 |
|
|
|
Force version string response for Electrum-Dash 2.6.4 |
|
|
|
''' |
|
|
|
|
|
|
|
default_return = super().server_version(client_name, protocol_version) |
|
|
@ -427,13 +425,8 @@ class DashElectrumX(ElectrumX): |
|
|
|
|
|
|
|
# Masternode command handlers |
|
|
|
async def masternode_announce_broadcast(self, signmnb): |
|
|
|
'''Pass through the parameters to the daemon. |
|
|
|
'''Pass through the masternode announce message to be broadcast by the daemon.''' |
|
|
|
|
|
|
|
An ugly API: current Electrum clients only pass the masternode |
|
|
|
broadcast message in hex and expect error messages to be returned in |
|
|
|
the result field. And the server shouldn't be doing the client's |
|
|
|
user interface job here. |
|
|
|
''' |
|
|
|
try: |
|
|
|
mnb_info = await self.daemon.masternode_broadcast(['relay', signmnb]) |
|
|
|
return mnb_info |
|
|
@ -451,5 +444,5 @@ class DashElectrumX(ElectrumX): |
|
|
|
result = await self.daemon.masternode_list(['status', vin]) |
|
|
|
if result is not None: |
|
|
|
self.mns.add(vin) |
|
|
|
self.subscribe_mns = True |
|
|
|
return result.get(vin) |
|
|
|
return None |
|
|
|