@puregram/hear
Version:
simple implementation of hearing messages system for puregram
61 lines (39 loc) • 1.49 kB
Markdown
<div align='center'>
<img src='https://i.imgur.com/ZzjmE8i.png' />
</div>
<br />
<div align='center'>
<a href='https://github.com/nitreojs/puregram'><b><code>puregram</code></b></a>
<span> • </span>
<a href='#typescript-usage'><b>typescript usage</b></a>
<span> • </span>
<a href='https://t.me/pureforum'><b>telegram forum</b></a>
</div>
## @puregram/hear
_simple implementation of hearing messages system for `puregram` package_
### introduction
`@puregram/hear` listens for every message that has `text` or `caption` property in it and checks if provided conditions coincides with the `text`/`caption` property
### example
```js
const { Telegram } = require('puregram')
const { HearManager } = require('@puregram/hear')
const telegram = Telegram.fromToken(process.env.TOKEN)
const hearManager = new HearManager()
telegram.updates.on('message', hearManager.middleware)
hearManager.hear(/^hello$/i, context => context.send('hello world!'))
telegram.updates.startPolling()
```
### installation
```sh
$ yarn add @puregram/hear
$ npm i -S @puregram/hear
```
---
## typescript usage
in typescript, you kinda have to manually point `@puregram/hear` what context will be used as default by providing it in `HearManager<T>`:
```ts
import { Telegram, MessageContext } from 'puregram'
import { HearManager } from '@puregram/hear'
const telegram = Telegram.fromToken(process.env.TOKEN)
const hearManager = new HearManager<MessageContext>()
```