restructure to move towards pypi package

This commit is contained in:
Believethehype 2023-12-13 20:00:03 +01:00
parent c10f5439e5
commit 3056c07c15
38 changed files with 204 additions and 195 deletions

33
main.py
View File

@ -1,26 +1,19 @@
import os import os
from pathlib import Path from pathlib import Path
import dotenv import dotenv
from bot.bot import Bot
import tasks.convert_media as convert_media from nostr_dvm.bot import Bot
import tasks.discovery_inactive_follows as discovery_inactive_follows from nostr_dvm.tasks import videogeneration_replicate_svd, imagegeneration_replicate_sdxl, textgeneration_llmlite, \
import tasks.imagegeneration_openai_dalle as imagegeneration_openai_dalle trending_notes_nostrband, discovery_inactive_follows, translation_google, textextraction_pdf, \
import tasks.textextraction_pdf as textextraction_pdf translation_libretranslate, textextraction_google, convert_media, imagegeneration_openai_dalle
import tasks.textextraction_google as textextraction_google from nostr_dvm.utils.admin_utils import AdminConfig
import tasks.translation_google as translation_google from nostr_dvm.utils.backend_utils import keep_alive
import tasks.translation_libretranslate as translation_libretranslate from nostr_dvm.utils.definitions import EventDefinitions
from tasks import imagegeneration_replicate_sdxl, videogeneration_replicate_svd, trending_notes_nostrband, \ from nostr_dvm.utils.dvmconfig import DVMConfig
textgeneration_llmlite from nostr_dvm.utils.external_dvm_utils import build_external_dvm
from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.admin_utils import AdminConfig from nostr_dvm.utils.output_utils import PostProcessFunctionType
from utils.backend_utils import keep_alive from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig
from utils.external_dvm_utils import build_external_dvm
from utils.nostr_utils import check_and_set_private_key
from utils.output_utils import PostProcessFunctionType
from utils.zap_utils import check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
@ -115,7 +108,7 @@ def playground():
# Spawn DVM 7 Find inactive followers # Spawn DVM 7 Find inactive followers
googleextractor = textextraction_google.build_example("Extractor", "speech_recognition", googleextractor = textextraction_google.build_example("Extractor", "speech_recognition",
admin_config) admin_config)
bot_config.SUPPORTED_DVMS.append(googleextractor) bot_config.SUPPORTED_DVMS.append(googleextractor)
googleextractor.run() googleextractor.run()

10
nostr_dvm/__init__.py Normal file
View File

@ -0,0 +1,10 @@
# We follow Semantic Versioning (https://semver.org/)
_MAJOR_VERSION = '0'
_MINOR_VERSION = '0'
_PATCH_VERSION = '1'
__version__ = '.'.join([
_MAJOR_VERSION,
_MINOR_VERSION,
_PATCH_VERSION,
])

View File

@ -7,14 +7,14 @@ from datetime import timedelta
from nostr_sdk import (Keys, Client, Timestamp, Filter, nip04_decrypt, HandleNotification, EventBuilder, PublicKey, from nostr_sdk import (Keys, Client, Timestamp, Filter, nip04_decrypt, HandleNotification, EventBuilder, PublicKey,
Options, Tag, Event, nip04_encrypt) Options, Tag, Event, nip04_encrypt)
from utils.admin_utils import admin_make_database_updates from nostr_dvm.utils.admin_utils import admin_make_database_updates
from utils.database_utils import get_or_add_user, update_user_balance, create_sql_table, update_sql_table, User from nostr_dvm.utils.database_utils import get_or_add_user, update_user_balance, create_sql_table, update_sql_table
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.nip89_utils import nip89_fetch_events_pubkey, NIP89Config from nostr_dvm.utils.nip89_utils import nip89_fetch_events_pubkey, NIP89Config
from utils.nostr_utils import send_event from nostr_dvm.utils.nostr_utils import send_event
from utils.output_utils import PostProcessFunctionType, post_process_list_to_users, post_process_list_to_events from nostr_dvm.utils.output_utils import PostProcessFunctionType, post_process_list_to_users, post_process_list_to_events
from utils.zap_utils import parse_zap_event_tags, pay_bolt11_ln_bits, zap from nostr_dvm.utils.zap_utils import parse_zap_event_tags, pay_bolt11_ln_bits, zap
from utils.cashu_utils import redeem_cashu from nostr_dvm.utils.cashu_utils import redeem_cashu
class Bot: class Bot:

View File

@ -1,23 +1,22 @@
import json import json
from datetime import timedelta from datetime import timedelta
import pandas as pd
from nostr_sdk import PublicKey, Keys, Client, Tag, Event, EventBuilder, Filter, HandleNotification, Timestamp, \ from nostr_sdk import PublicKey, Keys, Client, Tag, Event, EventBuilder, Filter, HandleNotification, Timestamp, \
init_logger, LogLevel, Options, nip04_encrypt init_logger, LogLevel, Options, nip04_encrypt
import time import time
from utils.definitions import EventDefinitions, RequiredJobToWatch, JobToWatch from nostr_dvm.utils.definitions import EventDefinitions, RequiredJobToWatch, JobToWatch
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.admin_utils import admin_make_database_updates, AdminConfig from nostr_dvm.utils.admin_utils import admin_make_database_updates, AdminConfig
from utils.backend_utils import get_amount_per_task, check_task_is_supported, get_task from nostr_dvm.utils.backend_utils import get_amount_per_task, check_task_is_supported, get_task
from utils.database_utils import create_sql_table, get_or_add_user, update_user_balance, update_sql_table from nostr_dvm.utils.database_utils import create_sql_table, get_or_add_user, update_user_balance, update_sql_table
from utils.mediasource_utils import input_data_file_duration from nostr_dvm.utils.mediasource_utils import input_data_file_duration
from utils.nostr_utils import get_event_by_id, get_referenced_event_by_id, send_event, check_and_decrypt_tags from nostr_dvm.utils.nostr_utils import get_event_by_id, get_referenced_event_by_id, send_event, check_and_decrypt_tags
from utils.output_utils import build_status_reaction from nostr_dvm.utils.output_utils import build_status_reaction
from utils.zap_utils import check_bolt11_ln_bits_is_paid, create_bolt11_ln_bits, parse_zap_event_tags, \ from nostr_dvm.utils.zap_utils import check_bolt11_ln_bits_is_paid, create_bolt11_ln_bits, parse_zap_event_tags, \
parse_amount_from_bolt11_invoice, zap, pay_bolt11_ln_bits parse_amount_from_bolt11_invoice, zap, pay_bolt11_ln_bits
from utils.cashu_utils import redeem_cashu from nostr_dvm.utils.cashu_utils import redeem_cashu
use_logger = False use_logger = False
if use_logger: if use_logger:

View File

View File

@ -3,11 +3,11 @@ from threading import Thread
from nostr_sdk import Keys from nostr_sdk import Keys
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config from nostr_dvm.utils.nip89_utils import NIP89Config
from core.dvm import DVM from nostr_dvm.dvm import DVM
from utils.output_utils import post_process_result from nostr_dvm.utils.output_utils import post_process_result
class DVMTaskInterface: class DVMTaskInterface:

View File

View File

@ -1,22 +1,19 @@
import json import json
import os import os
import re
from datetime import timedelta from datetime import timedelta
from pathlib import Path from pathlib import Path
from threading import Thread
import dotenv import dotenv
from nostr_sdk import Client, Timestamp, PublicKey, Tag, Keys, Options, Alphabet, SecretKey from nostr_sdk import Client, Timestamp, PublicKey, Tag, Keys, Options, SecretKey
from interfaces.dvmtaskinterface import DVMTaskInterface from interfaces.dvmtaskinterface import DVMTaskInterface
from tasks.convert_media import MediaConverter
from utils.admin_utils import AdminConfig from utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nostr_utils import get_event_by_id, check_and_set_private_key from utils.nostr_utils import check_and_set_private_key
from utils.output_utils import post_process_list_to_users, post_process_list_to_events from utils.output_utils import post_process_list_to_events
from utils.zap_utils import check_and_set_ln_bits_keys from utils.zap_utils import check_and_set_ln_bits_keys
""" """

View File

@ -1,21 +1,19 @@
import json import json
import os import os
import signal
import time
from pathlib import Path from pathlib import Path
import dotenv import dotenv
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.mediasource_utils import organize_input_media_data from nostr_dvm.utils.mediasource_utils import organize_input_media_data
from utils.nostr_utils import check_and_set_private_key from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.output_utils import upload_media_to_hoster from nostr_dvm.utils.output_utils import upload_media_to_hoster
from utils.zap_utils import check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

@ -1,23 +1,21 @@
import json import json
import os import os
import re
from datetime import timedelta from datetime import timedelta
from pathlib import Path from pathlib import Path
from threading import Thread from threading import Thread
import dotenv import dotenv
from nostr_sdk import Client, Timestamp, PublicKey, Tag, Keys, Options, Alphabet from nostr_sdk import Client, Timestamp, PublicKey, Tag, Keys, Options
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from tasks.convert_media import MediaConverter from nostr_dvm.utils.admin_utils import AdminConfig
from utils.admin_utils import AdminConfig from nostr_dvm.utils.backend_utils import keep_alive
from utils.backend_utils import keep_alive from nostr_dvm.utils.definitions import EventDefinitions
from utils.definitions import EventDefinitions from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.nostr_utils import get_event_by_id, check_and_set_private_key from nostr_dvm.utils.output_utils import post_process_list_to_users
from utils.output_utils import post_process_list_to_users from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from utils.zap_utils import check_and_set_ln_bits_keys
""" """
This File contains a Module to find inactive follows for a user on nostr This File contains a Module to find inactive follows for a user on nostr

View File

@ -7,15 +7,15 @@ import dotenv
import requests import requests
from PIL import Image from PIL import Image
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nostr_utils import check_and_set_private_key from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.output_utils import upload_media_to_hoster from nostr_dvm.utils.output_utils import upload_media_to_hoster
from utils.zap_utils import get_price_per_sat, check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import get_price_per_sat, check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

@ -7,15 +7,15 @@ import dotenv
import requests import requests
from PIL import Image from PIL import Image
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nostr_utils import check_and_set_private_key from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.output_utils import upload_media_to_hoster from nostr_dvm.utils.output_utils import upload_media_to_hoster
from utils.zap_utils import get_price_per_sat, check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import get_price_per_sat, check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

@ -1,20 +1,19 @@
import json import json
import os import os
import time import time
from multiprocessing.pool import ThreadPool
from pathlib import Path from pathlib import Path
import dotenv import dotenv
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.mediasource_utils import organize_input_media_data from nostr_dvm.utils.mediasource_utils import organize_input_media_data
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.nostr_utils import check_and_set_private_key from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.zap_utils import check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

@ -5,14 +5,14 @@ from pathlib import Path
import dotenv import dotenv
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nostr_utils import get_event_by_id, check_and_set_private_key from nostr_dvm.utils.nostr_utils import get_event_by_id, check_and_set_private_key
from utils.zap_utils import check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

@ -5,14 +5,14 @@ from pathlib import Path
import dotenv import dotenv
from litellm import completion from litellm import completion
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nostr_utils import check_and_set_private_key from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.zap_utils import check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

@ -4,14 +4,14 @@ from pathlib import Path
import dotenv import dotenv
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nostr_utils import get_referenced_event_by_id, get_event_by_id, check_and_set_private_key from nostr_dvm.utils.nostr_utils import get_referenced_event_by_id, get_event_by_id, check_and_set_private_key
from utils.zap_utils import check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

@ -5,14 +5,14 @@ from pathlib import Path
import dotenv import dotenv
import requests import requests
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nostr_utils import get_referenced_event_by_id, get_event_by_id, check_and_set_private_key from nostr_dvm.utils.nostr_utils import get_referenced_event_by_id, get_event_by_id, check_and_set_private_key
from utils.zap_utils import check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

@ -1,23 +1,19 @@
import json import json
import os import os
import re
from datetime import timedelta
from pathlib import Path from pathlib import Path
from threading import Thread
import dotenv import dotenv
from nostr_sdk import Client, Timestamp, PublicKey, Tag, Keys, Options, Alphabet, SecretKey, Event from nostr_sdk import Tag, Keys
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from nostr_dvm.utils.admin_utils import AdminConfig
from utils.admin_utils import AdminConfig from nostr_dvm.utils.backend_utils import keep_alive
from utils.backend_utils import keep_alive from nostr_dvm.utils.definitions import EventDefinitions
from utils.definitions import EventDefinitions from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.nostr_utils import get_event_by_id, check_and_set_private_key from nostr_dvm.utils.output_utils import post_process_list_to_events
from utils.output_utils import post_process_list_to_users, post_process_list_to_events from nostr_dvm.utils.zap_utils import check_and_set_ln_bits_keys
from utils.zap_utils import check_and_set_ln_bits_keys
""" """
This File contains a Module to search for notes This File contains a Module to search for notes
@ -63,7 +59,6 @@ class TrendingNotesNostrBand(DVMTaskInterface):
return request_form return request_form
def process(self, request_form): def process(self, request_form):
from nostr_sdk import Filter
options = DVMTaskInterface.set_options(request_form) options = DVMTaskInterface.set_options(request_form)
import requests import requests

View File

@ -8,15 +8,15 @@ import requests
import urllib.request import urllib.request
from PIL import Image from PIL import Image
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.admin_utils import AdminConfig from nostr_dvm.utils.admin_utils import AdminConfig
from utils.backend_utils import keep_alive from nostr_dvm.utils.backend_utils import keep_alive
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, check_and_set_d_tag from nostr_dvm.utils.nip89_utils import NIP89Config, check_and_set_d_tag
from utils.nostr_utils import check_and_set_private_key from nostr_dvm.utils.nostr_utils import check_and_set_private_key
from utils.output_utils import upload_media_to_hoster from nostr_dvm.utils.output_utils import upload_media_to_hoster
from utils.zap_utils import get_price_per_sat, check_and_set_ln_bits_keys from nostr_dvm.utils.zap_utils import get_price_per_sat, check_and_set_ln_bits_keys
from nostr_sdk import Keys from nostr_sdk import Keys
""" """

View File

View File

@ -1,15 +1,12 @@
# ADMINISTRARIVE DB MANAGEMENT # ADMINISTRARIVE DB MANAGEMENT
import time
from datetime import timedelta
from nostr_sdk import Keys, EventBuilder, PublicKey, Client, Filter, EventId from nostr_sdk import Keys, PublicKey, Client
from utils.database_utils import get_from_sql_table, list_db, delete_from_sql_table, update_sql_table, \ from nostr_dvm.utils.database_utils import get_from_sql_table, list_db, delete_from_sql_table, update_sql_table, \
get_or_add_user, clean_db get_or_add_user, clean_db
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import nip89_announce_tasks, NIP89Config, nip89_delete_announcement, \ from nostr_dvm.utils.nip89_utils import nip89_announce_tasks, fetch_nip89_paramters_for_deletion
fetch_nip89_paramters_for_deletion from nostr_dvm.utils.nostr_utils import update_profile
from utils.nostr_utils import send_event, update_profile
class AdminConfig: class AdminConfig:

View File

@ -3,11 +3,11 @@ import signal
import time import time
import requests import requests
from nostr_sdk import Event, Tag from nostr_sdk import Event
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.mediasource_utils import check_source_type, media_source from nostr_dvm.utils.mediasource_utils import check_source_type, media_source
from utils.nostr_utils import get_event_by_id, get_referenced_event_by_id from nostr_dvm.utils.nostr_utils import get_event_by_id, get_referenced_event_by_id
def get_task(event, client, dvm_config): def get_task(event, client, dvm_config):

View File

@ -1,9 +1,8 @@
import asyncio
import base64 import base64
import json import json
import requests import requests
from utils.database_utils import get_or_add_user from nostr_dvm.utils.database_utils import get_or_add_user
from utils.zap_utils import create_bolt11_ln_bits, create_bolt11_lud16 from nostr_dvm.utils.zap_utils import create_bolt11_ln_bits, create_bolt11_lud16
async def get_cashu_balance(url): async def get_cashu_balance(url):

View File

@ -1,7 +1,6 @@
# DATABASE LOGIC # DATABASE LOGIC
import json import json
import sqlite3 import sqlite3
import time
from _sqlite3 import Error from _sqlite3 import Error
from dataclasses import dataclass from dataclasses import dataclass
@ -9,7 +8,7 @@ from datetime import timedelta
from logging import Filter from logging import Filter
from nostr_sdk import Timestamp, Keys, PublicKey, EventBuilder, Filter from nostr_sdk import Timestamp, Keys, PublicKey, EventBuilder, Filter
from utils.nostr_utils import send_event from nostr_dvm.utils.nostr_utils import send_event
@dataclass @dataclass

View File

@ -1,5 +1,5 @@
from utils.nip89_utils import NIP89Config from nostr_dvm.utils.nip89_utils import NIP89Config
from utils.output_utils import PostProcessFunctionType from nostr_dvm.utils.output_utils import PostProcessFunctionType
class DVMConfig: class DVMConfig:

View File

@ -3,10 +3,10 @@ from datetime import timedelta
from nostr_sdk import PublicKey, Options, Keys, Client from nostr_sdk import PublicKey, Options, Keys, Client
from interfaces.dvmtaskinterface import DVMTaskInterface from nostr_dvm.interfaces.dvmtaskinterface import DVMTaskInterface
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nip89_utils import NIP89Config, nip89_fetch_events_pubkey from nostr_dvm.utils.nip89_utils import NIP89Config, nip89_fetch_events_pubkey
from utils.output_utils import PostProcessFunctionType from nostr_dvm.utils.output_utils import PostProcessFunctionType
def build_external_dvm(pubkey, task, kind, fix_cost, per_unit_cost, config, def build_external_dvm(pubkey, task, kind, fix_cost, per_unit_cost, config,

View File

@ -3,9 +3,9 @@ import urllib
from datetime import time from datetime import time
from urllib.parse import urlparse from urllib.parse import urlparse
import ffmpegio import ffmpegio
from decord import AudioReader, VideoReader, cpu from decord import AudioReader, cpu
import requests import requests
from utils.nostr_utils import get_event_by_id from nostr_dvm.utils.nostr_utils import get_event_by_id
def input_data_file_duration(event, dvm_config, client, start=0, end=0): def input_data_file_duration(event, dvm_config, client, start=0, end=0):
@ -332,30 +332,30 @@ def get_media_link(url) -> (str, str):
def downloadOvercast(source_url, target_location): def downloadOvercast(source_url, target_location):
from utils.scrapper.media_scrapper import OvercastDownload from scrapper.media_scrapper import OvercastDownload
result = OvercastDownload(source_url, target_location) result = OvercastDownload(source_url, target_location)
return result return result
def downloadTwitter(videourl, path): def downloadTwitter(videourl, path):
from utils.scrapper.media_scrapper import XitterDownload from scrapper.media_scrapper import XitterDownload
result = XitterDownload(videourl, path + "x.mp4") result = XitterDownload(videourl, path + "x.mp4")
return result return result
def downloadTikTok(videourl, path): def downloadTikTok(videourl, path):
from utils.scrapper.media_scrapper import TiktokDownloadAll from scrapper.media_scrapper import TiktokDownloadAll
result = TiktokDownloadAll([videourl], path) result = TiktokDownloadAll([videourl], path)
return result return result
def downloadInstagram(videourl, path): def downloadInstagram(videourl, path):
from utils.scrapper.media_scrapper import InstagramDownload from scrapper.media_scrapper import InstagramDownload
result = InstagramDownload(videourl, "insta", path) result = InstagramDownload(videourl, "insta", path)
return result return result
def downloadYouTube(link, path, audioonly=True): def downloadYouTube(link, path, audioonly=True):
from utils.scrapper.media_scrapper import YouTubeDownload from scrapper.media_scrapper import YouTubeDownload
result = YouTubeDownload(link, path, audio_only=audioonly) result = YouTubeDownload(link, path, audio_only=audioonly)
return result return result

View File

@ -4,10 +4,10 @@ from hashlib import sha256
from pathlib import Path from pathlib import Path
import dotenv import dotenv
from nostr_sdk import Tag, Keys, EventBuilder, Filter, Alphabet, PublicKey, Event, Client, EventId from nostr_sdk import Tag, Keys, EventBuilder, Filter, Alphabet, PublicKey, Client, EventId
from utils.definitions import EventDefinitions from nostr_dvm.utils.definitions import EventDefinitions
from utils.nostr_utils import send_event from nostr_dvm.utils.nostr_utils import send_event
class NIP89Config: class NIP89Config:

View File

@ -0,0 +1 @@
from dvm import DVM

View File

@ -9,8 +9,8 @@ from Crypto.Cipher import AES
from Crypto.Util.Padding import pad from Crypto.Util.Padding import pad
from bech32 import bech32_decode, convertbits, bech32_encode from bech32 import bech32_decode, convertbits, bech32_encode
from nostr_sdk import nostr_sdk, PublicKey, SecretKey, Event, EventBuilder, Tag, Keys from nostr_sdk import nostr_sdk, PublicKey, SecretKey, Event, EventBuilder, Tag, Keys
from utils.dvmconfig import DVMConfig from nostr_dvm.utils.dvmconfig import DVMConfig
from utils.nostr_utils import get_event_by_id, check_and_decrypt_own_tags, update_profile from nostr_dvm.utils.nostr_utils import get_event_by_id, check_and_decrypt_own_tags
import lnurl import lnurl
from hashlib import sha256 from hashlib import sha256
import dotenv import dotenv

26
setup.py Normal file
View File

@ -0,0 +1,26 @@
from setuptools import setup, find_packages
VERSION = '0.0.1'
DESCRIPTION = 'A framework to build and run NIP90 Data Vending Machines'
LONG_DESCRIPTION = '-'
# Setting up
setup(
# the name must match the folder name 'verysimplemodule'
name="nostr-dvm",
version=VERSION,
author="Believethehype",
author_email="-",
description=DESCRIPTION,
long_description=LONG_DESCRIPTION,
packages=find_packages(),
install_requires=[], # add any additional packages that
# needs to be installed along with your package. Eg: 'caer'
keywords=['nostr', 'nip90', 'dvm', 'data vending machine'],
classifiers=[
"Development Status :: 3 - Alpha",
"Intended Audience :: Education",
"Programming Language :: Python :: 3",
]
)

View File

@ -1,7 +1,5 @@
import json import json
import os
import time import time
import datetime as datetime
from pathlib import Path from pathlib import Path
from threading import Thread from threading import Thread