laravel-notification-channels / bearychat
该软件包已废弃,不再维护。未建议替代软件包。
BearyChat通知通道适用于Laravel。
1.4.0
2020-09-13 14:32 UTC
Requires
- php: >=5.6.4
- elfsundae/laravel-bearychat: ~1.4
- illuminate/notifications: ~5.3|~6.0|~7.0|~8.0
Requires (Dev)
- mockery/mockery: ~1.0
- phpunit/phpunit: ~5.7|~6.0|~7.0|~8.0
README
该软件包使得使用BearyChat发送Laravel通知变得简单。
通道已弃用
BearyChat已停止使用。因此,此通道将不再接收更新,并被弃用。
内容
安装
您可以通过 Composer 安装此软件包。
$ composer require laravel-notification-channels/bearychat
软件包安装完成后,您需要通过在 config/app.php
文件中的 providers
数组中添加以下内容来注册服务提供者:
ElfSundae\BearyChat\Laravel\ServiceProvider::class,
此软件包基于 laravel-bearychat,如果您尚未这样做,可以发布配置文件。
$ php artisan vendor:publish --tag=bearychat
设置BearyChat服务
您可以在您的 BearyChat 团队账户中创建一个入站机器人,并阅读 有效负载格式。
使用方法
基本使用
现在,您可以在通知类内的 via()
方法中使用该通道。
<?php namespace App\Notifications; use Illuminate\Notifications\Notification; use NotificationChannels\BearyChat\BearyChatChannel; use ElfSundae\BearyChat\Message; class InvoicePaid extends Notification { public function via($notifiable) { return [BearyChatChannel::class]; } public function toBearyChat($notifiable) { return (new Message) ->text('foo') ->add('bar'); } }
您还可以使用BearyChat Client
创建通知的消息,并使用客户端的消息默认值来创建新的Message
实例。
public function toBearyChat($notifiable) { return bearychat('admin')->text('New VIP has been paid!'); }
- 有关BearyChat
Client
和Message
的更多详细信息,请阅读BearyChat PHP包的文档。- 有关
BearyChat
外观或bearychat()
辅助函数的更多详细信息,请阅读原始Laravel包的文档。
路由通知
要路由BearyChat通知到适当的机器人,请在您的可通知实体上定义一个routeNotificationForBearyChat
方法。
class User extends Authenticatable { use Notifiable; public function routeNotificationForBearyChat() { return 'https://hook.bearychat.com/...'; } }
您还可以在routeNotificationForBearyChat
方法中路由用户、频道或配置的客户端。
'@Elf'
将通知路由到用户"Elf"。'#iOS-Dev'
将通知路由到频道"iOS-Dev"。'http://webhook/url'
将通知路由到入站机器人。'Server'
将通知通过在您的配置文件config/bearychat.php
中命名为"Server"的客户端进行路由,并且该客户端的消息默认值将应用于传出通知消息。
可用的消息方法
text()
: (字符串) 消息内容。notification()
: (字符串) 消息通知。markdown(true)
: (布尔值) 表示消息应该按照markdown语法解析。add()
: (混合型) 向消息添加附件。参数可以是包含所有附件字段的payload数组。参数也可以是按照“文本”、“标题”、“图片”和“颜色”顺序排列的附件字段。addImage()
:($image, $desc = null, $title = null)
向消息添加图片附件。content()
:($text, $markdown, $notification)
或($text, $attachment_text, $attachment_title, $attachment_images, $attachment_color)
。remove()
: (混合型) 删除附件,可以传递附件索引的整数或索引数组。channel()
: (字符串) 消息应该发送到的频道。user()
: (字符串) 消息应该发送到的用户。to()
: (字符串) 消息应该发送到的目标(用户或频道)。目标可以以"@"开头用于向用户发送,频道的前缀"#"是可选的。
$message = (new Message) ->text('message content') ->notification('notification for this message') ->add('attachment content', 'attachment title', 'http://path/to/image', '#FF0000') ->to('@Boss');
使用上述消息实例的提醒将使用以下有效负载发送
{ "text": "message content", "notification": "notification for this message", "user": "Boss", "attachments": [ { "text": "attachment content", "title": "attachment title", "images": [ { "url": "http://path/to/image" } ], "color": "#FF0000" } ] }
更新日志
请参阅更新日志以获取更多最近更改的信息。
测试
$ composer test
安全性
如果您发现任何与安全性相关的问题,请通过电子邮件elf.sundae@gmail.com而不是使用问题跟踪器。
贡献
请参阅贡献指南以获取详细信息。
致谢
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。