# Laravel-Linebot ###### tags: `Laravel` # 1. 開啟你的VSCODE專案 [DahisC](@7S-28sLnTNeRmfI4wFzcPg)提供的乾淨檔案👇 https://github.com/DahisC/laravel7-linebot ``` phpartisan serve ``` 結果如下 php artisan serve Laravel development server started: http://127.0.0.1:8000 # 2. 下載使用ngrok [ngrok下載位置](https://ngrok.com/) * ## 當免費仔下載他,解壓縮到桌面後開啟  * ## 在最後輸入連結網址  你可以在此頁面最後寫上 ``` ngrok http 8000 ``` 或者 ``` ngrok http http://127.0.0.1:8000/ ``` 後ENTER執行 * ## 取得https://網址 複製https://...ngrok.io 網址 等等加到後面的賴機器人  [如果想了解ngrok可以看我](https://5xruby.tw/posts/easy-ngrok-by-nginx-ssh-tunnel) # 3. 建立Line機器人 * ## 登入[line busniess](https://tw.linebiz.com/login/)  * ## 建立機器人  * ### 填寫基本資料>確認   * ###  * ###  * ## 建立完成  # 4. 設定line機器人 * ## 回應模式設定  * ## 若無WEBHOOK則,點選啟用Messaging API * 點選 啟用Messaging API  * 建立服務提供者  * 點選確定略過隱私權政策及服務條款  * 點選確認啟用Messaging API  * ## 填入Webhook網址 就是剛剛複製的網址https://...ngrok.io 後綴 .ngrok.io/api/line  * ## 點選 由LINE Developers進行其他設定  * ## 點選右上角頭像  * ## 點選 LINE Developers Console  * ## 點選稍早創建的服務提供者名稱  * ## 點選機器人  * ## 點選Message API  * ## 驗證webhook (Verify)  * ## 點選啟用 Use Webhook  * ## 取得Channel access token 複製他  # 5. VScode建置 * ## api.php 設定路由 ```php= <?php use App\Http\Controllers\LineController; use Illuminate\Http\Request; use Illuminate\Support\Facades\Route; Route::middleware('auth:api')->get('/user', function (Request $request) { return $request->user(); }); Route::post('/line','LineController@index'); ``` * ## create LineController ``` php artisan make:controller LineController ``` * ## LineController程式碼 ```php= <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Http; class LineController extends Controller { // public function index(Request $request) error_log(json_encode('1')); return response('ok','200'); } ``` * ## 修改.env ``` LINE_CHANNEL_ASCCES_TOKEN=放剛剛複製的TOKEN ``` 重新再跑一次php artisan serve~ * ## 驗證webhook (Verify) 會出現"成功"  # 7. 發送訊息至LINE機器人  # 參考資料:  https://www.oxxostudio.tw/articles/201804/line-bot-apps-script.html
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up