xmppc 명령을 사용하여 텍스트 파일 내용을 보내는 방법은 무엇입니까?

xmppc 명령을 사용하여 텍스트 파일 내용을 보내는 방법은 무엇입니까?

내부에테먹스Android 앱에서는 다음과 같은 모든 문자 메시지가 포함된 텍스트 파일을 받습니다.

termux-sms-list >sms.txt

스크립트를 통해 자동으로 xmpp를 통해 콘텐츠를 보내야 합니다. 사용 가능한 명령어는 xmppc인데, 파일 업로드를 지원하지 않는 것 같습니다. 나는 성공하지 못한 채 다음 방법을 시도했습니다.

xmppc -j [email protected] -p "UserPassword" -m message chat [email protected] $(cat sms.txt)

cat sms.txt | xmppc -j [email protected] -p "UserPassword" -m message chat [email protected] -

어떤 아이디어가 있나요?

답변1

마침내 놀라운 해결책을 찾았습니다!

당연히 JID와 비밀번호를 변경해야 합니다.

while true ; do
# Get SMS's with a little treatment
    termux-sms-list | sed -u "/\"_id\":/d;/\"threadid\":/d;/\"read\":/d;/\"type\":/d;s/\"/'/g" >messages.txt
# Automatically creates a second script to send the messages embedded in the xmppc command
    echo '#!/bin/bash' >txt2xmpp.sh
    echo 'xmppc -j [email protected] -p "UserPassword" -m message chat [email protected] \' >>txt2xmpp.sh
# xmppc requires the message to be enclosed in double quotes
    echo "aaaaa$(cat messages.txt)aaaaa" | sed -u 's/aaaaa/\"/g' >>txt2xmpp.sh
# Run the second script
    bash txt2xmpp.sh
# Will repeat after 5 minutes
    sleep 5m
done

수신자의 xmpp 클라이언트에서 메시지는 다음 형식으로 표시됩니다.

[
  {
    'number': '+77777',
    'received': '2022-07-28 07:55:27',
    'body': 'SERVICE: check if you have an offer and get your accounts in order. Enjoy installments of 14x or more. trade: http://domain.tld/e',
  },
  {
    'number': '+88888',
    'received': '2022-07-28 07:55:28',
    'body': 'Bank: YourName, we want your opinion on your INTERNATIONAL card visit domain.tld/abcdef for a quick search. Cancel SMS:Send STOP',
  },
  {
    'number': '+99999',
    'received': '2022-07-28 07:55:29',
    'body': 'Your verification code is: 999-999. Enter it in the text field.',
  }
]

관련 정보