dify 邀请链接在第二次之后无法正确生成,

u59ebvdq  于 4个月前  发布在  其他
关注(0)|答案(4)|浏览(39)

自检

  • 这仅用于提交错误报告,如果您想提问,请访问 Discussions
  • 我已在现有问题中进行了搜索,包括已关闭的问题。
  • 我确认我使用英文提交此报告(我已阅读并同意 Language Policy )。
  • 请不要修改此模板 :) 并填写所有必填字段。

Dify版本

0.6.11

云或自托管

自托管(Docker)

重现步骤

  1. 邀请用户。但忘记保存邀请链接。
  2. 再次邀请用户。邀请链接没有正确生成,生成了登录页面的URL。
  3. 删除用户
  4. 再次邀请用户,但邀请链接没有正确创建

向其他用户的邀请链接正确生成。
在未提供邮件服务器的环境中,这个问题非常严重。

✔️ 预期行为

  • 可以根据需要生成任意次数的邀请链接。
  • 当重新邀请已删除的用户时,邀请链接会正确生成。

❌ 实际行为

  • 第二次或以后无法正确生成邀请链接。
  • 已删除一次的用户无法正确生成邀请链接。
nue99wik

nue99wik1#

你好!我在这里帮助你解决bug、问题以及成为贡献者。请告诉我如何帮助你!
要解决Dify版本0.6.11中在重新邀请用户或邀请已删除用户时生成的邀请链接不正确的问题,你应该检查并正确配置以下环境变量:

  1. CONSOLE_API_URL:确保此设置为控制台API后端的正确URL。
  2. CONSOLE_WEB_URL:确保此设置为您的控制台Web前端的正确URL。
    示例配置:
CONSOLE_API_URL=https://api.console.dify.ai
CONSOLE_WEB_URL=https://console.dify.ai

此外,确保其他相关环境变量也正确设置,因为它们也可能影响邀请链接的生成:

  1. SERVICE_API_URL:应设置为您的服务API后端的URL。
  2. APP_API_URL:应设置为您的WebApp API后端的URL。
  3. APP_WEB_URL:应设置为您的WebApp前端的URL。
    示例配置:
SERVICE_API_URL=https://api.dify.ai
APP_API_URL=https://app.dify.ai
APP_WEB_URL=https://app.dify.ai

请确保这些URL可访问且正确指向您的Dify示例的API和Web前端1(https://github.com/langgenius/dify-docs/blob/main/zh_CN/getting-started/install-self-hosted/environments.md)2(https://github.com/langgenius/dify-docs/blob/main/en/getting-started/install-self-hosted/environments.md)。
如果问题仍然存在,您可能需要清除与用户邀请相关的任何缓存或数据库条目。以下是步骤:

  1. 访问Docker容器:
docker exec -it <container_name> /bin/bash
  1. 访问数据库:
psql -U <username> -d <database_name>
  1. 清除邀请条目:
DELETE FROM account WHERE <condition>;
DELETE FROM tenant_account_role WHERE <condition>;
  1. 清除缓存:
redis-cli DEL member_invite:token:<token>
redis-cli DEL member_invite_token:<workspace_id>, <email_hash>:<token>
  1. 重启Docker容器 :
docker restart <container_name>

通过遵循这些步骤,你可以确保为重新邀请或已删除的用户生成正确的邀请链接3(https://github.com/langgenius/dify/blob/main/api/controllers/console/workspace/members.py)4(https://github.com/langgenius/dify/blob/main/api/services/account_service.py)。

  • 要继续与 Dosu 对话,请提及 @dosu。*
ubof19bj

ubof19bj2#

感谢您的反馈👍

正确删除accounts表中的数据可以创建邀请链接。

我已经找到了一个解决方法,但如果还有从GUI解决这个问题的方法,那将是一个更好的产品。

我不知道手动删除是否可以保持数据完整性。

1szpjjfi

1szpjjfi3#

这个问题还没有解决吗?0.6.13版本的问题仍然重复出现。

1szpjjfi

1szpjjfi4#

你好!

我正在将0.6.14版本部署到Kubernetes集群。除了发送邮件功能之外,其他一切似乎都很好。我通过设置以下变量为api pod启用了resend邮件类型:

- name: MAIL_TYPE
      value: "resend"
    - name: RESEND_API_KEY
      value: "**********"
    - name: RESEND_API_URL
      value: "https://api.resend.com"

但是,每当我创建一个新用户时,都没有出现邀请链接。

此外,invite-email调用因HTTP 504错误而超时。

在api pod中出现了以下日志(我已经启用了调试日志记录):

2024-07-17 06:49:30,598.598 DEBUG [Dummy-13] [functional.py:335] -
def document_indexing_sync_task(dataset_id, document_id):
    return 1

2024-07-17 06:49:30,600.600 DEBUG [Dummy-13] [functional.py:335] -
def clean_notion_document_task(document_ids, dataset_id):
    return 1

2024-07-17 06:49:30,600.600 DEBUG [Dummy-13] [functional.py:335] -
def batch_import_annotations_task(job_id, content_list, app_id, tenant_id, user_id):
    return 1

2024-07-17 06:49:30,601.601 DEBUG [Dummy-13] [functional.py:335] -
def add_document_to_index_task(dataset_document_id):
    return 1

2024-07-17 06:49:30,601.601 DEBUG [Dummy-13] [functional.py:335] -
def clean_dataset_task(dataset_id, tenant_id, indexing_technique, index_struct, collection_binding_id, doc_form):
    return 1

2024-07-17 06:49:30,601.601 DEBUG [Dummy-13] [functional.py:335] -
def retry_document_indexing_task(dataset_id, document_ids):
    return 1

2024-07-17 06:49:30,601.601 DEBUG [Dummy-13] [functional.py:335] -
def document_indexing_task(dataset_id, document_ids):
    return 1

2024-07-17 06:49:30,602.602 DEBUG [Dummy-13] [functional.py:335] -
def accumulate(self, *args, **kwargs):
    return 1

2024-07-17 06:49:30,602.602 DEBUG [Dummy-13] [functional.py:335] -
def process_trace_tasks(tasks_data):
    return 1

2024-07-17 06:49:30,602.602 DEBUG [Dummy-13] [functional.py:335] -
def update_annotation_to_index_task(annotation_id, question, tenant_id, app_id, collection_binding_id):
    return 1

2024-07-17 06:49:30,603.603 DEBUG [Dummy-13] [functional.py:335] -
def unlock_chord(self, group_id, callback, interval=0, max_retries=1, result=2, Result=3, GroupResult=4, result_from_tuple=5, **kwargs):
    return 1

2024-07-17 06:49:30,603.603 DEBUG [Dummy-13] [functional.py:335] -
def xmap(task, it):
    return 1

2024-07-17 06:49:30,603.603 DEBUG [Dummy-13] [functional.py:335] -
def sync_website_document_indexing_task(dataset_id, document_id):
    return 1

2024-07-17 06:49:30,603.603 DEBUG [Dummy-13] [functional.py:335] -
def delete_annotation_index_task(annotation_id, app_id, tenant_id, collection_binding_id):
    return 1

2024-07-17 06:49:30,604.604 DEBUG [Dummy-13] [functional.py:335] -
def remove_document_from_index_task(document_id):
    return 1

2024-07-17 06:49:30,604.604 DEBUG [Dummy-13] [functional.py:335] -
def deal_dataset_vector_index_task(dataset_id, action):
    return 1

2024-07-17 06:49:30,604.604 DEBUG [Dummy-13] [functional.py:335] -
def xstarmap(task, it):
    return 1

2024-07-17 06:49:30,604.604 DEBUG [Dummy-13] [functional.py:335] -
def document_indexing_update_task(dataset_id, document_id):
    return 1

2024-07-17 06:49:30,605.605 DEBUG [Dummy-13] [functional.py:335] -
def batch_create_segment_to_index_task(job_id, content, dataset_id, document_id, tenant_id, user_id):
    return 1

2024-07-17 06:49:30,605.605 DEBUG [Dummy-13] [functional.py:335] -
def chunks(task, it, n):
    return 1

2024-07-17 06:49:30,605.605 DEBUG [Dummy-13] [functional.py:335] -
def clean_document_task(document_id, dataset_id, doc_form, file_id):
    return 1

2024-07-17 06:49:30,605.605 DEBUG [Dummy-13] [functional.py:335] -
def send_invite_member_mail_task(language, to, token, inviter_name, workspace_name):
    return 1

2024-07-17 06:49:30,605.605 DEBUG [Dummy-13] [functional.py:335] -
def group(self, tasks, result, group_id, partial_args, add_to_parent=0):
    return 1

2024-07-17 06:49:30,606.606 DEBUG [Dummy-13] [functional.py:335] -
def delete_segment_from_index_task(segment_id, index_node_id, dataset_id, document_id):
    return 1

2024-07-17 06:49:30,606.606 DEBUG [Dummy-13] [functional.py:335] -
def chain(*args, **kwargs):
    return 1

2024-07-17 06:49:30,606.606 DEBUG [Dummy-13] [functional.py:335] -
def disable_annotation_reply_task(job_id, app_id, tenant_id):
    return 1

2024-07-17 06:49:30,606.606 DEBUG [Dummy-13] [functional.py:335] -
def duplicate_document_indexing_task(dataset_id, document_ids):
    return 1

2024-07-17 06:49:30,606.606 DEBUG [Dummy-13] [functional.py:335] -
def chord(self, header, body, partial_args=0, interval=1, countdown=2, max_retries=3, eager=4, **kwargs):
    return 1

2024-07-17 06:49:30,606.606 DEBUG [Dummy-13] [functional.py:335] -
def enable_segment_to_index_task(segment_id):
    return 1

2024-07-17 06:49:30,607.607 DEBUG [Dummy-13] [functional.py:335] -
def backend_cleanup():
    return 1

2024-07-17 06:49:30,607.607 DEBUG [Dummy-13] [functional.py:335] -
def add_annotation_to_index_task(annotation_id, question, tenant_id, app_id, collection_binding_id):
    return 1

2024-07-17 06:49:30,607.607 DEBUG [Dummy-13] [functional.py:335] -
def send_reset_password_mail_task(language, to, token):
    return 1

2024-07-17 06:49:30,607.607 DEBUG [Dummy-13] [functional.py:335] -
def disable_segment_from_index_task(segment_id):
    return 1

2024-07-17 06:49:30,607.607 DEBUG [Dummy-13] [functional.py:335] -
def enable_annotation_reply_task(job_id, app_id, user_id, tenant_id, score_threshold, embedding_provider_name, embedding_model_name):
    return 1

2024-07-17 06:49:30,608.608 DEBUG [Dummy-13] [functional.py:335] -
def recover_document_indexing_task(dataset_id, document_id):
    return 1

2024-07-17 06:49:30,608.608 DEBUG [Dummy-13] [functional.py:335] -
def remove_app_and_related_data_task(self, app_id):
    return 1

请问有人能建议如何解决这个问题吗?是否有办法绕过邀请邮件发送功能?对我来说,只要有邀请链接就足够了。

谢谢!

相关问题