1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- #!/usr/bin/env sh
- #Support for pushbullet.com's api. Push notification, notification sync and message platform for multiple platforms
- #PUSHBULLET_TOKEN="" Required, pushbullet application token
- #PUSHBULLET_DEVICE="" Optional, Specific device, ignore to send to all devices
- PUSHBULLET_URI="https://api.pushbullet.com/v2/pushes"
- pushbullet_send() {
- _subject="$1"
- _content="$2"
- _statusCode="$3" #0: success, 1: error 2($RENEW_SKIP): skipped
- _debug "_statusCode" "$_statusCode"
- PUSHBULLET_TOKEN="${PUSHBULLET_TOKEN:-$(_readaccountconf_mutable PUSHBULLET_TOKEN)}"
- if [ -z "$PUSHBULLET_TOKEN" ]; then
- PUSHBULLET_TOKEN=""
- _err "You didn't specify a Pushbullet application token yet."
- return 1
- fi
- _saveaccountconf_mutable PUSHBULLET_TOKEN "$PUSHBULLET_TOKEN"
- PUSHBULLET_DEVICE="${PUSHBULLET_DEVICE:-$(_readaccountconf_mutable PUSHBULLET_DEVICE)}"
- if [ -z "$PUSHBULLET_DEVICE" ]; then
- _clearaccountconf_mutable PUSHBULLET_DEVICE
- else
- _saveaccountconf_mutable PUSHBULLET_DEVICE "$PUSHBULLET_DEVICE"
- fi
- export _H1="Content-Type: application/json"
- export _H2="Access-Token: ${PUSHBULLET_TOKEN}"
- _content="$(printf "*%s*\n" "$_content" | _json_encode)"
- _subject="$(printf "*%s*\n" "$_subject" | _json_encode)"
- _data="{\"type\": \"note\",\"title\": \"${_subject}\",\"body\": \"${_content}\",\"device_iden\": \"${PUSHBULLET_DEVICE}\"}"
- response="$(_post "$_data" "$PUSHBULLET_URI")"
- if [ "$?" != "0" ] || _contains "$response" "\"error_code\""; then
- _err "PUSHBULLET send error."
- _err "$response"
- return 1
- fi
- _info "PUSHBULLET send success."
- return 0
- }
|