又一个有内存和回调的有限状态机。
marmoolak的Python项目详细描述
安装
pip install marmoolak
用法
import marmoolak marmoolak.REDIS_HOST = '192.168.99.100' marmoolak.REDIS_PORT = 6379 machine = marmoolak.Machine def onpanic(e): print('panic! ' + e.msg) def oncalm(e): print('thanks to ' + e.msg + ' done by ' + e.args[0]) def ongreen(e): print('green') def onyellow(e): print('yellow') def onred(e): print('red') fsm = machine('myname', 'version1' , {'initial': 'green', 'events': [ {'name': 'warn', 'src': 'green', 'dst': 'yellow'}, {'name': 'panic', 'src': 'yellow', 'dst': 'red'}, {'name': 'panic', 'src': 'green', 'dst': 'red'}, {'name': 'calm', 'src': 'red', 'dst': 'yellow'}, {'name': 'clear', 'src': 'yellow', 'dst': 'green'}], 'callbacks': { 'onpanic': onpanic, 'oncalm': oncalm, 'ongreen': ongreen, 'onyellow': onyellow, 'onred': onred }}) fsm.panic(msg='killer bees', url="http://appido.ir/appido/api/getBooks.json") fsm.calm('bob', msg='sedatives in the honey pots')
学分
我使用fysom和redis来实现这个功能。所以大部分 redis和fysom开发人员获得了贷款。
联系我
请在rodmena@me.com给我寄封信