Commit Graph

255 Commits

Author SHA1 Message Date
7e668bd974
add support for publish doc jar, add dockerBuild task 2024-08-09 00:30:06 +08:00
7cf06a539c
fix sbt publish error and add name for root project 2024-08-08 23:04:03 +08:00
4faa9cb5e5
fix build errors, and bump resource-tools version 2024-07-18 14:54:15 +08:00
e6b5fa5157
basically separated morny-coeur and morny-system-lib project 2024-07-12 17:25:12 +08:00
388351593a
add file-based module loader and update resource-tools to 0.3.0 2024-07-03 14:50:33 +08:00
11542377d5
add exception catch for Morny Coeur Lifecycle Event calls, fix MedicationTimer onExit event failed when no timer runs. 2024-06-15 14:26:50 +08:00
d40dae4453
cha MornyHellos.On can reply 'o' in private chat 2024-06-15 11:44:58 +08:00
2baa249d63
add Morny CRONs 2024-05-21 17:04:12 +08:00
a62398e0c5
add some scaladoc and add IDEA/VSCode configures 2024-05-21 15:43:48 +08:00
053b789aff
delete deprecated -ob, add WIP --skip-login 2024-05-09 23:04:46 +08:00
254ec2a5a1
fix assembly build error 2024-05-09 18:51:34 +08:00
41da55f1ef
update dependencies
- sbt : 1.10.0 <== 1.9.9
- http4s-{dsl, circe} : 0.23.27 <== 0.23.26
- circe-{core, generic, parser} : 0.14.7 <== 0.14.6
2024-05-09 18:02:00 +08:00
e2a1bc2e59
add reload and langs reload, make ongoing thread warn can be before the thread register.
- change MornyLangs re-implements the methods of Translations so that it can be used like a Translations
  - changes its inner Translations implementation can be reloaded.
- MornyCoeur.dsl changes its `translations` from type Translations to MornyLangs in order to make reload works.
- add ensureCleansState to ThreadingManager and ThreadingManagerImpl to make the warn-before-register works
- cha /test implements message threads warn-before-register
2024-05-09 17:55:31 +08:00
aad79b9726
usable translations and Coeur DSL 2024-04-26 17:37:03 +08:00
9ddfa6539d
make http:sticker/id basic usable 2024-04-20 20:38:21 +08:00
f2bd0a38c2
fix sbt error 2024-04-19 15:35:53 +08:00
f3db8f4457
add morny's HttpStatus abstract and http:ping better
- add HttpStatus class which set the MornyNotFound REST error result etc.
- add fields `time` and `server` to http:ping result
- fix header errors
2024-04-19 15:27:47 +08:00
2cbc75a2ca
Language Tree and Translations Def, scala & sbt version update. 2024-04-19 14:14:09 +08:00
7e3588c221
update version tag 2024-03-07 18:27:35 +08:00
2db56738f8
add VarText utils 2024-03-07 18:15:38 +08:00
d180e7d04f
doc patch and lib upd 2024-02-25 12:42:19 +08:00
4908110c80
add simple/complex error message framework. 2024-02-25 11:30:34 +08:00
025f152417
add debug mode (controls caches) and max cache time limits.
- add coeur config debugMode
  - currently controls if set the cache time in inline queries
  - can be enabled by `--debug-run`
  - change old `--debug -d` startup param (which means enable debug logging) to `--verbose-logging --verbose`
  - set the new `--debug -d` as the combined of `--debug-run` and `--verbose-logging`
  - deprecated `--dbg`, currently, it still works as old behavior (like `--verbose`)
2024-02-18 18:32:01 +08:00
966c4dfa92
add the message thread framework. 2024-02-18 18:01:23 +08:00
8d04d6529c
refactor bot execute method etc.
- change Log.exceptionLog(throwable) to an extension method throwable.toLogString in UseThrowable
- added SimpleCommandManager as the backend of both MornyCommandManager and UniMeowCommandManager
- added Request().execute and Request().unsafeExecute() extensions.
  - change all the request execute using those extensions.
- change some method with infix keyword.
- change MornyTrusted methods using User/Chat object instead of a bare id.
- update scala to 3.4.0-RC4 and fix infix warnings.
2024-02-15 22:26:39 +08:00
9cc8b49459
scaladoc update, and added Update.sourceTime 2024-02-15 18:33:17 +08:00
456273be96
add event sources statistics, 2024-02-07 00:12:13 +08:00
5aa63de2a9 add HTTP server and basic tstickers-api
- add HTTP server backend
  - with configurable listening port
    - default is 30179
    - cannot disable it yet
  - with UI service with a 523 image
  - with simple RESTful API service
- add basic tstickers-api
  - now can only get and output binary content without file-type tagging or converting
-
2024-02-04 23:58:15 +08:00
ee47446900
add core package 2023-12-27 13:14:16 +08:00
2374d39b41
add replyTo support for /get 2023-12-26 19:37:34 +08:00
c5fef1359d
add reporter module, add modules table log on start 2023-12-24 22:55:24 +08:00
4fb08f6240
fully modularization (except report) 2023-12-24 00:56:55 +08:00
7718ae845a
better err report for GivenContext, module morny.event_hack 2023-12-23 20:16:16 +08:00
083e5d1b2f
uni_meow modularize 2023-12-23 17:00:54 +08:00
9574dd299b
fix EventEnv stackTrack problem, new method for GivenContext 2023-12-22 21:30:03 +08:00
6b961a3de3
add coeur lifecycles, add MornyCoeur.externalContext 2023-12-21 14:19:20 +08:00
341d4cd851
add -t argument for test run 2023-12-20 17:46:02 +08:00
58cf4cc74b
change ISimpleCommand.aliases type to List from Array 2023-12-20 17:28:17 +08:00
20f2a05ee0
fix sbt publish have no maven-metadata 2023-12-12 17:12:02 +08:00
ac828d777d
change build toolchain to sbt 2023-12-11 20:35:39 +08:00
961edd93f3
[[release 1.3.0*guanggu]]
## 📇 Function & Mechanisms

- add daily event statistics, which collects event processed counts and average consumed time
  - can be found using `/info event` or newly added Morny Daily Report
  - will reset every 00:00 of report-zone
- add `/info tasks` to monitor current coeur task manager status
- cha Question Mark Reply support `⸘`
- cha bot output supported codeblock language tag (for event_hack output and exception report)
- for inline twittet tweet share
  - add FixTweet output format
  - removed c.vxtwitter output format (because the upstream default is changed to combined)
  - support x.com and fixvx.com and fixupx.com for input
- add some methods that can get social media status' content
  - currently support tweeter tweet, and weibo status
    - weibo with videos is not supported yet
  - add command `/get <status-url>` can get from a url
  - add private message listener that can automaticly search supported url from recieved private message and output the status content
  - add inline query can output status content by using `<supported-url> get` (or `get <supported-url> is also supported`)
    - weibo with pics and twitter with videos is not supported yet

## 🧯 Bug Fix

- fix Telegram User DC matching failure due to cdn domain changed to */cdn-telegram.org
- fix InputCommand throws OutOfBounds when input is empty (aka. only `/` in message text)
- fix wrong time parsing in OnCallMe-last_dinner

## 🔌 for Trusted/Admin

- add Morny Daily Report, will report at 00:00 of report-zone
  - now will report daily event statistics

## 🔩 for self-hosted/developer

- add --report-zone startup param to control which time-zone the Daily Report time should aligned to
  - default is system default zone
- add err handler for MornyCoeur#eventManager(UpdateListener), now error will not output to stderr but Morny's logger.
- add util.scheduler and MornyCoeur#tasks for task managering
- add MornyCoeur#watchDog
- add EventEnv#timeStartup
- add atEventPost and executeFilter in EventListener
- cha EventEnv#status
- add SttpPublic#mornyBasicRequest and make every Morny's HTTP request using it (eveny request now will take Morny UA)
2023-12-06 21:51:29 +08:00
c4632263de
make private url share can get from content 2023-12-02 21:11:33 +08:00
ad65ab7a73
SocialContent add non-pic alternative 2023-11-30 00:13:29 +08:00
20c9916535
add show retweet weibo 2023-11-29 21:08:08 +08:00
79d41d5e72
basic inline get social function
- Now supported get social content from inline
  - use a supported url with prefix or suffix "get"
  - only support twitter photos media
  - support all types of pure text content.
  - trying get non-supported medias may cause failure.
2023-11-29 17:16:02 +08:00
3d1699ea1d
move external API docking code to extra package from data 2023-11-29 00:15:13 +08:00
a9767ec1b0
change /tweet to /get and added support for weibo content 2023-11-27 18:58:35 +08:00
d602e1b366
set morny UA for all HTTP req, add twitter tests 2023-11-23 17:57:29 +08:00
43cdf221d9
fix request client failed caused unexpected exception 2023-11-22 16:06:15 +08:00
f8b2d056cc
FixTweet api implement, with a /tweet command 2023-11-21 23:35:12 +08:00