Как у вас (@) кто-то в расслабленном состоянии использует API уведомлений о слабом laravel? - PullRequest
1 голос
/ 08 января 2020

У меня есть действующая система уведомлений, которая может публиковать на канале в наших компаниях Slack. Однако все, что попадается, это просто текст. linkNames предполагает найти / связать имена пользователей в вашем контенте. Я вижу, что для него установлено значение «1», но оно не влияет на отображение в канале.

 namespace App\Notifications;

use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Notifications\Notification;
use Illuminate\Notifications\Messages\SlackMessage;
class Dd extends Notification
{
use Queueable;

/**
 * Create a new notification instance.
 *
 * @return void
 */
public function __construct()
{
    //
}

/**
 * Get the notification's delivery channels.
 *
 * @param  mixed  $notifiable
 * @return array
 */
public function via($notifiable)
{
    return ['slack'];
}


/**
 * Get the array representation of the notification.
 *
 * @param  mixed  $notifiable
 * @return array
 */
public function toArray($notifiable)
{
    return [
        //
    ];
}

/**
 * Get the Slack representation of the notification.
 *
 * @param  mixed  $notifiable
 * @return SlackMessage
 */
public function toSlack($slackComment)
{   
    $slackMessage = new SlackMessage();
    $slackMessage->linkNames();
    $slackMessage->from('Christopher');
    $slackMessage->to($slackComment->channel);
    $slackMessage->content("Harded coded for example @christopher <- this doesn't get linked to the user in slack but should");
     $slackMessage->info();
    //dd($slackMessage); // this shows that the linkedNames attribute has been set to "1"
    return $slackMessage;             
}

}

How it shows up in Slack

Это известные проблемы, несоответствие версий или я что-то упустил?

1 Ответ

2 голосов
/ 08 января 2020

https://api.slack.com/reference/surfaces/formatting#mentioning -users

Чтобы упомянуть пользователя в опубликованном приложением тексте, необходимо указать его идентификатор пользователя в следующем синтаксисе:

Hey <@U024BE7LH>, thanks for submitting your report.
...