Node.js 写的一个真随机数机器人 - 适用于瀑布 IM 服务拓展 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
imdjh
V2EX    分享创造

Node.js 写的一个真随机数机器人 - 适用于瀑布 IM 服务拓展

  •  1
     
  •   imdjh 2015-10-25 12:31:50 +08:00 6066 次点击
    这是一个创建于 3694 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前些时间尝试了瀑布 IM - 一个团队协作办公平台(我更喜欢自己给的这个定义,它集合了各种团队协作服务于一聊天室)

    喜人的是,我看到了 hackable 的服务拓展,于是做了这么一个功能演示主题的聊天 bot 。

    先来看看效果吧 ;)

    chat showbox

    使用基于关键词激发的服务, 使用基于关键词激发的服务,监听关键词,发送 RESTful 请求到 API

    怎么用?

    1. 在服务器上直接安装&运行

    npm install trbot-pubuim -g 

    2. 使用方便快速的 docker 镜像

    docker pull imdjh/trbot-pubuim docker run --name MyTrueRandomBot -d imdjh/trbot-pubuim 

    3. 我没有服务器

    你真的很幸运,遇上免费 docker PaaS 的时代,而且本项目已 docker 镜像化。

    如何使用服务商 DaoCloud ,参见这个v2ex 帖子

    将 hub 镜像名设置为 imdjh/trbot-pubuim 。hub link

    4. 我不想用 docker , show me your prod.

    setting pubuim service

    将示例站点http://imdjh-true-number-bot.daoapp.io/输入回调地址

    配置机器人

    这个项目可以高度定制化(中二化)

    通过传递环境变量给守护进程完成。

    支持的环境变量以及对应解释如下。
    - BOT_AVATAR # [ life.glider ] 机器人在桌面提示时的头像, URL 字符串。
    - BOT_MSGPREFIX # [ I choose ] 机器人在返回随即数之前说的话,字符串。
    - BOT_NAME # [ True Random Dice ] 机器人在聊天室里显示的名字,字符串。
    - PULL_DELAY # [ 5000 ] 启动时检测随即池是否被填充的延时,单位毫秒
    - TR_BUFFER # [ 50 ] 每次从 random.org 提取随机数的数量,数字。
    - TR_BUFFER_CHECKLENGTH # [ 5 ] 每当随即池里的数少于此时,触发从 random.org 取随机数,数字
    - TR_END # [ 6 ] 随机数的截止(包含),数字。
    - TR_START # [ 1 ] 随机数的开始(包含),数字。

    - VERBOSE # [] 除非设置为 yes ,否则不再 log 中输出 DEBUG 信息,任意。

    配置示例

    config example
    这个是http://imdjh-true-number-bot.daoapp.io/示例站点的的配置

    第 1 条附言    2015-10-25 13:08:00 +08:00

    使用npm install -g trbot-pubuim后,用trbot-pubuim启动服务器,前面可以加环境变量。如:

    VERBOSE=yes BOT_NAME=gud trbot-pubuim

    第 2 条附言    2015-10-25 16:37:42 +08:00

    RANDOM.ORG offers true random numbers to anyone on the Internet. The randomness comes from atmospheric noise, which for many purposes is better than the pseudo-random number algorithms typically used in computer programs.

    这个 Bot 原理是用了 random.org 的 API 放到自己的缓冲池里面,只要 random.org 是真随机的,那么结果就是真随机的。

    第 3 条附言    2015-10-25 17:02:04 +08:00

    刚才创建了一个瀑布 IM 的团队,大家可以用这个内部链接注册到团队里调戏 TR 机器人:
    https://true-rnd.pubu.im/reg/d32zrergp87gc6b

    或者嫌麻烦的话,用 [email protected]/321321a登录到团队开 ROLL !

    第 4 条附言    2015-10-25 17:14:53 +08:00

    感谢 @matsuijurina 提出,把大神的名字打错了,已在演示服务器中改正,再次谢谢!
    演示服务器 Update: 增加中二度,使语句通畅。

    update demo API shot

    14 条回复    2015-10-27 12:19:35 +08:00
    Moker
        1
    Moker  
       2015-10-25 13:01:08 +08:00
    demo 404 了
    风格是自己喜欢的 先收藏下
    luoway
        2
    luoway  
       2015-10-25 13:01:30 +08:00   1
    > RANDOM.ORG offers true random numbers to anyone on the Internet. The randomness comes from atmospheric noise, which for many purposes is better than the pseudo-random number algorithms typically used in computer programs.

    That's cool !
    imdjh
        3
    imdjh  
    OP
       2015-10-25 13:09:25 +08:00
    @Moker 你好,可能是 daocloud 抽了?我现在测了,演示服务器`http://imdjh-true-number-bot.daoapp.io/`没问题
    Moker
        4
    Moker  
       2015-10-25 14:37:27 +08:00
    @imdjh 我福建电信 还是不行。。
    matsuijurina
        5
    matsuijurina  
       2015-10-25 14:50:49 +08:00   2
    达扎克:我经历了亿万年的岁月,穷尽世间真理,追寻宇宙本源,终于在这个上帝不掷骰子的世界里找到了产生真随机数的方法,成为了多维宇宙的随机之神....然而....你居然把“随机”两个字打错了????!
    trigged
        6
    trigged  
       2015-10-25 15:05:36 +08:00
    怒赞
    chairuosen
        7
    chairuosen  
       2015-10-25 15:15:08 +08:00
    没明白,哪写着怎么真随机的原理了?
    imdjh
        8
    imdjh  
    OP
       2015-10-25 16:36:58 +08:00
    @chairuosen 这个 Bot 用了 random.org 的 API 放到自己的缓冲池里面,只要 random.org 是真随机的,那么结果就是真随机的。
    imdjh
        9
    imdjh  
    OP
       2015-10-25 16:57:05 +08:00
    @Moker 你好,刚才创建了一个瀑布 IM 的团队(聊天室),你可以试试看用这个内部链接注册:
    https://true-rnd.pubu.im/reg/d32zrergp87gc6b

    或者用这个测试帐号直接玩起(privileged)
    [email protected]/321321a
    imdjh
        10
    imdjh  
    OP
       2015-10-25 16:58:31 +08:00
    shyrock
        11
    shyrock  
       2015-10-26 11:07:01 +08:00
    进来看真随机数。。。
    aksoft
        12
    aksoft  
       2015-10-26 15:25:26 +08:00
    真草京
    Kabie
        13
    Kabie  
       2015-10-26 16:26:15 +08:00
    ...我就是来看看真随机实现。。。结果你告诉我用服务。。。
    CYKun
        14
    CYKun  
       2015-10-27 12:19:35 +08:00
    RANDOM.ORG offers true random numbers to anyone on the Internet. The randomness comes from atmospheric noise, which for many purposes is better than the pseudo-random number algorithms typically used in computer programs.

    用背景噪声生成随机数。。。总觉得好像不太靠谱
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3941 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 10:11 PVG 18:11 LAX 02:11 JFK 05:11
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86