<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
mapmyplan / laravel-slack-slash-command-slash-command example snippets
namespace App\SlashCommandHandlers;
use App\SlashCommand\BaseHandler;
use Spatie\SlashCommand\Request;
use Spatie\SlashCommand\Response;
class CatchAll extends BaseHandler
{
/**
* If this function returns true, the handle method will get called.
*
* @param \Spatie\SlashCommand\Request $request
*
* @return bool
*/
public function canHandle(Request $request): bool
{
return true;
}
/**
* Handle the given request. Remember that Slack expects a response
* within three seconds after the slash command was issued. If
* there is more time needed, dispatch a job.
*
* @param \Spatie\SlashCommand\Request $request
*
* @return \Spatie\SlashCommand\Response
*/
public function handle(Request $request): Response
{
return $this->respondToSlack("You have typed this text: `{$request->text}`");
}
}
return [
/*
* At the integration settings over at Slack you can configure the url to which the
* slack commands are posted. Specify the path component of that url here.
*
* For `http://example.com/slack` you would put `slack` here.
*/
'url' => 'slack',
/*
* The token generated by Slack with which to verify if a incoming slash command request is valid.
*/
'token' => env('SLACK_SLASH_COMMAND_VERIFICATION_TOKEN'),
/*
* The signing_secret generated by Slack with which to verify if a incoming slash command request is valid.
*/
'signing_secret' => env('SLACK_SIGNING_SECRET'),
/*
* Verify requests from slack with signing_secret signature
*/
'verify_with_signing' => false,
/*
* The handlers that will process the slash command. We'll call handlers from top to bottom
* until the first one whose `canHandle` method returns true.
*/
'handlers' => [
//add your own handlers here
//this handler will display instructions on how to use the various commands.
Spatie\SlashCommand\Handlers\Help::class,
//this handler will respond with a `Could not handle command` message.
Spatie\SlashCommand\Handlers\CatchAll::class,
],
];