name: 'Telegram Bot'
description: 'Telegram Bot API'
inputs:
message:
description: "Text"
required: false
default: "%23${{ github.run_number }} ${{ github.event.repository.name }}"
prefix:
description: "Message prefix"
required: false
default: ''
message_id:
description: "Message ID"
required: false
default: ''
# update:
# description: "Update message by ID"
# required: false
# default: 'false'
delete:
description: "Message ID to delete"
required: false
default: ''
status:
description: "Status message"
required: false
default: ''
chat_id:
description: "Chat ID"
required: true
default: ${{ secrets.TELEGRAM_TO }}
bot_token:
description: "Message ID"
required: false
default: ${{ secrets.TELEGRAM_TOKEN }}
outputs:
message_id:
description: "Message ID"
value: ${{ env.OUTPUT_MESSAGE_ID }}
runs:
using: "composite"
steps:
- name: Setup
run: echo "OUTPUT_MESSAGE_ID=" >> $GITHUB_ENV
shell: bash
# - name: Random Number Generator
# id: random-number-generator
# run: echo "random-number=$(echo $RANDOM)" >> $GITHUB_OUTPUT
# shell: bash
- name: Set GitHub Path
run: echo "$GITHUB_ACTION_PATH" >> $GITHUB_PATH
shell: bash
env:
GITHUB_ACTION_PATH: ${{ github.action_path }}
- name: Send message
if: inputs.message != '' && status == ''
run: sendMessage "${{ inputs.bot_token }}" ${{ inputs.chat_id }} "${{inputs.prefix}}${{ inputs.message }}"
shell: bash
- name: Delete message
if: inputs.delete != ''
run: deleteMessage "${{ inputs.bot_token }}" ${{ inputs.chat_id }} ${{ inputs.delete }}
shell: bash
- name: Send job status
if: inputs.status != ''
run: |
if [[ "${{ job.status }}" == "success" ]]; then
STATUS="✅"
elif [[ "${{ job.status }}" == "failure" ]]; then
STATUS="❌"
elif [[ "${{ job.status }}" == "cancelled" ]]; then
STATUS="⚠️"
else
STATUS="❓"
fi
sendMessage "${{ inputs.bot_token }}" ${{ inputs.chat_id }} "$STATUS ${{ inputs.status }}"
shell: bash