@taoya785/flow-bark
Version:
Bark notification plugin for activepieces
54 lines (48 loc) • 1.45 kB
text/typescript
import {
createAction,
Property,
} from '@activepieces/pieces-framework'
import { auth } from '../auth'
import { buildBarkUrl, sendBarkNotification } from '../common/utils'
export const sendSimpleAction = createAction({
name: 'send_simple',
displayName: '发送简单推送',
description: '发送一个简单的Bark推送通知',
auth,
requireAuth: true,
props: {
message: Property.LongText({
displayName: '消息内容',
description: '要推送的消息内容',
required: true,
}),
sound: Property.StaticDropdown({
displayName: '提示音',
description: '推送的提示音',
required: false,
options: {
disabled: false,
options: [
{ label: '默认', value: 'default' },
{ label: '铃声', value: 'bell' },
{ label: '轻叮', value: 'chime' },
{ label: '新消息', value: 'newmail' },
{ label: '通知', value: 'newsflash' },
],
},
}),
},
async run({ auth, propsValue }) {
const { baseUrl, key } = auth
const { message, sound } = propsValue
// 构建推送URL
const pushUrl = buildBarkUrl(baseUrl, key, undefined, undefined, message)
// 构建参数
const params: Record<string, string> = {}
if (sound)
params.sound = sound
// 发送推送请求
const response = await sendBarkNotification(pushUrl, params)
return response.body
},
})