Skip to content

Latest commit

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Qourier examples

qourier-module-v0-sum-of-numbers

Use by Qouriers

npm i -g qourier-module-v0-sum-of-numbers

Use by Developers

// SPDX-License-Identifier: MITpragma solidity^0.8.13;
import"@qourier/contracts/Hub.sol";
contractSumOfNumbers {
addresspublic hub;
uint256public price;
uint256private id;
uint256private result;
constructor(addresshub_, uint256price_) {
hub = hub_;
price = price_;
}
function createTask(stringmemoryone_, stringmemorytwo_) publicpayable {
Hub(hub).createTask2{ value: price }(
bytes32("sum-of-numbers"),
[bytes(one_), bytes(two_)]
);
}
function completeTask(uint256id_, bytesmemoryresult_) external {
require(msg.sender== hub, "Only Qourier can change the state.");
id = id_;
result =bytesToUint(result_);
}
function getTask() publicviewreturns(uint256, uint256) {
return (id, result);
}
function bytesToUint(bytesmemoryb) publicpurereturns (uint256) {
uint256 res =0;
for (uint256 i =0; i < b.length; i++) {
uint256 c =uint256(uint8(b[i]));
if (c >=48&& c <=57) {
res = res *10+ (c -48);
}
}
return res;
}
}

qourier-module-v0-ticker-symbol

Use by Qouriers

npm i -g qourier-module-v0-ticker-symbol

Use by Developers

// SPDX-License-Identifier: MITpragma solidity^0.8.13;
import"@qourier/contracts/Hub.sol";
contractTickerSymbol {
addresspublic hub;
uint256public price;
uint256private id;
uint256private result;
constructor(addresshub_, uint256price_) {
hub = hub_;
price = price_;
}
function createTask(stringmemorysymbol_) publicpayable {
Hub(hub).createTask1{ value: price }(
bytes32("ticker-symbol"),
[bytes(symbol_)]
);
}
function completeTask(uint256id_, bytesmemoryresult_) external {
require(msg.sender== hub, "Only Qourier can change the state.");
id = id_;
result =bytesToUint(result_);
}
function getTask() publicviewreturns(uint256, uint256) {
return (id, result);
}
function bytesToUint(bytesmemoryb) publicpurereturns (uint256) {
uint256 res =0;
for (uint256 i =0; i < b.length; i++) {
uint256 c =uint256(uint8(b[i]));
if (c >=48&& c <=57) {
res = res *10+ (c -48);
}
}
return res;
}
}

qourier-module-v0-lighthouse-web3

Use by Qouriers

npm i -g qourier-module-v0-lighthouse-web3

Use by Developers

// SPDX-License-Identifier: MITpragma solidity^0.8.13;
import"@qourier/contracts/Hub.sol";
contractPushProtocol {
addresspublic hub;
uint256public price;
uint256private id;
uint256private status;
constructor(addresshub_, uint256price_) {
hub = hub_;
price = price_;
}
function createTask(
stringmemorynotification_title_,
stringmemorynotification_body_,
stringmemorypayload_title_,
stringmemorypayload_body_
) publicpayable {
Hub(hub).createTask4{ value: price }(
bytes32("push-protocol"),
[
bytes(notification_title_),
bytes(notification_body_),
bytes(payload_title_),
bytes(payload_body_)
]
);
}
function completeTask(uint256id_, bytesmemoryresult_) external {
require(msg.sender== hub, "Only Qourier can change the state.");
id = id_;
status =bytesToUint(result_);
}
function getTask() publicviewreturns(uint256, uint256) {
return (id, status);
}
function bytesToUint(bytesmemoryb) publicpurereturns (uint256) {
uint256 res =0;
for (uint256 i =0; i < b.length; i++) {
uint256 c =uint256(uint8(b[i]));
if (c >=48&& c <=57) {
res = res *10+ (c -48);
}
}
return res;
}
}

qourier-module-v0-lighthouse-web3

Use by Qouriers

npm i -g qourier-module-v0-lighthouse-web3

Use by Developers

// SPDX-License-Identifier: MITpragma solidity^0.8.13;
import"@qourier/contracts/Hub.sol";
contractLighthouseWeb3 {
addresspublic hub;
uint256public price;
uint256private id;
bytesprivate cid;
constructor(addresshub_, uint256price_) {
hub = hub_;
price = price_;
}
function createTask(
stringmemoryminimum_,
stringmemorymaximum_,
stringmemorycid_
) publicpayable {
Hub(hub).createTask4{ value: price }(
bytes32("lighthouse-web3"),
[
bytes(abi.encodePacked(msg.sender)),
bytes(minimum_),
bytes(maximum_),
bytes(cid_)
]
);
}
function completeTask(uint256id_, bytesmemoryresult_) external {
require(msg.sender== hub, "Only Qourier can change the state.");
id = id_;
cid = result_; // https://files.lighthouse.storage/viewFile/CID
}
function getTask() publicviewreturns(uint256, bytesmemory) {
return (id, cid);
}
}

qourier-module-v0-random-org

Use by Qouriers

npm i -g qourier-module-v0-random-org

Use by Developers

// SPDX-License-Identifier: MITpragma solidity^0.8.13;
import"@qourier/contracts/Hub.sol";
contractRandomOrg {
addresspublic hub;
uint256public price;
uint256private id;
uint256private result;
constructor(addresshub_, uint256price_) {
hub = hub_;
price = price_;
}
function createTask() publicpayable {
Hub(hub).createTask0{ value: price }(bytes32("random-org"));
}
function completeTask(uint256id_, bytesmemoryresult_) external {
require(msg.sender== hub, "Only Qourier can change the state.");
id = id_;
result =bytesToUint(result_);
}
function getTask() publicviewreturns(uint256, uint256) {
return (id, result);
}
function bytesToUint(bytesmemoryb) publicpurereturns (uint256) {
uint256 res =0;
for (uint256 i =0; i < b.length; i++) {
uint256 c =uint256(uint8(b[i]));
if (c >=48&& c <=57) {
res = res *10+ (c -48);
}
}
return res;
}
}

About

Qourier examples.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages