Skip to content

Instantly share code, notes, and snippets.

@corbifex
corbifex / wsChannel.js
Last active December 2, 2020 16:48
Lisk wsChannel workaround
import WebSocket from 'isomorphic-ws';
import { EventEmitter } from 'events';
const CONNECTION_TIMEOUT = 2000;
const ACKNOWLEDGMENT_TIMEOUT = 2000;
const RESPONSE_TIMEOUT = 3000;
const timeout = async (ms, message) => new Promise((_, reject) => {
const id = setTimeout(() => {
clearTimeout(id);
@corbifex
corbifex / buyTicket.js
Created December 14, 2020 08:33
Token debit
await reducerHandler.invoke("token:debit", {
address: senderAddress,
amount: asset.value,
});
@corbifex
corbifex / buyTicket.js
Created December 14, 2020 08:34
Credit tokens
await reducerHandler.invoke("token:credit", {
address: organization.ownerAddress,
amount: asset.value,
});
@corbifex
corbifex / buyTicket.js
Created December 14, 2020 08:35
Sold tickets
await reducerHandler.invoke("event:soldTicket", {
eventId: asset.eventId,
typeId: asset.typeId,
});
@corbifex
corbifex / event_asset.js
Created December 14, 2020 08:36
SoldTicket reducer
const soldTicket = async ({params, stateStore}) => {
const { eventId, typeId } = params;
const registeredEventsBuffer = await stateStore.chain.get(
CHAIN_STATE_EVENTS
);
if (!registeredEventsBuffer) {
throw new Error('No events found');
}