import os import sys import time import paramiko pw = os.environ["DEPLOY_PASSWORD"] c = paramiko.SSHClient() c.set_missing_host_key_policy(paramiko.AutoAddPolicy()) c.connect("20.191.152.26", username="wakka", password=pw, timeout=30) time.sleep(5) script = r""" sudo docker exec guest-chat printenv CHATWOOT_AGENT_BOT_TOKEN sudo docker exec guest-chat python3 -c " import sys; sys.path.insert(0,'/opt/guest-cs') import maxkb_chatwoot_bridge as m p={'event':'conversation_updated','id':3,'account':{'id':1},'messages':[{'id':666661,'content':'你好','message_type':0,'private':False,'conversation_id':3,'account_id':1,'sender':{'name':'游客'}}]} print('extract', m._extract_incoming(p)) " sudo docker exec guest-chat python3 -c " import json, urllib.request p={'event':'conversation_updated','id':3,'account':{'id':1},'messages':[{'id':666662,'content':'你好','message_type':0,'private':False,'conversation_id':3,'account_id':1,'sender':{'name':'游客'}}]} req=urllib.request.Request('http://127.0.0.1:7788/webhook/bot1/chatwoot', data=json.dumps(p).encode(), headers={'Content-Type':'application/json'}, method='POST') with urllib.request.urlopen(req, timeout=120) as r: print('webhook', r.status, r.read()[:300]) " sleep 8 sudo docker logs guest-chat 2>&1 | grep -iE 'bridge|MaxKB|401|reply_len|橋接|failed' | tail -10 """ _, o, e = c.exec_command(script, timeout=180) sys.stdout.buffer.write(o.read()) sys.stdout.buffer.write(e.read()) c.close()