summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gpt4free/forefront/__init__.py34
1 files changed, 19 insertions, 15 deletions
diff --git a/gpt4free/forefront/__init__.py b/gpt4free/forefront/__init__.py
index dbf1730b..c6dcee8d 100644
--- a/gpt4free/forefront/__init__.py
+++ b/gpt4free/forefront/__init__.py
@@ -1,13 +1,14 @@
from json import loads
-from xtempmail import Email
from re import findall
-from typing import Optional, Generator
-from faker import Faker
from time import time, sleep
+from typing import Generator, Optional
from uuid import uuid4
+
+from mailgw_temporary_email import Email
from fake_useragent import UserAgent
from requests import post
from tls_client import Session
+
from .typing import ForeFrontResponse
@@ -15,13 +16,12 @@ class Account:
@staticmethod
def create(proxy: Optional[str] = None, logging: bool = False):
proxies = {'http': 'http://' + proxy, 'https': 'http://' + proxy} if proxy else False
- faker = Faker()
- name = (faker.name().replace(' ', '_')).lower()
start = time()
- mail_client = Email(name=name)
- mail_address = mail_client.email
+ mail_client = Email()
+ mail_client.register()
+ mail_address = mail_client.address
client = Session(client_identifier='chrome110')
client.proxies = proxies
@@ -34,6 +34,7 @@ class Account:
'https://clerk.forefront.ai/v1/client/sign_ups?_clerk_js_version=4.38.4',
data={'email_address': mail_address},
)
+ print(response.json()['response']['id'])
try:
trace_token = response.json()['response']['id']
@@ -55,17 +56,21 @@ class Account:
if 'sign_up_attempt' not in response.text:
return 'Failed to create account!'
- verification_url = None
- new_message = mail_client.get_new_message(5)
- for msg in new_message:
- verification_url = findall(r'https:\/\/clerk\.forefront\.ai\/v1\/verify\?token=\w.+', msg.text)[0]
+
+ while True:
+ sleep(5)
+ message_id = mail_client.message_list()[0]['id']
+ message = mail_client.message(message_id)
+
+ new_message: Message = message
+ verification_url = findall(r'https:\/\/clerk\.forefront\.ai\/v1\/verify\?token=\w.+', new_message["text"])[0]
+
if verification_url:
break
-
- if verification_url is None or not verification_url:
- raise RuntimeError('Error while obtaining verfication URL!')
+
if logging:
print(verification_url)
+
response = client.get(verification_url)
response = client.get('https://clerk.forefront.ai/v1/client?_clerk_js_version=4.38.4')
@@ -188,4 +193,3 @@ class Completion:
raise Exception('Unable to get the response, Please try again')
return final_response
- \ No newline at end of file