]> git.proxmox.com Git - mirror_acme.sh.git/blame - notify/feishu.sh
the envs are moved to acmetest
[mirror_acme.sh.git] / notify / feishu.sh
CommitLineData
35d6da78 1#!/usr/bin/env sh
2
3#Support feishu webhooks api
4
5#required
6#FEISHU_WEBHOOK="xxxx"
7
8#optional
9#FEISHU_KEYWORD="yyyy"
10
11# subject content statusCode
12feishu_send() {
13 _subject="$1"
14 _content="$2"
15 _statusCode="$3" #0: success, 1: error 2($RENEW_SKIP): skipped
16 _debug "_subject" "$_subject"
17 _debug "_content" "$_content"
18 _debug "_statusCode" "$_statusCode"
19
20 FEISHU_WEBHOOK="${FEISHU_WEBHOOK:-$(_readaccountconf_mutable FEISHU_WEBHOOK)}"
21 if [ -z "$FEISHU_WEBHOOK" ]; then
22 FEISHU_WEBHOOK=""
23 _err "You didn't specify a feishu webhooks FEISHU_WEBHOOK yet."
24 _err "You can get yours from https://www.feishu.cn"
25 return 1
26 fi
27 _saveaccountconf_mutable FEISHU_WEBHOOK "$FEISHU_WEBHOOK"
28
29 FEISHU_KEYWORD="${FEISHU_KEYWORD:-$(_readaccountconf_mutable FEISHU_KEYWORD)}"
30 if [ "$FEISHU_KEYWORD" ]; then
31 _saveaccountconf_mutable FEISHU_KEYWORD "$FEISHU_KEYWORD"
32 fi
33
34 _content=$(echo "$_content" | _json_encode)
35 _subject=$(echo "$_subject" | _json_encode)
36 _data="{\"msg_type\": \"text\", \"content\": {\"text\": \"[$FEISHU_KEYWORD]\n$_subject\n$_content\"}}"
37
38 response="$(_post "$_data" "$FEISHU_WEBHOOK" "" "POST" "application/json")"
39
40 if [ "$?" = "0" ] && _contains "$response" "StatusCode\":0"; then
41 _info "feishu webhooks event fired success."
42 return 0
43 fi
44
45 _err "feishu webhooks event fired error."
46 _err "$response"
47 return 1
e8756482 48}