@extends('layouts.app') @section('title', 'LINEアカウント設定') @section('page-title', 'LINEアカウント設定') @section('page-subtitle') LINE公式アカウントの追加(連携)はこの画面で行います。下のチェックリストに沿ってひとつずつ進めてください(送信用アカウントの「作成」は別画面です)。 @endsection @push('styles') @endpush @section('content')
@if(session('success')) @endif @if(session('warning')) @endif

LINE公式アカウントを追加(連携)する — 確認用チェックリスト

ここは LINE公式アカウントと monaka をつなぐ作業です(メール・LINE配信で作った「送信用アカウント」に LINE を載せる工程)。LINE側の設定画面を開きながら進めてください。

  1. LINE公式アカウント管理画面manager.line.biz)で Messaging API を有効化し、Channel ID / Channel secret を控える(公式側の Webhook URL 欄は手順どおり空のままに)。
  2. この画面の Messaging API設定 に、公式アカウント管理画面で控えた Channel ID / secret を貼る。保存すると monaka は Messaging API 経由で Webhook URL を LINE に自動登録します(あわせて ステップ7:応答設定 を必ず実施)。
  3. 必要なら シナリオ設定(任意)。
  4. 経路分析・認証方式 を選ぶ(推奨は LINEログイン認証)。
  5. LINE Developers で同一プロバイダーに LINEログイン チャネルを作り、LINEログイン チャネル設定 の ID・secret を貼る(Messaging の値とは別)。
  6. 公式アカウントの 応答設定 で Webhook をオンにし、下の Webhook URL と一致するか確認。
  7. 4か所(Messaging の ID/secret とログインの ID/secret)が すべて別の値か確認してから 保存
@php($reqLine = in_array($account->type, ['line', 'both'], true)) {{-- 連携中のLINE公式アカウント --}}
連携中のLINE公式アカウント
@if(filled($account->line_bot_picture_url)) {{ filled($account->line_bot_display_name) ? $account->line_bot_display_name : $account->name }} @else @endif
@php($lineDisplay = filled($account->line_bot_display_name) ? $account->line_bot_display_name : null) @php($lineBasic = filled($account->line_bot_basic_id) ? $account->line_bot_basic_id : null)
{{ $lineDisplay ?? $account->name }} @if($lineBasic) ({{ $lineBasic }}) @endif
@if($lineDisplay)
monakaアカウント名: {{ $account->name }}
@endif
@if(filled($account->line_channel_id)) Channel ID {{ $account->line_channel_id }} @else 公式アカウントの Channel ID を保存すると、ここに表示されます。 @endif
@if((filled($account->line_bot_display_name) || filled($account->line_bot_basic_id)) && blank($account->line_bot_picture_url))

アイコンが緑の「LINE」のままのときは、LINE 側でプロフィール画像が未設定のことが多いです。公式アカウント管理画面で画像を設定したあと、ここで保存し直すと反映されます。

@endif
@if(filled($account->line_channel_id) && filled($account->line_channel_secret))
Messaging API の Channel ID / secret は保存済みです。
@endif @if(filled($account->line_webhook_last_error))
直近の保存での自動登録: {{ $account->line_webhook_last_error }}
@endif @if($account->line_webhook_synced_at && filled($account->line_webhook_last_error))
過去に Webhook 登録に成功した記録があります({{ $account->line_webhook_synced_at->timezone(config('app.timezone'))->format('Y-m-d H:i') }})。上のエラーを解消してから再度保存してください。
@elseif($account->line_webhook_synced_at && blank($account->line_webhook_last_error))
Webhook URL を LINE に登録済み(最終成功: {{ $account->line_webhook_synced_at->timezone(config('app.timezone'))->format('Y-m-d H:i') }})
@elseif(filled($account->line_channel_id) && filled($account->line_channel_secret) && blank($account->line_webhook_last_error) && !$account->line_webhook_synced_at)
まだ LINE への Webhook 自動登録の成功記録がありません。保存を試すか、下の「ステップ7」で手動確認してください。
@endif

ステップ7:LINE公式アカウントの「応答設定」(必須)

Webhook を「利用する」にすることは LINE 公式側の画面操作が必要です。monaka は保存時に Webhook URL を Messaging API へ送りますが、応答設定のオン/オフは次の手順で確認してください。

  1. LINE公式アカウント管理画面(manager.line.biz)にログインし、対象アカウントを開く。
  2. 設定 → 応答設定 を開く。
  3. Webhook利用する にする(オフのままだとイベントが届きません)。
  4. Webhook URL がこの画面の Webhook URL と同じか確認する(保存直後に自動反映されているはずです)。
  5. チャットの応答モードやあいさつメッセージなどは、運用に合わせて調整してください。
@csrf @method('PUT')

Messaging API設定

値は LINE公式アカウント管理画面 にログインし、設定 → Messaging API に表示される Channel ID / Channel secret をコピーして入力してください。

複数の LINE 公式アカウントを運用しているとき、どのアカウントか分かるようメモを残せます。

@error('line_messaging_memo')
{{ $message }}
@enderror
@error('line_channel_id')
{{ $message }}
@enderror
@error('line_channel_secret')
{{ $message }}
@enderror

保存すると、monaka から LINE の Messaging API にこの URL が自動登録されます。あわせて公式アカウント管理画面の 設定 → 応答設定 で Webhook を 利用する にしてください(ステップ7)。読み取り専用ですがコピーして公式側と照合できます。

Messaging API でメッセージ送信するときに使う値です。monaka では現状 保存のみで、送信処理への接続はこれから行います。

@error('line_access_token')
{{ $message }}
@enderror

シナリオ設定

各シナリオの登録ページから登録した場合は、それぞれのシナリオに登録されます。

@error('line_scenario_on_friend_id')
{{ $message }}
@enderror

既に登録されているシナリオの場合は、前回の登録日時に基づき、途中からステップ配信が開始されます。

@error('line_scenario_on_unblock_id')
{{ $message }}
@enderror

既存の友だちをこのシナリオに紐づける場合に指定します。

@error('line_scenario_legacy_friends_id')
{{ $message }}
@enderror

経路分析設定

@php($routeAuth = in_array($tmp = old('line_route_auth', $account->line_route_auth ?? 'line_login'), ['line_login', 'simple', 'image'], true) ? $tmp : 'line_login')

経路分析で利用する認証方式です。簡易認証・画像認証の実処理は今後の実装で有効化します。

@error('line_route_auth')
{{ $message }}
@enderror

LINEログイン チャネル設定

ここに入力する値は LINE Developers コンソールの「LINEログイン」チャネルです。公式アカウント管理画面の Messaging API 画面下部の LINE Developersコンソール リンクから開き、Messaging API チャネルと同じプロバイダー内に作成してください。

@error('line_login_channel_id')
{{ $message }}
@enderror
@error('line_login_channel_secret')
{{ $message }}
@enderror
@endsection @push('scripts') @endpush