12 Commits
code ... 0.5.3

Author SHA1 Message Date
AB
865fd3bbe4 Bump 2021-01-20 15:54:05 +03:00
AB
30bdb23a32 Add @here command 2021-01-20 15:53:22 +03:00
AB
f97562e9b7 Merge remote-tracking branch 'origin/main' into main 2021-01-11 11:39:34 +03:00
AB
2d000101c2 Merge 2021-01-11 11:39:20 +03:00
a26d227190 Merge pull request #10 from house-of-vanity/code
code
2021-01-11 11:26:51 +03:00
AB
cc44f0e23b Merge remote-tracking branch 'origin/main' into main
# Conflicts:
#	assets/help_text.rs
2021-01-11 11:22:47 +03:00
AB
96df636195 Add automerge action. 2021-01-11 11:21:18 +03:00
36660d384d Merge pull request #9 from house-of-vanity/code
Code
2021-01-10 21:39:38 +03:00
AB
788c2cbbd4 Fix type in help. 2021-01-09 01:06:10 +03:00
AB
9d5e5a3217 Fix type in help. 2021-01-08 17:54:05 +03:00
945da05794 Update README 2021-01-08 06:42:32 -08:00
3085d4c450 Merge pull request #8 from house-of-vanity/code
Code
2021-01-08 17:38:56 +03:00
5 changed files with 70 additions and 45 deletions

27
.github/workflows/automerge.yml vendored Normal file
View File

@ -0,0 +1,27 @@
name: automerge
on:
pull_request:
types:
- labeled
- unlabeled
- synchronize
- opened
- edited
- ready_for_review
- reopened
- unlocked
pull_request_review:
types:
- submitted
check_suite:
types:
- completed
status: {}
jobs:
automerge:
runs-on: ubuntu-latest
steps:
- name: automerge
uses: "pascalgn/automerge-action@v0.13.0"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

View File

@ -1,41 +1,41 @@
[package] [package]
name = "desubot" name = "desubot"
version = "0.5.1" version = "0.5.3"
authors = ["AB <ab@hexor.ru>"] authors = ["AB <ab@hexor.ru>"]
edition = "2018" edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies] [dependencies]
bytes = "0.5" bytes = "0.5"
tokio = { version = "0.2", features = ["full"]} tokio = { version = "0.2", features = ["full"]}
tracing = "0.1.9" tracing = "0.1.9"
tracing-futures = "0.2" tracing-futures = "0.2"
multipart = { version = "0.16", default-features = false, features = ["client"] } multipart = { version = "0.16", default-features = false, features = ["client"] }
telegram-bot = "0.8.0" telegram-bot = "0.8.0"
silicon = "0.4.0" silicon = "0.4.0"
hyper = "0.13" hyper = "0.13"
hyper-tls = { version = "0.4", optional = true } hyper-tls = { version = "0.4", optional = true }
futures = "0.3" futures = "0.3"
hyper-rustls = { version = "0.19", optional = true } hyper-rustls = { version = "0.19", optional = true }
rusqlite = { version = "0.24.2", features = ["bundled"]} rusqlite = { version = "0.24.2", features = ["bundled"]}
html-escape = "0.2" html-escape = "0.2"
regex = "1" regex = "1"
reqwest = "0.10.9" reqwest = "0.10.9"
uuid = { version = "0.8", features = ["v4"] } uuid = { version = "0.8", features = ["v4"] }
sha1 = "0.6.0" sha1 = "0.6.0"
env_logger = "0.7" env_logger = "0.7"
log = { version = "^0.4.5", features = ["std"] } log = { version = "^0.4.5", features = ["std"] }
subprocess = "0.2.6" subprocess = "0.2.6"
serde_json = "1.0" serde_json = "1.0"
markov = "1.1.0" markov = "1.1.0"
rand = "0.7.3" rand = "0.7.3"
mystem = "^0.2" mystem = "^0.2"
#mystem = { path = "../mystem-rs" } #mystem = { path = "../mystem-rs" }
async-trait = "0.1.42" async-trait = "0.1.42"
sqlparser = "0.7.0" sqlparser = "0.7.0"
[dependencies.syntect] [dependencies.syntect]
version = "4.4" version = "4.4"
default-features = false default-features = false
features = ["parsing", "dump-load", "regex-onig"] features = ["parsing", "dump-load", "regex-onig"]

4
README
View File

@ -7,10 +7,8 @@ Telegram bot with light group statistic and heavy spy features.
* /here command to mention all members. * /here command to mention all members.
* Alongside with saving whole message bot perform blacklist filter and stemming for every word (only Russian). "Красивую собаку мыли негры" -> "красивый собака мыть негр" * Alongside with saving whole message bot perform blacklist filter and stemming for every word (only Russian). "Красивую собаку мыли негры" -> "красивый собака мыть негр"
* Generate sentences using Markov Chains trained on history with /markov_all. * Generate sentences using Markov Chains trained on history with /markov_all.
== TODO ==
* Syntax highlighting for CODE exported to image. * Syntax highlighting for CODE exported to image.
== Important == == Important ==
* Desubot uses MyStem by Yandex for word stemming and assume that mystem binary is available in PATH. * Desubot uses MyStem by Yandex for word stemming and assume that mystem binary is available in PATH.
On Windows it may be placed on working directory. Both Linux and Windows mystem binary is in repo. On Windows it may be placed on working directory. Both Linux and Windows mystem binary is in repo.

View File

@ -2,7 +2,7 @@
static CODE_HELP: &str = "<b>Code highlighter</b> static CODE_HELP: &str = "<b>Code highlighter</b>
<i>Usage</i> <i>Usage</i>
<pre>/CODE <pre>/code
&lt;CODE&gt; &lt;CODE&gt;
#&lt;lang - JS by default&gt; #&lt;theme - Dracula by default&gt;</pre> #&lt;lang - JS by default&gt; #&lt;theme - Dracula by default&gt;</pre>

View File

@ -53,7 +53,7 @@ pub async fn handler(
} }
} }
} }
s if s.contains("/here") => { s if s.contains("/here") || s.contains("@here") => {
db::add_sentence(&message, mystem).await?; db::add_sentence(&message, mystem).await?;
Here { Here {
data: "".to_string(), data: "".to_string(),