Files
simplex-chat/apps/simplex-bot-advanced
Moritz Angermann 761ddac55d core: use GHC 9.6.2 (#2641)
* Make it compiler with 9.6

Can be built with:

cabal build all -j --allow-newer=base --allow-newer=ghc-prim --allow-newer=template-haskell --allow-newer=bytestring --allow-newer=memory --allow-newer=cryptonite

Using ghc 9.6

It mostly runs afoul of https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0366-no-ambiguous-field-access.rst

* compile with GHC 9.6.2: dependencies, imports, code

* update GHC version in CI

* update GHC version in desktop build scripts

* update simplexmq, sha256map.nix

* update compiler

* update simplexmq, direct-sqlcipher

* remove missing files from .cabal

* building on desktop

* mac build changes

* added version back

* building libffi from source

* update simplexmq

---------

Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
Co-authored-by: Avently <7953703+avently@users.noreply.github.com>
2023-08-24 21:56:37 +01:00
..
2023-08-24 21:56:37 +01:00

Advanced SimpleX Chat bot example

In most cases a simple REPL bot is sufficient, but in cases you want to program more advanced communication scenarios you may take a more complex event-based approach, as in this example.

Event-based approach allows you:

  • decide whether to connect to a user or not depending on any factors, e.g. user display name.
  • disconnect from users who send too many messages or send messages that bot finds inappropriate.
  • react to message deletions and editing.
  • process reply messages differently, taking the original message into account.
  • process and send images and voice messages.
  • create groups of users, e.g. to connect 2 users.
  • etc.