mirror of
https://gitlab.com/octospacc/WinDog.git
synced 2025-02-21 22:07:41 +01:00
25 lines
963 B
Python
25 lines
963 B
Python
|
# ================================== #
|
||
|
# WinDog multi-purpose chatbot #
|
||
|
# Licensed under AGPLv3 by OctoSpacc #
|
||
|
# ================================== #
|
||
|
|
||
|
import hashlib
|
||
|
|
||
|
def cHash(context:EventContext, data:InputMessageData):
|
||
|
text_input = ObjGet(data, "command.body")
|
||
|
algorithm = ObjGet(data, "command.arguments.algorithm")
|
||
|
if not (text_input and (algorithm in hashlib.algorithms_available)):
|
||
|
return SendMessage(context, {"Text": choice(Locale.__('hash.usage')).format(data.command.tokens[0], hashlib.algorithms_available)})
|
||
|
hashed = hashlib.new(algorithm, text_input.encode()).hexdigest()
|
||
|
return SendMessage(context, {
|
||
|
"TextPlain": hashed,
|
||
|
"TextMarkdown": MarkdownCode(hashed, True),
|
||
|
})
|
||
|
|
||
|
RegisterModule(name="Hashing", group="Geek", summary="Functions for hashing of textual content.", endpoints=[
|
||
|
SafeNamespace(names=["hash"], summary="Responds with the hash-sum of a message received.", handler=cHash, arguments={
|
||
|
"algorithm": True,
|
||
|
}),
|
||
|
])
|
||
|
|