> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# LINE SDK for Laravel

> 將 LINE 官方 SDK 針對 Laravel 打造為易於使用的套件。提供 Webhook、Bot、通知、Socialite 四項功能。

## 概要

[revolution/laravel-line-sdk](https://github.com/invokable/laravel-line-sdk) 是將 LINE 官方 SDK 針對 Laravel 打造為易於使用的套件。

提供 Webhook 接收、Bot Facade、Laravel Notifications 整合以及 LINE Login(Socialite)四項功能。

<Info>
  本套件需 PHP 8.3 以上、Laravel 12.0 以上。
</Info>

## 安裝

```shell theme={null}
composer require revolution/laravel-line-sdk
```

## 設定

### LINE Developers Console

於 [LINE Developers](https://developers.line.biz/) 建立 Channel。

<Info>
  Messaging API Channel 已無法從 LINE Developers Console 直接建立。請先於 [LINE Official Account Manager](https://manager.line.biz/) 建立官方帳號,並啟用 Messaging API 使用權限。
</Info>

需建立兩個 Channel。

| Channel           | 需取得的資訊                                           |
| ----------------- | ------------------------------------------------ |
| **Messaging API** | Channel access token (long-lived)、Channel secret |
| **LINE Login**    | Channel ID、Channel secret                        |

### .env

```dotenv theme={null}
LINE_BOT_CHANNEL_TOKEN=
LINE_BOT_CHANNEL_SECRET=

LINE_LOGIN_CLIENT_ID=
LINE_LOGIN_CLIENT_SECRET=
LINE_LOGIN_REDIRECT=
```

### 發佈設定檔(選填)

```shell theme={null}
php artisan vendor:publish --tag=line-config
```

## 快速開始

以最短流程讓 Bot 運作的步驟。

<Steps>
  <Step title="建立新的 Laravel 專案">
    ```shell theme={null}
    laravel new line-bot
    cd ./line-bot
    composer require revolution/laravel-line-sdk
    ```
  </Step>

  <Step title="設定 .env">
    ```dotenv theme={null}
    LINE_BOT_CHANNEL_TOKEN=
    LINE_BOT_CHANNEL_SECRET=
    ```
  </Step>

  <Step title="發佈預設 Listener">
    ```shell theme={null}
    php artisan vendor:publish --tag=line-listeners
    ```

    會於 `app/Listeners/Line/` 產生 `MessageListener`。
  </Step>

  <Step title="部署至 Web 伺服器">
    要從 LINE 接收 Webhook,需要公開的 URL。本機伺服器無法接收。

    於 LINE Developers Console 設定 Webhook URL。

    ```
    https://example.com/line/webhook
    ```
  </Step>

  <Step title="加 Bot 為好友並測試">
    使用 Messaging API Channel 的 QR Code 加為好友。傳送訊息後,`MessageListener` 會原樣回覆(鸚鵡學舌)。
  </Step>
</Steps>

## 文件

<Columns cols={2}>
  <Card title="Webhook / Bot" href="/zh-TW/packages/laravel-line-sdk/bot" icon="webhook">
    透過 Webhook Controller 與 Bot Facade 進行訊息收發。
  </Card>

  <Card title="通知 Channel" href="/zh-TW/packages/laravel-line-sdk/notification" icon="bell">
    Laravel Notification System 與 LINE Messaging API 的整合。
  </Card>

  <Card title="Socialite(LINE Login)" href="/zh-TW/packages/laravel-line-sdk/socialite" icon="shield-check">
    使用 Socialite 實作透過 LINE Login 的 OAuth2 驗證。
  </Card>
</Columns>

## 參考連結

* GitHub: [invokable/laravel-line-sdk](https://github.com/invokable/laravel-line-sdk)
* Demo: [invokable/laravel-line-project](https://github.com/invokable/laravel-line-project)
* DeepWiki: [invokable/laravel-line-sdk](https://deepwiki.com/invokable/laravel-line-sdk)


## Related topics

- [LINE SDK for Laravel](/es/packages/laravel-line-sdk/index.md)
