3 #Support weixin work webhooks api
5 #WEIXIN_WORK_WEBHOOK="xxxx"
8 #WEIXIN_WORK_KEYWORD="yyyy"
10 #`WEIXIN_WORK_SIGNING_KEY`="SEC08ffdbd403cbc3fc8a65xxxxxxxxxxxxxxxxxxxx"
12 # subject content statusCode
16 _statusCode
="$3" #0: success, 1: error 2($RENEW_SKIP): skipped
17 _debug
"_subject" "$_subject"
18 _debug
"_content" "$_content"
19 _debug
"_statusCode" "$_statusCode"
21 WEIXIN_WORK_WEBHOOK
="${WEIXIN_WORK_WEBHOOK:-$(_readaccountconf_mutable WEIXIN_WORK_WEBHOOK)}"
22 if [ -z "$WEIXIN_WORK_WEBHOOK" ]; then
23 WEIXIN_WORK_WEBHOOK
=""
24 _err
"You didn't specify a weixin_work webhooks WEIXIN_WORK_WEBHOOK yet."
25 _err
"You can get yours from https://work.weixin.qq.com/api/doc/90000/90136/91770"
28 _saveaccountconf_mutable WEIXIN_WORK_WEBHOOK
"$WEIXIN_WORK_WEBHOOK"
30 WEIXIN_WORK_KEYWORD
="${WEIXIN_WORK_KEYWORD:-$(_readaccountconf_mutable WEIXIN_WORK_KEYWORD)}"
31 if [ "$WEIXIN_WORK_KEYWORD" ]; then
32 _saveaccountconf_mutable WEIXIN_WORK_KEYWORD
"$WEIXIN_WORK_KEYWORD"
35 _content
=$
(echo "$_content" | _json_encode
)
36 _subject
=$
(echo "$_subject" | _json_encode
)
37 _data
="{\"msgtype\": \"text\", \"text\": {\"content\": \"[$WEIXIN_WORK_KEYWORD]\n$_subject\n$_content\"}}"
39 response
="$(_post "$_data" "$WEIXIN_WORK_WEBHOOK" "" "POST
" "application
/json
")"
41 if [ "$?" = "0" ] && _contains
"$response" "errmsg\":\"ok"; then
42 _info
"weixin_work webhooks event fired success."
46 _err
"weixin_work webhooks event fired error."