Skip to content

Releases: Eyre-S/Coeur-Morny-Cono

Morny v1.1.1 *nanchang

11 Oct 10:43
b305f52
Compare
Choose a tag to compare

for 尊嘟假嘟, now it will check if the text is ends with "尊嘟假嘟", instead of pervious checking if text is fully equals to "尊嘟假嘟". same for 3 keywords (尊嘟假嘟, O.o, o.O)

for Medication Timer, fix it is unavailable due to the inner thread control failure.

for coeur params, added --outdated-ignore to replace old --outdated-block. It should be more clear to understand what the param is for. old --outdated-block have been tagged outdated, using it in the newer version will recieve a runtime warn. It may be removed on next minor version or major version (It will lives at lease 1 month for you update it).

Morny v1.1.0 *NANCHANG

09 Oct 14:21
30c5ae7
Compare
Choose a tag to compare

尊嘟假嘟

Morny now will reply "尊嘟"/"假嘟" for "尊嘟假嘟" or "O.o".

As a new function of User Randoms, it doesn't need to use the / slash prefix!

Thanks for @hasuchan's idea.

/chuang

Add command /chuang xxx, it will reply you a dump truck(泥头车) with xxx.

The idea is from @autoziyaobot. As a entertainment-oriented content, it will not show up in command list.

It support custom texts and multiline texts in the dump truck, but it does not have default text currently.(if there's no param, Morny will take no action.)

Bug Fixes

fix OnQuestionMarkReply false-checked message due to a huge amount of repeating normal message

Morny v1.0.0 *BEIPING

09 Oct 07:51
49bbc03
Compare
Choose a tag to compare

Full Changelog: 0.8.0.11...1.0.0

Brand new /info command

The new /info command can send a user-friendly introduction. And the /start command (normally be used in a use is first use the telegram bot) have been redesigned to similar to the new /info command.

New /info command Redesigned /start command
the new info message image

Commands /version and /runtime now merged to the /info command as a sub-command.

Old /version and /runtime is still supported though they won't be listed on command list.

It also have some some formatting changes in version and runtime, and now supported to show a git commit link.

image
image

New in Random Tools

In the older version, it already supported to use / this or that to random this or that.

Now, the new / do it? grammar has been added, it will return do it or 不do it.

Currently, it is only support to return with Chinese words .

*And, note that prefix slash / is required, this is for avoid false trigger.

New interesting function: Reply ? for a ?

If you send a ?, then Morny have change to reply you a ?.

Multiple ? and strange (or or ¿ but not only those) is all supported. It should support all unicode characters can describe a question, if some character is missing, please report to me.

Currently the probability of trigger this function is fixed 1/8.

Changes for administrator / trusted users

*msg now supported a send test have only the header without text body.

image

It will not report error while there's no message body in a send and will normally check the header -- completely skipped the message body check. It is useful to just test a chat id is available without meant to send something.

Trying to send this body-less send will still be a error.

Morny Report

The new MornyReport morny daemon will proactively send some runtime information or exception to a telegram chat, it will be useful to monitor Morny's runtime status without access to host terminal.

Currently when Morny startup, exit, some exception occurred, or some administrator execution is forbidden will send a report.

On exited or startup On some exception occurred
image image

Changes for self-hosted or developers

Official docker / docker-compose basic support have been added

Morny's repository have added the Dockerfile and a example docker-compose.yml. You can easily start Morny Coeur with docker using these two file now.

Add params for controlling Medication Timer

  • add param --medication-notify-chat / -medc for controlling where notify should send to.
    • It accept a long value means the notify chat id, accept only one value.
    • default is -1, which will shutdown Medication Timer.
  • add param --medication-notify-timezone / -medtz for controlling what timezone should use to calculate the time.
    • It accept a hour number that means the timezone offset hour. for example +09:00(Japan) is 9, -11:00 is -11
    • default is UTC timezone (+00:00)
  • add param --medication-notify-times / -medt for controlling when to notify.
    • it accept a list of hour number, separated by , . for example, set 0,7,21 means you want to notify at 00:00 and 7:00 and 21:00.
    • default is empty, which will shutdown Medication Timer.

If there's no enough params: if notify-chat or notify-times is not set, the Medication Timer will not run. (Note that the default timezone is UTC 0 time)

Unset all params default value of Morny

Before, all of the function related params have a default value -- this is how the original master of Morny uses Morny.

Now, all of those default values have been removed, means you do not need to manually explictly set them to -1 or something else to disable them.

This affects those params: --master(-mm) | --trsuted-chat(-trs) | --dinner-chat(-chd); And those 1.0.0 new function and params follows the no-default behavor too: --medication-notify-chat(-medc) | --report-to

This also means these function is now can be disabled by not set the related param:

  • On Call Me will send ID_501 when there's no master
  • Request Last Dinner will send ID_501 when there's no dinner-chat
  • and Morny Report and Medication Timer

Programming Language and build script

Morny Coeur have been ported to Scala3 as the main programming language.

imported buildconfig and grgit to make automation compile information better.

fixed the exec permission issue in /gradlew and /gradlew.bat

Bug fixes

fix unclosed quote will cause exceptions while parsing command.

fix some hidden command cannot execute due to no support to non-ascii command name. (also changed its behavor while I won't tell too much here)

fix error while converting millisecond to nanosecond in Medication Timer

inline query ShareBilibiliVideo now will not receive illegal av/BV id which can cause exceptions.

/nbnhhsh will now send 404 when there's no input text.

fix --trusted-chat -1 will caused MornyTrusted throws exception, now it will judge(ignore) the value as design.

fixed --report-to -1 not process normally

added missing --dinner-chat startup param.

Some minor fixes while porting coeur to scala is not listed.

1.0.0-RC6

07 Oct 14:22
45a85e1
Compare
Choose a tag to compare
1.0.0-RC6 Pre-release
Pre-release

Full Changelog: 1.0.0-RC5...1.0.0-RC6

Changes for self-hosted & developers

Now, all of the params have no default value, means you have no need to explictly set them to -1 to disable them.

This changes affected those params: --master(-mm) | --trsuted-chat(-trs) | --report-to | --dinner-chat(-chd) | --medication-notify-chat(-medc)

This is also related to the following functions -- the new defaults behavor is shut them down(you will also seen them have been disabled in log):

  • Medication Timer daemon will not run when medication-notify-to-chat or notify-at-hour is not set
  • Morny Report will do not report when report-to is not set
  • On Call Me will send ID_501 when there's no master
  • Request Last Dinner will send ID_501 when there's no dinner-chat

there also imported one new sticker reply: ID_501:
ID_501

Bug fix

fix unclosed quote will cause exceptions while parsing command. again.

1.0.0-RC5

06 Oct 13:44
69086b1
Compare
Choose a tag to compare
1.0.0-RC5 Pre-release
Pre-release

Change project language to Scala

Morny Coeur now use Scala as programming language.

This is a huge update and changed much many internal interfaces.

The updated interfaces cannot be listed, but the public function of bot is almost the same.

Minor changes

OnUserRandom "/do this?" function now support more keywords.

old keywords 吗?
new keywords 吗? ? 吗?

Bug fixes

Fixed OnUserRandom "/do this?" function conflict with QuestionMarkReply

Fixed other old bugs while doing scala port

1.0.0-RC4

17 Sep 12:27
213798d
Compare
Choose a tag to compare
1.0.0-RC4 Pre-release
Pre-release

Full Changes: 1.0.0-RC3...1.0.0-RC4

This changelog is based on previous pre-release 1.0.0-RC3.
Also read the previous pre-release changelog to see what' going on between the previous stable and this.

Brand new /info and /start

The /info and /start command have a fully new designed easy-to-read introduction with Morny's feature image page now!

image

the new info message

New in random tools: today do it?

As the normal random tools, use / as the prefix, then, use 吗? or just as suffix.

image

New entertainment function: ???

When you send ?, Morny will have chance reply you a ?.

Some others special question marks and multiple question marks is also supported!

For Developers:

Now support log level setting!

Since update messiva to v0.1.1, Morny now finally can set logging level.

Now, logging only log level not lower than INFO is the default behavor. We added coeur startup param --debug/--dbg/-d to let coeur's minimal logging level to ALL.

Added dockerfile to project

We added one default dockerfile which can build Morny Coeur from source and generate one available to use docker image. The accompanying docker-compose.yml is also added in the project file.

Althought we have no plan to publish to docker hub, this default dockerfile might be a good start, and you can also clone this repo and use docker compose up to start easily now.

Some Patches

/nbnhhsh will now send 404 when there's no input text.

added missing --dinner-chat startup param.

Bug fix

inline query ShareBilibiliVideo now will not recieve illegal av/BV id which can cause excptions.

fix unclosed quote will cause exceptions while parsing command.

1.0.0-RC3

18 Nov 10:13
8e28bbb
Compare
Choose a tag to compare
1.0.0-RC3 Pre-release
Pre-release

Full Changelog: 1.0.0-RC2...1.0.0-RC3

Medication Timer

fix error while converting millisecond to nanosecond in Timer

Added parameters to control timer and notify

  • add param --medication-notify-chat / -medc for controlling where notify should send to.
    • It accept a long value means the motify chat id, accept only one value.
    • default is Annie's notify chat.
  • add param --medication-notify-timezone / -medtz for controlling what timezone should use to calculate the time.
    • It accept a hour number that means the timezone offset hour. for example +09:00(Japan) is 9, -11:00 is -11
    • default is UTC timezone (+00:00)
  • add param --medication-notify-times / -medt for controlling when to notify.
    • it accept a list of hour number, separated by , . for example, set 0,7,21 means you want to notify at 00:00 and 7:00 and 21:00.
    • default is empty, which will shutdown Medication Timer.

1.0.0-RC2

13 Nov 05:34
2c7c4a2
Compare
Choose a tag to compare
1.0.0-RC2 Pre-release
Pre-release

Full Changelog: 1.0.0-RC1...1.0.0-RC2

This publish changelog is based on previous pre-release 1.0.0-RC1.
Also read the previous pre-release changelog to see what' going on between the previous stable and this.


  • fixed --report-to -1 not process normally

  • changed Medication Timer trigger time from 0:00[+8] and 12:00[+8] to only 12:00[+8]
    with changed the function inplementation and added a test for it and

1.0.0-RC1

12 Nov 09:29
a863570
Compare
Choose a tag to compare
1.0.0-RC1 Pre-release
Pre-release

Full Changelog: 0.8.0.11...1.0.0-RC1

Morny Coeur major update 1.0*BEIPING is almost a kernel update, it has only few functional updates while has much code changes.
as a end user, there's no much changes to know, but for the developer, you may have a huge need to read full diff.

MornyReport

Added a feature that can execute a report to a Telegram channel while bot Login or Exit or an Exception occurred.

using start param --report-to to set an channel id (there is a default value exists, using -1 to disable this feature).

image
image

Telegram Commands

/info: Merged the /version and /runtime

those two now exists as the subcommand of /info, like /info version.

old /version and /runtime command are still available while they have been removed from command list.

and the /runtime now is the default behavor while using /info command without subcommand/param.

command version/runtime format and support changes:

with Build Config updates, version and runtime now support commit git info (will also have a link if available)

the compile time have also been changed to code time : it shows if there's no code changes between build environment with the commit, it will use the commit time whether than current time as code time

image

besides changes on version, there's more format changes on runtime.

image

*msg: now support *msg with send id without send body.

image

Bugs Fix

  • fixed --trusted-chat -1 will caused MornyTrusted throws exception, now it will judge(ignore) the value as design.

  • fixed one easter-egg command cannot execute dut to no support to non-ascii command name. (also changed its behavor while I won't tell too much here)

Build Tool (Gradle)

fixed the permission problem which caused ./gradlew and ./gradlew.bat cannot execute.

import the buildconfig plugin which can make version variable process better

import the grgit plugin, make build variable support to git-commit/working-tree-clean/commit-time.

it will also check and report current git/working-tree status while gradle initializing.

make the properties variablize, now it will normally compile without set properties of maven-publish