2023-04-28 10:01:27 +00:00
|
|
|
from nio.events.room_events import RoomMessageText
|
|
|
|
from nio.rooms import MatrixRoom
|
|
|
|
|
|
|
|
|
|
|
|
async def command_imagine(room: MatrixRoom, event: RoomMessageText, bot):
|
|
|
|
prompt = " ".join(event.body.split()[2:])
|
|
|
|
|
|
|
|
if prompt:
|
|
|
|
bot.logger.log("Generating image...")
|
|
|
|
|
2023-05-01 06:11:43 +00:00
|
|
|
images, tokens_used = bot.image_api.generate_image(prompt, user=room.room_id)
|
|
|
|
|
|
|
|
for image in images:
|
2023-04-28 10:01:27 +00:00
|
|
|
bot.logger.log(f"Sending image...")
|
|
|
|
await bot.send_image(room, image)
|
|
|
|
|
2023-05-01 08:12:50 +00:00
|
|
|
bot.log_api_usage(event, room, f"{bot.image_api.api_code}-{bot.image_api.image_api}", tokens_used)
|
2023-05-01 06:11:43 +00:00
|
|
|
|
2023-04-28 10:01:27 +00:00
|
|
|
return
|
|
|
|
|
|
|
|
await bot.send_message(room, "You need to provide a prompt.", True)
|