Schedule Contract Function Calls Ein Ethereum-Vertrag, der die Planung von Funktionsaufrufen für einen bestimmten Block in der Zukunft erleichtert. Funktionsaufrufe können so geplant werden, dass sie gegen jeden Vertrag ausgeführt werden. Die Planung kann von Verträgen oder Ethereum-Kontoinhabern durchgeführt werden. Vollständig im Ethereum-Netzwerk enthalten.
[F] Wie kann ich Ethereum Alarm Clock
(hauptsächlich Scheduler.sol-Vertrag) in einem privaten Ethereum-Netzwerk verwenden? Manuell habe ich versucht, Verträge/* Bibliotheken/* Dateien, die sich im Quellcode befanden, mit Solidity Browser zu kompilieren, aber ich bin mit folgenden Fehlern konfrontiert, die ich nicht beheben konnte.
Auf CallLib.sol-Datei
Untitled:474:25: Error: Fallback function cannot return values.
function () returns (bool) {
^----^
Untitled:394:16: Error: Explicit type conversion not allowed.
return State(CallLib.state(call));
^------------------------^
Auf SchedulerLib.Sol:
Untitled:191:20: Error: Member "value" not found or not visible after argument-dependent lookup in function (address,uint256,uint8,address,bytes4,bytes memory,uint256,uint256,uint16,uint256,uint256) returns (contract FutureBlockCall) - did you forget the "payable" modifier?
var call = (new FutureBlockCall).value(callConfig.endowment)(
^-------------------------^
Vielen Dank für Ihre wertvolle Zeit und Hilfe.
Die von Ihnen verlinkte Version (0.7.0) wurde am 31. Januar 2016 veröffentlicht. Zu diesem Zeitpunkt war die neueste Solidity-Version 0.2.1 (30. Januar 2016).
Wenn Sie Ihre Compiler-Version auf diese Solidity-Version in der Remix-IDE umstellen, wird der Vertrag problemlos kompiliert. Ein funktionierendes ETHFiddle-Snippet finden Sie hier .
Denken Sie daran, dass der Ethereum-Wecker-Vertrag in privaten Netzwerken nutzlos ist, da er darauf angewiesen ist, dass externe Parteien (Menschen) in Ether belohnt werden, um den Alarm tatsächlich auszulösen .
Es wurde einfacher, EAC in jedem Netzwerk bereitzustellen, einschließlich lokaler Netzwerke.
Im bestehenden oder neuen NPM-Projektlauf:
npm i --save @ethereum-alarm-clock/lib
Wenn Sie dann ein laufendes Netzwerk haben, führen Sie Folgendes aus:
npx eac-deploy-contracts
Dies verwendet das neue @ethereum-alarm-clock/lib .
Wenn Sie das vollständige Tutorial sehen möchten, lesen Sie bitte:
Text-Tutorial: https://github.com/ethereum-alarm-clock/ethereum-alarm-clock/wiki/Integration-using-EAC-JavaScript-library
Video-Tutorial: https://youtu.be/DY0QYDQG4lw
Piper Merriam
0.3.6
.Alper
0.4.8
. Ich habe den Compiler0.3.5
wie von Ihnen empfohlen geändert und kompiliert. Solidity Browser friert ein oder es dauert etwa 10 Minuten, bis das Kompilieren aufgrund der Größe des Codes abgeschlossen ist (ich habe alle Verträge in dieselbe Datei eingefügt und alle zusammen kompiliert). Kann es effizienter sein, den Vertragscode mit bereitzustellengeth
? @PiperMerriam. Kann ich diese Frage irgendwie beantworten?Alper
Piper Merriam
populus
.Jaime