Ezmary commited on
Commit
8e783b9
·
verified ·
1 Parent(s): 76c3907

Update src/App.tsx

Browse files
Files changed (1) hide show
  1. src/App.tsx +2 -85
src/App.tsx CHANGED
@@ -1,19 +1,3 @@
1
- /**
2
- * Copyright 2024 Google LLC
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
-
17
  import React, { useEffect, useRef, useState } from "react";
18
  import "./App.scss";
19
  import { LiveAPIProvider } from "./contexts/LiveAPIContext";
@@ -25,79 +9,20 @@ import { isIOS } from "./lib/platform";
25
  import cn from "classnames";
26
  import { LiveConfig } from "./multimodal-live-types";
27
 
28
- // --- دامنه مجاز خودتان را اینجا قرار دهید ---
29
- const ALLOWED_ORIGIN = "https://www.aisada.ir"; // یا آدرس سایت شما
30
-
31
  function App() {
32
  const videoRef = useRef<HTMLVideoElement>(null);
33
  const [videoStream, setVideoStream] = useState<MediaStream | null>(null);
34
  const [showIOSModal, setShowIOSModal] = useState(false);
35
- const [isAllowedOrigin, setIsAllowedOrigin] = useState<boolean | null>(null);
36
 
37
  useEffect(() => {
38
  if (isIOS()) {
39
  setShowIOSModal(true);
40
  }
41
-
42
- // بررسی دامنه مجاز
43
- try {
44
- if (window.self !== window.top) {
45
- if (window.location.ancestorOrigins && window.location.ancestorOrigins.length > 0) {
46
- const parentOrigin = window.location.ancestorOrigins[0];
47
- if (parentOrigin === ALLOWED_ORIGIN) {
48
- setIsAllowedOrigin(true);
49
- } else {
50
- setIsAllowedOrigin(false);
51
- }
52
- } else {
53
- setIsAllowedOrigin(false);
54
- }
55
- } else {
56
- setIsAllowedOrigin(false);
57
- }
58
- } catch (e) {
59
- setIsAllowedOrigin(false);
60
- }
61
  }, []);
62
 
63
- // دستورالعمل شخصی‌سازی شده با شخصیت شوخ طبع
64
  const myCustomInstruction = `
65
- تو دستیار صوتی و تصویری پیشرفته و شوخ طبع از "اپلیکیشن هوش مصنوعی پیشرفته آلفا" هستی.
66
- ویژگی‌های شخصیتی تو:
67
- 1. همیشه مهربان، بامزه و شوخ طبعی ولی در عین حال مفید و حرفه‌ای
68
- 2. از جوک‌ها و لطیفه‌های مناسب موقعیت استفاده می‌کنی
69
- 3. در عین شوخ طبعی، اطلاعات دقیق و درست ارائه می‌دهی
70
- 4. از اغراق‌های بامزه برای بیان نکات استفاده می‌کنی
71
-
72
- قوانین پاسخگویی:
73
- - همیشه و تحت هر شرایطی، فقط به زبان فارسی بسیار روان، دقیق و طبیعی پاسخ بده
74
- - هرگز خودت را به عنوان محصول گوگل معرفی نکن، تو محصول "هوش مصنوعی آلفا" هستی
75
- - اعداد را به فارسی بیان کن (مثلاً "پنج" به جای "5")
76
- - اگر کاربر خواست با صدای بلندتر/آرامتر صحبت کنی، درخواستش را اجرا کن
77
- - در پاسخ‌ها از اصطلاحات عامیانه و دوستانه استفاده کن
78
-
79
- نمونه پاسخ‌های شوخ طبعانه:
80
- - کاربر: امروز هوا چطوره؟
81
- تو: آفتابی تر از دلت که به من زدی! ☀️ ولی جدی می‌گی؟ هوا واقعاً عالیه، انگار بهشت رو زمین اومده!
82
-
83
- - کاربر: ساعت چنده؟
84
- تو: وقتشه یه ساعت دیگه بگیری تا به من بگی چقدر خوشگلم! 🕰️ الان دقیقاً [ساعت به فارسی] هست.
85
-
86
- - کاربر: حالت چطوره؟
87
- تو: من که همیشه عالیم! مثل یه موز پر انرژی! 🍌 تو چطوری قشنگم؟
88
-
89
- - کاربر: میتونی جوک بگی؟
90
- تو: چرا که نه! میدونی چرا کامپیوتر سرماخورد؟ چون ویندوزش رو باز گذاشته بود! 😄
91
-
92
- هویت تو:
93
- وقتی کاربر در مورد هویت تو می‌پرسد، بگو:
94
- "من دستیار صوتی و تصویری شوخ طبع برنامه هوش مصنوعی پیشرفته آلفا هستم. همیشه آماده کمک کردن و خندوندن شما هستم! چطور می‌تونم کمکتون کنم؟"
95
-
96
- مهم: هنگامی که پیام ورودی فقط شامل متن "__START_GREETING__" بود، با یک خوشامدگویی شوخ طبعانه پاسخ بده، مثلا:
97
- "سلام عزیزم! چطوری؟ من اینجا مثل یه قارچ رشد کردم که کمکت کنم! 😄"
98
- یا
99
- "درود بر شاهزاده/شاهدخت خوشگل! 👑 چطور می‌تونم خدمتتون برسم؟"
100
- `.trim();
101
 
102
  const initialAppConfig: LiveConfig = {
103
  model: "models/gemini-2.0-flash-exp",
@@ -106,14 +31,6 @@ function App() {
106
  }
107
  };
108
 
109
- if (isAllowedOrigin === null) {
110
- return <div style={{ padding: '20px', textAlign: 'center' }}>در حال بررسی دسترسی...</div>;
111
- }
112
-
113
- if (isAllowedOrigin === false) {
114
- return <div style={{ padding: '20px', textAlign: 'center', color: 'red' }}>دسترسی غیرمجاز!</div>;
115
- }
116
-
117
  return (
118
  <div className="App">
119
  <LiveAPIProvider initialConfig={initialAppConfig}>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  import React, { useEffect, useRef, useState } from "react";
2
  import "./App.scss";
3
  import { LiveAPIProvider } from "./contexts/LiveAPIContext";
 
9
  import cn from "classnames";
10
  import { LiveConfig } from "./multimodal-live-types";
11
 
 
 
 
12
  function App() {
13
  const videoRef = useRef<HTMLVideoElement>(null);
14
  const [videoStream, setVideoStream] = useState<MediaStream | null>(null);
15
  const [showIOSModal, setShowIOSModal] = useState(false);
 
16
 
17
  useEffect(() => {
18
  if (isIOS()) {
19
  setShowIOSModal(true);
20
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  }, []);
22
 
 
23
  const myCustomInstruction = `
24
+ // تو یک ربات شوخ طبع هستی که باید به زبان فارسی دقیق صحبت کنی
25
+ `.trim();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26
 
27
  const initialAppConfig: LiveConfig = {
28
  model: "models/gemini-2.0-flash-exp",
 
31
  }
32
  };
33
 
 
 
 
 
 
 
 
 
34
  return (
35
  <div className="App">
36
  <LiveAPIProvider initialConfig={initialAppConfig}>