Enviando caracteres especiais e novas linhas via KANNEL

1

Como posso enviar uma mensagem para o kannel com linhas e caracteres especiais. Exemplo se eu tiver o arquivo message.txt com o seguinte texto

line1 with few special characters like @ " / :
line 2 spaces words etc
line 3 "special characters like @ " / :
line 4 end

Como posso passar isso para o KANNEL via bash usando o CURL? como enrolar root @ radius: / temp # cat test

#!/bin/bash
MSG='cat /temp/message.txt'
curl "http://127.0.0.1:13013/cgi-bin/sendsms?username=kannel&password=kannelpassword&to=03333333333&text=$MSG"

Mas diz que "curl: (3) Illegal characters found in URL"

Eu poderia ter usado o GAMMU , mas ele não está detectando o meu (teltonika g / 10 com serial modem, enquanto no kannel o modem está funcionando bem.

Existem outras sugestões sobre como enviar SMS usando o modem serial com o texto mostrado acima?

    
por Syed Jahanzaib 29.07.2015 / 20:08

1 resposta

1

Experimente --data-urlencode com -G .

curl "http://127.0.0.1:13013/cgi-bin/sendsms?username=kannel&password=kannelpassword&to=03333333333" -G --data-urlencode text@/temp/message.txt

Você pode alimentar os dados do stdin:

ls -l | curl "http://127.0.0.1:13013/..." -G --data-urlencode text@-

Ou especifique-o diretamente na linha de comando:

curl "http://127.0.0.1:13013/..." -G --data-urlencode text='!@#$%^&*()'
    
por 29.07.2015 / 22:15