>We tried to use the CURL fn to POST json, but it's sent as form data and
>there seems no support for changing the Content-Type header. We switched to
>invoking curl in the shell.
Hi David
If you've got if fixed that way, great.
Just thought I'd comment and share the scripts / manner we use this, using
CURL, and mention one major gotcha I ran into that took me a few hours to solve
related with using CURL in Centos 7 on Asterisk 1.8.32.3, and then switching to
13.22.0.
This is what our dialplan logic looks like to get a UUID from a CURL call made
in a BASH file to our back-end application's API.
Dialplan:
same=>n,Set(curlResult=${SHELL(/usr/src/bash/getUUID.sh)})
---
BASH file:
getUUID.sh
---
#!/bin/bash
function jsonval {
temp=`echo $jsonResult | sed 's/\\\\\//\//g' | sed 's/[{}]//g' | awk -v
k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' | sed
's/\"\:\"/\|/g' | sed 's/[\,]/ /g' | sed 's/\"//g'`
echo ${temp##*|}
}
baseUrl=http://127.0.0.1/api/getUUID
jsonResult=$(curl --connect-timeout 16 --max-time 32 -s -X GET $baseUrl)
uuid=`jsonval`
echo -n $uuid
---
This returns our UUID (from the Java app) into the dialplan variable curlResult
which we then use further on in the dialplan.
The MAJOR gotcha in this above is the
>echo -n $uuid
line...
On Asterisk 1.8.32.3, this worked fine in the BASH script:
echo $uuid
However, on Asterisk 13.22.0, it did NOT work - the dialplan variable
curlResult stayed empty on any calls to the BASH script vir SET() in Asterisk.
Turns out that 13.22.0 does NOT like line feed / new line (\n) in ANY strings
that come back from BASH.
So I had to change the above line in the BASH file to
echo -n $uuid
so that the line-feed / newline was omitted from being returned to the Asterisk
13 instance.
Just some two cents worth.
Regards
Stefan
--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
Astricon is coming up October 9-11! Signup is available at:
https://www.asterisk.org/community/astricon-user-conference
Check out the new Asterisk community forum at: https://community.asterisk.org/
New to Asterisk? Start here:
https://wiki.asterisk.org/wiki/display/AST/Getting+Started
asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users