Introduction
Introduction Statistics Contact Development Disclaimer Help
Add dalle emoji support to annna. - annna - Annna the nice friendly bot.
git clone git://bitreich.org/annna/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws6…
Log
Files
Refs
Tags
README
---
commit dc0e577401b734bc1513078f7af1d0f1b741dc46
parent 3b6c6e5e060a71796cb0decdf0bdcbc6e2b37511
Author: Annna Robert-Houdin <[email protected]>
Date: Fri, 1 Jul 2022 19:56:28 +0200
Add dalle emoji support to annna.
Diffstat:
M annna-message-common | 31 ++++++++++++++++++++---------…
A dalle-gen-emoji | 66 +++++++++++++++++++++++++++++…
2 files changed, 86 insertions(+), 11 deletions(-)
---
diff --git a/annna-message-common b/annna-message-common
@@ -992,6 +992,15 @@ then
fi
case "${text}" in
+::*::)
+ {
+ emojiuri="$(dalle-gen-emoji "${text}")"
+ if [ -n "${emojiuri}" ];
+ then
+ annna-say -s "${server}" -c "${channel}" "${emojiuri}"
+ fi
+ } &
+ ;;
*\#nospoil*)
;;
*rfc[0-9]*)
@@ -1040,6 +1049,17 @@ else
done
fi
+# Always keep the karma / shame last!
+case "${text}" in
+*"-shaming"*)
+ shametext="$(printf "%s\n" "${text}" | sed 's,.* \(.*-shaming\).*,\1,'…
+ shame "${shametext}"
+ ;;
+*++|*--)
+ karma "${text}"
+ ;;
+esac
+
# Membership Level.
ismember=0
for member in $brmembers;
@@ -1064,14 +1084,3 @@ case "${text}" in
;;
esac
-# Always keep the karma / shame last!
-case "${text}" in
-*"-shaming"*)
- shametext="$(printf "%s\n" "${text}" | sed 's,.* \(.*-shaming\).*,\1,'…
- shame "${shametext}"
- ;;
-*++|*--)
- karma "${text}"
- ;;
-esac
-
diff --git a/dalle-gen-emoji b/dalle-gen-emoji
@@ -0,0 +1,66 @@
+#!/usr/bin/env python
+# coding=utf-8
+#
+# Kiss me when you can.
+# by annna
+#
+
+import os
+import os.path
+import sys
+import getopt
+import requests
+import base64
+
+def usage(app):
+ app = os.path.basename(app)
+ print("usage: %s [-h] [::]some-emoji[:key=value...][::]" % (app),
+ file=sys.stderr)
+ sys.exit(1)
+
+def main(args):
+ try:
+ opts, largs = getopt.getopt(args[1:], "h")
+ except getopt.GetoptError as err:
+ print(str(err))
+ usage(args[0])
+
+ for o, a in opts:
+ if o == "-h":
+ usage(args[0])
+ else:
+ assert False, "unhandled option"
+
+ if len(largs) < 1:
+ usage(args[0])
+
+ emoji = " ".join(largs)
+ emoji = emoji.strip("::")
+ emoji = emoji.replace(":", " ").replace(",", " ").replace("=", " ").\
+ replace(".", " ").replace("/", " ")
+
+ emojifile = "%s.jpg" % (emoji.replace(" ", "-"))
+
+ filebase = "/br/ai/dalle/dalle-results/"
+ emojiuribase = "gopher://bitreich.org/9/memecache/dalle/"
+ imguri = "http://127.0.0.1:32553/dalle"
+ jsonreq = {"text": emoji, "num_images": 1}
+
+ filepath = "%s%s" % (filebase, emojifile)
+ if not os.path.exists(filepath):
+ try:
+ answer = requests.post(imguri, json=jsonreq)
+ except:
+ return 1
+
+ fd = open(filepath, "wb")
+ fd.write(base64.b64decode(answer.json()[0]))
+ fd.close()
+
+ print("%s%s" % (emojiuribase, emojifile))
+
+ return 0
+
+if __name__ == "__main__":
+ sys.exit(main(sys.argv))
+
You are viewing proxied material from bitreich.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.