urban bot
1.0.0
基于React的通用聊天机器人库。
我们支持的平台
很快
请使用我们的零配置启动器。
npx create-urban-bot my-app
npx create-urban-bot my-app --template js
或者手动安装:
npm i react @urban-bot/core @urban-bot/telegram @urban-bot/facebook ...
import React from 'react' ;
import { render , Route , Router , Root , Text , ButtonGroup , Button , useText } from '@urban-bot/core' ;
import { UrbanBotTelegram } from '@urban-bot/telegram' ;
import { UrbanBotSlack } from '@urban-bot/slack' ;
function Echo ( ) {
const [ text , setText ] = React . useState ( 'Say something' ) ;
useText ( ( { text } ) => {
setText ( text ) ;
} ) ;
return (
< Text >
< i > { text } < / i >
< / Text >
) ;
}
function Counter ( ) {
const [ count , setCount ] = React . useState ( 0 ) ;
const increment = ( ) => setCount ( count + 1 ) ;
const decrement = ( ) => setCount ( count - 1 ) ;
return (
< ButtonGroup title = { count } isNewMessageEveryRender = { false } >
< Button onClick = { increment } > +1 < / Button >
< Button onClick = { decrement } > -1 < / Button >
< / ButtonGroup >
) ;
}
function App ( ) {
return (
< Router >
< Route path = "/echo" >
< Echo / >
< / Route >
< Route path = "/counter" >
< Counter / >
< / Route >
< / Router >
) ;
}
const urbanBotTelegram = new UrbanBotTelegram ( {
token : 'telegramToken' ,
} ) ;
const urbanBotSlack = new UrbanBotSlack ( {
signingSecret : 'slackSigningSecret' ,
token : 'slackToken' ,
} ) ;
render (
< Root bot = { urbanBotTelegram } >
< App / >
< / Root >
) ;
render (
< Root bot = { urbanBotSlack } >
< App / >
< / Root >
) ;