'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjA2OWZlZGJiLTk2ZDctNGU4MC1iMDA0LWFmZDZjMmU4YmZkZiIsImxhc3RfcGFzc3dvcmRfY2hhbmdlIjoxNzUwNjYwODczLCJleHAiOjE3NTQ3NTcxMDR9.qAQF8XDOU8NRz5vSiFlQfnrj8dhGhJ5uvJqjblQWmr8', 'Cookie' => 'x-ap=eu-central-1; acw_tc=0a03e56c17521661095906021e3cacb270c127c80eb3a20489a465ab4beae1', ])->post('https://chat.qwen.ai/api/v2/chat/completions?chat_id=7ce2a60a-2b40-4ae8-8536-0cd346642de3', [ 'stream' => false, 'incremental_output' => true, 'chat_id' => '7ce2a60a-2b40-4ae8-8536-0cd346642de3', 'chat_mode' => 'normal', 'model' => 'qwen3-235b-a22b', 'messages' => [ [ 'role' => 'user', 'content' => 'یه جمله انگیزشی بده که خاص، کوبنده و غیرکلیشه‌ای باشه. نه مثل بقیه.', 'user_action' => 'chat', 'files' => [], 'timestamp' => 1752165316, 'models' => ['qwen3-235b-a22b'], 'chat_type' => 't2t', 'feature_config' => [ 'thinking_enabled' => false, 'output_schema' => 'phase' ], 'extra' => [ 'meta' => [ 'subChatType' => 't2t' ] ], 'sub_chat_type' => 't2t', 'parent_id' => 'df0a0c91-53d5-4a04-b5da-b8ac53d6d821' ] ], 'timestamp' => 1752165316 ]); // Get the response $responseData = $response->json(); $content = $responseData['data']['choices'][0]['message']['content']; $ai = new ai(); // Or use your correct namespace $ai->key = 'angizeh'; // Assuming you fixed 'kay' to 'key' in migration $ai->prompt = 'فقط یک جمله کوتاه انگیزشی بگو'; $ai->response = $content; $ai->save(); dd($ai); }); Route::post('attendance/enter', function (Request $request) { // return $request; // 32.6504751, 51.6936045 $user_identity = $request->input('name'); setcookie('user_identity', $user_identity, time() + (60 * 60 * 24 * 365 * 5), "/"); $userLat = $request->input('latitude'); $userLng = $request->input('longitude'); $officeLat = 32.6504751; $officeLng = 51.6936045; if (!$userLat || !$userLng) { return response()->json(['error' => 'مختصات دریافت نشد.'], 422); } $attendance = Attendance::where('user_identity', $user_identity) ->whereNull('exited_at') ->latest('entered_at') ->first(); if ($attendance) { $attendance->exited_at = now(); $attendance->exit_location = ['lat' => $userLat, 'lng' => $userLng]; $attendance->ip_exit = $userLng; $attendance->distance_exit = $request->input('distance'); $attendance->save(); return redirect()->back()->with('message', [ 'color' => '#3b82f6', 'text' => 'خروج با موفقیت ثبت شد.', ]); } else { $attendance = new Attendance(); $attendance->user_id = 0; $attendance->user_identity = $user_identity ?? ''; $attendance->distance = $request->input('distance'); $attendance->ip_address = $request->ip(); $attendance->entered_at = now(); $attendance->entry_location = ['lat' => $userLat, 'lng' => $userLng]; $attendance->office_location = ['lat' => $officeLat, 'lng' => $officeLng]; $attendance->save(); return redirect()->back()->with('message', [ 'color' => '#22c55e', 'text' => 'ورود با موفقیت ثبت شد.', ]); } }); Route::post('/pplain', function (Request $request) { //functions function savedb($d) { DB::table('tst')->insert([ 'data' => json_encode($d), ]); } function sendbot($chatid, $mssg) { // ارسال به پیوی تلگرام $sent = Http::get("https://api.wwwapp.ir/telegran_send.php", [ 'botToken' => "7467099619:AAF2V6yYcbAb8oSIRSCyH5i2GKfdWVO3a7k", 'chatId' => $chatid, 'message' => $mssg, 'parse_mode' => 'Markdown' ]); } $data = $request->all(); savedb($data); $message = ""; $aclist = [ 'updated' => '🔄', 'created' => '🆕', // 'urgent'=>'🟥', // 'high'=>'🟧', // 'medium'=>'🟨', // 'low'=>'🟩', // 'none'=>'⚪' ]; //create message if ($data['event'] == 'project') { $prjlead = $data['data']['project_lead'] ?? ""; $action = $data['action'] ?? ""; if ($prjlead != "" && $action != "") { $desc = "\nتوضیحات:\nعملیات ({$action}) توسط کاربر ({$prjlead}) انجام شده است."; } !empty($data['action']) && $message .= "{$aclist[$data['action']]}\n"; !empty($data['data']['name']) && $message .= "{$data['data']['name']} "; if (!$data['data']['priority'] == 'none') !empty($data['data']['priority']) && $message .= "({$data['data']['priority']})"; !empty($desc) && $message .= $desc; !empty($data['data']['updated_at']) && $message .= "\n" . Jalalian::fromCarbon(Carbon::parse($data['data']['updated_at']))->format('Y/m/d') . "\n"; !empty($data['description_text']) && $message .= "\n{$data['description_text']}"; } elseif ($data['event'] == 'issue') { if (isset($data['activity'])) { $field = $data['activity']['field'] ?? "نامشخص"; $actor = $data['activity']['actor']['last_name'] ?? "نامشخص"; $oldvalue = $data['activity']['old_value'] ?? "نامشخص"; $newvalue = $data['activity']['new_value'] ?? "نامشخص"; if(( $field=='start_date' || $field == 'target_date' ) && $field != 'نامشخص'){ if(strtotime($field)!= 'false'){ $oldvalue = Jalalian::fromCarbon(Carbon::parse($oldvalue))->format('Y/m/d'); $newvalue = Jalalian::fromCarbon(Carbon::parse($newvalue))->format('Y/m/d'); } } if ($field == 'sort_order' || $field == 'state_id') { return; } $desc = "کاربر ({$actor}) مقدار ({$field}) را از ({$oldvalue}) به ({$newvalue}) تغییر داد."; } else { $desc = "وظیفه در سایت چک شود."; } !empty($data['data']['start_date']) && $startdate = Jalalian::fromCarbon(Carbon::parse($data['data']['start_date']))->format('Y/m/d'); !empty($data['data']['target_date']) && $enddate = Jalalian::fromCarbon(Carbon::parse($data['data']['target_date']))->format('Y/m/d'); !empty($data['action']) && $message .= "{$aclist[$data['action']]}"; !empty($data['data']['name']) && $message .= "{$data['data']['name']} "; if ($data['data']['priority'] != "none") { $message .= "({$data['data']['priority']})"; } $message .= "\n" . $desc; !empty($data['data']['assignees']) && $message .= "\n" . implode(', ', array_column($data['data']['assignees'], 'last_name')) . "\n"; if (!empty($startdate) && !empty($enddate)) { $message .= "{$startdate} ➡️ {$enddate}"; } elseif (!empty($startdate)) { $message .= "تاریخ شروع مهلت پروژه: {$startdate}"; } elseif (!empty($enddate)) { $message .= "تاریخ اتمام مهلت پروژه: {$enddate}"; } // !empty($data['data']['target_date']) && $message .= "تاریخ اتمام مهلت پروژه: ".Jalalian::fromCarbon(Carbon::parse($data['data']['target_date']))->format('Y/m/d') ."\n"; } $assignees = array_column($data['data']['assignees'], 'email'); $members = User::select('email', 'chatid')->get(); $gpid = -4742642674; if (empty($assignees)) { sendbot($gpid, $message); } else { sendbot($gpid, $message); foreach ($assignees as $item) { foreach ($members as $member) { if ($member->email == $item) { //sent message sendbot($member->chatid, $message); } } } } return response()->json(['status' => 'ok'], 200); });