22import type { ContractEventPayload } from 'ethers'
33import { Logger , objectKeys , randomStr , redisStore } from '@ora-io/utils'
44import type { ListenOptions , ToKeyFn } from '../../src'
5- import { CheckTransactionStatus , Orap , StoreManager , getMiddlewareContext } from '../../src'
5+ import { Orap , StoreManager , getMiddlewareContext } from '../../src'
66import ABI from './erc20.abi.json'
77
88const MAINNET_USDT_ADDR = '0xdAC17F958D2ee523a2206206994597C13D831ec7'
@@ -24,7 +24,12 @@ export function startDemo(options: ListenOptions, storeConfig?: any) {
2424
2525 const toKey : ToKeyFn = ( from : string , _to : string , _amount : number ) => `${ from } _${ randomStr ( 4 ) } `
2626
27- const event = orap . event ( eventSignalParam . address , eventSignalParam . abi , eventSignalParam . eventName )
27+ const event = orap . event ( {
28+ address : eventSignalParam . address ,
29+ abi : eventSignalParam . abi ,
30+ eventName : eventSignalParam . eventName ,
31+ enableSubscribe : false ,
32+ } )
2833 . crosscheck ( {
2934 store,
3035 storeKeyPrefix : 'ora-stack:orap:demo:cc:' ,
@@ -43,27 +48,34 @@ export function startDemo(options: ListenOptions, storeConfig?: any) {
4348 . key ( toKey )
4449 . prefix ( 'ora-stack:orap:demo:TransferTask:' , 'ora-stack:orap:demo:Done-TransferTask:' )
4550 . ttl ( { taskTtl : 120000 , doneTtl : 60000 } )
46- . use ( CheckTransactionStatus ( options . wsProvider ) )
51+ // .use(CheckTransactionStatus(options.wsProvider))
4752 . handle ( handleTask )
4853 // add another task
49- . another ( )
50- . task ( )
51- . prefix ( 'ora-stack:orap:demo:AnotherTask:' , 'ora-stack:orap:demo:Done-AnotherTask:' )
52- . cache ( sm ) // rm to use mem by default
53- . ttl ( { taskTtl : 20000 , doneTtl : 20000 } )
54- . handle ( handleTask_2 )
55-
56- event . stop ( )
54+ // .another()
55+ // .task()
56+ // .prefix('ora-stack:orap:demo:AnotherTask:', 'ora-stack:orap:demo:Done-AnotherTask:')
57+ // .cache(sm) // rm to use mem by default
58+ // .ttl({ taskTtl: 20000, doneTtl: 20000 })
59+ // .handle(handleTask_2)
5760
5861 // start signal listener
5962 orap . listen (
6063 options ,
6164 ( ) => { logger . log ( 'listening on provider.network' ) } ,
6265 )
66+
67+ setTimeout ( ( ) => {
68+ logger . log ( '[+] add another address' )
69+ event . addresses ( [
70+ eventSignalParam . address ,
71+ '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48' ,
72+ ] )
73+ event . restart ( )
74+ } , 10 * 1000 )
6375}
6476
65- async function handleTask ( from : string , to : string , amount : number , _event : ContractEventPayload ) {
66- logger . log ( '[+] handleTask: from =' , from , 'to =' , to , 'amount =' , amount )
77+ async function handleTask ( from : string , to : string , amount : number , event : ContractEventPayload ) {
78+ logger . log ( '[+] handleTask: from =' , from , 'to =' , to , 'amount =' , amount , 'address =' , event . log . address )
6779 const args = objectKeys ( arguments ) . map ( k => arguments [ k ] )
6880
6981 const { next } = getMiddlewareContext ( ...args )
@@ -76,10 +88,10 @@ async function newEventSignalHook(from: string, to: string, amount: number, even
7688 return true // true to continue handle tasks, false to hijack the process.
7789}
7890
79- async function handleTask_2 ( from : string , to : string , amount : number ) {
80- logger . log ( '[+] handleTask_2: from =' , from , 'to =' , to , 'amount =' , amount )
81- const args = objectKeys ( arguments ) . map ( k => arguments [ k ] )
91+ // async function handleTask_2(from: string, to: string, amount: number) {
92+ // logger.log('[+] handleTask_2: from =', from, 'to =', to, 'amount =', amount)
93+ // const args = objectKeys(arguments).map(k => arguments[k])
8294
83- const { next } = getMiddlewareContext ( ...args )
84- await next ( )
85- }
95+ // const { next } = getMiddlewareContext(...args)
96+ // await next()
97+ // }
0 commit comments