Remove old files
This commit is contained in:
@@ -1,80 +0,0 @@
|
|||||||
from core.util import logs
|
|
||||||
from django.core.management.base import BaseCommand
|
|
||||||
from slixmpp.componentxmpp import ComponentXMPP
|
|
||||||
from django.conf import settings
|
|
||||||
from core.models import User, Person, PersonIdentifier, ChatSession
|
|
||||||
from redis import asyncio as aioredis
|
|
||||||
from asgiref.sync import sync_to_async
|
|
||||||
from django.utils.timezone import now
|
|
||||||
import asyncio
|
|
||||||
import msgpack
|
|
||||||
from core.lib import deferred
|
|
||||||
from core.clients import signalapi
|
|
||||||
from slixmpp.xmlstream import register_stanza_plugin
|
|
||||||
from slixmpp.plugins.xep_0085.stanza import Active, Composing, Paused, Inactive, Gone
|
|
||||||
from slixmpp.stanza import Message
|
|
||||||
from slixmpp.xmlstream.stanzabase import ElementBase, ET
|
|
||||||
import aiohttp
|
|
||||||
from core.messaging import history
|
|
||||||
|
|
||||||
log = logs.get_logger("component")
|
|
||||||
|
|
||||||
redis = aioredis.from_url("unix://var/run/gia-redis.sock", db=10)
|
|
||||||
|
|
||||||
class Attachment(ElementBase):
|
|
||||||
name = "attachment"
|
|
||||||
namespace = "urn:xmpp:attachments"
|
|
||||||
plugin_attrib = "attachment"
|
|
||||||
interfaces = {"url", "filename", "content_type"}
|
|
||||||
|
|
||||||
|
|
||||||
async def stream(**kwargs):
|
|
||||||
pubsub = redis.pubsub()
|
|
||||||
await pubsub.subscribe("component")
|
|
||||||
|
|
||||||
while True:
|
|
||||||
message = await pubsub.get_message(ignore_subscribe_messages=True)
|
|
||||||
if message is not None:
|
|
||||||
try:
|
|
||||||
data = message["data"]
|
|
||||||
unpacked = msgpack.unpackb(data, raw=False)
|
|
||||||
log.info(f"Unpacked: {unpacked}")
|
|
||||||
except TypeError:
|
|
||||||
continue
|
|
||||||
if "type" in unpacked.keys():
|
|
||||||
if unpacked["type"] == "def":
|
|
||||||
await deferred.process_deferred(
|
|
||||||
unpacked,
|
|
||||||
**kwargs
|
|
||||||
)
|
|
||||||
await asyncio.sleep(0.01)
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
xmpp = EchoComponent(
|
|
||||||
jid=settings.XMPP_JID,
|
|
||||||
secret=settings.XMPP_SECRET,
|
|
||||||
server=settings.XMPP_ADDRESS,
|
|
||||||
port=settings.XMPP_PORT,
|
|
||||||
)
|
|
||||||
xmpp.register_plugin('xep_0030') # Service Discovery
|
|
||||||
xmpp.register_plugin('xep_0004') # Data Forms
|
|
||||||
xmpp.register_plugin('xep_0060') # PubSub
|
|
||||||
xmpp.register_plugin('xep_0199') # XMPP Ping
|
|
||||||
xmpp.register_plugin("xep_0085") # Chat State Notifications
|
|
||||||
xmpp.register_plugin('xep_0363') # HTTP File Upload
|
|
||||||
|
|
||||||
loop = asyncio.new_event_loop()
|
|
||||||
asyncio.set_event_loop(loop)
|
|
||||||
loop.create_task(stream(xmpp=xmpp))
|
|
||||||
|
|
||||||
# Connect to the XMPP server and start processing XMPP stanzas.
|
|
||||||
xmpp.connect()
|
|
||||||
xmpp.process()
|
|
||||||
|
|
||||||
|
|
||||||
try:
|
|
||||||
while True:
|
|
||||||
pass # Keep the component running
|
|
||||||
except (KeyboardInterrupt, SystemExit):
|
|
||||||
log.info("XMPP Component terminating")
|
|
||||||
@@ -1,63 +0,0 @@
|
|||||||
import msgpack
|
|
||||||
from django.core.management.base import BaseCommand
|
|
||||||
from django.conf import settings
|
|
||||||
from signalbot import SignalBot, Command, Context
|
|
||||||
from asgiref.sync import sync_to_async
|
|
||||||
from django.urls import reverse
|
|
||||||
import json
|
|
||||||
import asyncio
|
|
||||||
from core.util import logs
|
|
||||||
from core.lib.prompts.functions import truncate_and_summarize, messages_to_string, delete_messages
|
|
||||||
from core.lib import deferred
|
|
||||||
from core.messaging import replies, ai, natural, history, utils
|
|
||||||
from core.models import Chat, Manipulation, PersonIdentifier, ChatSession, Message, QueuedMessage
|
|
||||||
import aiohttp
|
|
||||||
from django.utils import timezone
|
|
||||||
from django.conf import settings
|
|
||||||
from core.clients.signal import NewSignalBot
|
|
||||||
from redis import asyncio as aioredis
|
|
||||||
|
|
||||||
SIGNAL_URL = "signal:8080"
|
|
||||||
|
|
||||||
|
|
||||||
log = logs.get_logger("processing")
|
|
||||||
|
|
||||||
redis = aioredis.from_url("unix://var/run/gia-redis.sock", db=10)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
async def stream():
|
|
||||||
pubsub = redis.pubsub()
|
|
||||||
await pubsub.subscribe("processing")
|
|
||||||
|
|
||||||
while True:
|
|
||||||
message = await pubsub.get_message(ignore_subscribe_messages=True)
|
|
||||||
if message is not None:
|
|
||||||
try:
|
|
||||||
data = message["data"]
|
|
||||||
unpacked = msgpack.unpackb(data, raw=False)
|
|
||||||
except TypeError:
|
|
||||||
continue
|
|
||||||
if "type" in unpacked.keys():
|
|
||||||
if unpacked["type"] == "def":
|
|
||||||
await deferred.process_deferred(unpacked)
|
|
||||||
await asyncio.sleep(0.01)
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
bot = NewSignalBot({
|
|
||||||
"signal_service": SIGNAL_URL,
|
|
||||||
"phone_number": "+447490296227",
|
|
||||||
})
|
|
||||||
bot.register(HandleMessage())
|
|
||||||
loop = asyncio.new_event_loop()
|
|
||||||
asyncio.set_event_loop(loop)
|
|
||||||
bot._event_loop = loop
|
|
||||||
loop.create_task(stream())
|
|
||||||
bot.start()
|
|
||||||
try:
|
|
||||||
loop.run_forever()
|
|
||||||
except (KeyboardInterrupt, SystemExit):
|
|
||||||
log.info("Process terminating")
|
|
||||||
finally:
|
|
||||||
loop.close()
|
|
||||||
Reference in New Issue
Block a user