كيفية تثبيت OpenMeetings على CentOS 7

Apache OpenMeetings هو تطبيق مفتوح المصدر لعقد المؤتمرات عبر الإنترنت. هو مكتوب بلغة جافا ويدعم خوادم قاعدة بيانات متعددة. يوفر العديد من الميزات ، مثل مؤتمرات الصوت والفيديو ، ومشاركة الشاشة ، ومستكشف الملفات ، ونظام الإشراف على المستخدم ، والرسائل وجهات الاتصال الخاصة ، وتقويم متكامل لخطط الاجتماعات وغيرها الكثير. يمكنك أيضًا تسجيل جلسة مؤتمر. يوفر SOAP / REST API ومكونات إضافية متعددة للتكامل بسهولة مع Moodle و Jira و Joomla و Confluence والمزيد.

المتطلبات الأساسية

  • نسخة خادم Vultr CentOS 7 مع ذاكرة وصول عشوائي بسعة 4 غيغابايت على الأقل.
  • A المستخدم سودو .
  • أشار اسم المجال نحو الخادم.

في هذا البرنامج التعليمي ، سوف نستخدم 192.168.1.1كعنوان IP عام meetings.example.comولكونه اسم النطاق الموجه نحو مثيل Vultr. يرجى التأكد من استبدال كل تكرارات مثال عنوان IP واسم المجال بالحدث الفعلي.

قم بتحديث نظامك الأساسي باستخدام الدليل كيفية تحديث CentOS 7 . بمجرد تحديث نظامك ، تابع تثبيت Java.

قم بتثبيت Java

OpenMeetings مكتوب بلغة Java ، وبالتالي يتطلب Java Runtime Environment (JRE) للعمل. قم بتنزيل أحدث حزمة Oracle SE JDK 8 RPM المتاحة ، والتي تتضمن كلاً من JRE و JDK.

wget --header 'Cookie: oraclelicense=a' http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm

قم بتثبيت الحزمة التي تم تنزيلها.

sudo rpm -Uvh jdk-8u161-linux-x64.rpm

إذا تم تثبيت Java بنجاح ، فستتمكن من التحقق من إصدارها.

java -version

سترى الناتج التالي.

[user@vultr ~]$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

قبل أن يتسنى لنا مواصلة المضي قدما، فإننا سوف تحتاج إلى إعداد JAVA_HOMEو JRE_HOMEمتغيرات البيئة. ابحث عن المسار المطلق لـ JAVA القابل للتنفيذ في نظامك.

readlink -f $(which java)

سترى مخرجات مماثلة.

[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_161/jre/bin/java

الآن، تعيين JAVA_HOMEو JRE_HOMEمتغيرات البيئة وفقا لمسار دليل جافا.

echo "export JAVA_HOME=/usr/java/jdk1.8.0_161" >> ~/.bash_profile
echo "export JRE_HOME=/usr/java/jdk1.8.0_161/jre" >> ~/.bash_profile

تنفيذ bash_profileالملف.

source ~/.bash_profile

يمكنك الآن تشغيل echo $JAVA_HOMEالأمر للتأكد من تعيين متغير البيئة.

[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_161

تثبيت التبعيات

قم بتثبيت مكتبات ImageMagick و GhostScript.

sudo yum -y install epel-release
sudo yum -y install ImageMagick ghostscript

يوفر ImageMagick الدعم لتحميل الصور واستيرادها إلى السبورة. يمكّنك GhostScript من تحميل ملفات PDF إلى السبورة.

تحقق من إصدار ImageMagick و GhostScript للتأكد من تثبيتها بنجاح.

[user@vultr ~]$ identify -version
Version: ImageMagick 6.7.8-9 2016-06-16 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP

[user@vultr ~]$ ghostscript -v
GPL Ghostscript 9.07 (2013-02-14)
Copyright (C) 2012 Artifex Software, Inc.  All rights reserved.

فورثور ، سنحتاج أيضًا إلى تثبيت Apache OpenOffice أو LibreOffice على النظام. سوف تثبيت أي من هذه تمكين OpenMeetings لاستيراد الملفات في تنسيقات المستندات Office مثل .doc، .docx، .ppt، .pptx، أو .xlx. في هذا البرنامج التعليمي ، سنقوم بتثبيت Apache OpenOffice.

انتقل إلى الدليل المؤقت وقم بتنزيل Apache OpenOffice RPM.

cd /tmp
wget https://downloads.sourceforge.net/project/openofficeorg.mirror/4.1.5/binaries/en-US/Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz

استخرج الأرشيف وقم بتثبيت جميع حزم RPM.

tar xf Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz
cd en-US/RPMS
sudo rpm -Uvh *.rpm
sudo rpm -Uvh desktop-integration/openoffice4.1.5-redhat-menus-*.rpm

للتحقق مما إذا كان OpenOffice مثبتًا بشكل صحيح ويعمل ، اكتب openoffice4 -hسطر الأوامر. ستطبع نسختها ومساعدة قصيرة.

[user@vultr ~]$ openoffice4 -h
OpenOffice 4.1.5  415m1(Build:9789)

Usage: soffice [options] [documents...]

Options:

-minimized      keep startup bitmap minimized.
...

قم بتثبيت مستودع RPMFusion في نظامك لأنه يوفر حزم مُصممة مسبقًا لـ FFmpeg و Sound eXchange (SoX).

sudo rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm

قم بتثبيت FFmpeg و SoX.

sudo yum -y install ffmpeg sox

سيتيح FFmpeg و SoX تسجيل الاجتماع. كما أنها سوف تساعد في وسائل الإعلام استيراد ملفات مثل .avi، .flv، .movو .mp4إلى السبورة. تحقق من التثبيت عن طريق التحقق من إصدارات كل من FFmpeg و SoX.

[user@vultr ~]$ sox --version
sox:      SoX v14.4.1

[user@vultr ~]$ ffmpeg -version
ffmpeg version 2.8.13 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11)

قم بتثبيت PostgreSQL

يدعم OpenMeetings أنواعًا متعددة من خوادم قواعد البيانات ، مثل MySQL و PostgreSQL و Apache و Derby و Oracle. في هذا البرنامج التعليمي ، سنستخدم خادم PostgreSQL لاستضافة قاعدة بيانات OpenMeeting.

PostgreSQL هو نظام قاعدة بيانات علائقية للكائنات ومعروف باستقراره وسرعته. yumيحتوي المستودع الافتراضي على إصدار قديم من PostgreSQL ، لذا أضف مستودع PostgreSQL لأحدث إصدار من التطبيق في النظام.

sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm

قم بتثبيت خادم قاعدة بيانات PostgreSQL.

sudo yum -y install postgresql10-server postgresql10-contrib postgresql10 

تهيئة قاعدة البيانات.

sudo /usr/pgsql-10/bin/postgresql-10-setup initdb

قم بتشغيل خادم PostgreSQL وتمكينه من البدء تلقائيًا في وقت التمهيد.

sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10

قم بتغيير كلمة المرور لمستخدم PostgreSQL الافتراضي.

sudo passwd postgres

قم بتسجيل الدخول باسم مستخدم PostgreSQL.

sudo su - postgres

قم بإنشاء مستخدم PostgreSQL جديد لمستخدم OpenMeetings.

createuser openmeetings

يمكنك استخدام أي اسم مستخدم بدلاً من openmeetings. قم بالتبديل إلى غلاف PostgreSQL.

psql

قم بتعيين كلمة مرور للمستخدم الذي تم إنشاؤه حديثًا لقاعدة بيانات OpenMeetings.

ALTER USER openmeetings WITH ENCRYPTED password 'DBPassword';

استبدلها DBPasswordبكلمة مرور آمنة. إنشاء قاعدة بيانات جديدة لتثبيت OpenMeetings.

CREATE DATABASE openmeetings OWNER openmeetings;

اخرج من psqlالقشرة.

\q

قم بالتبديل إلى sudoالمستخدم.

exit

قم بتحرير pg_hba.confالملف لتمكين المصادقة المستندة إلى MD5.

sudo nano /var/lib/pgsql/10/data/pg_hba.conf

ابحث عن الأسطر التالية وقم بتغيير القيم في METHODالعمود من identإلى md5.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

بمجرد التحديث ، سيبدو التكوين على هذا النحو.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

احفظ الملف واخرج من المحرر. أعد تشغيل PostgreSQL حتى تصبح التغييرات سارية المفعول.

sudo systemctl restart postgresql-10

تثبيت OpenMeetings

حيث يتم تثبيت كافة التبعيات المطلوبة. قم بإنشاء مستخدم جديد لـ OpenMeetings. يوصى باستخدام مستخدم غير جذري لتشغيل OpenMeetings من أجل أمان الخادم.

 sudo adduser -b /var -s /sbin/nologin openmeetings

سيقوم الأمر أعلاه أيضًا بإنشاء الدليل الرئيسي openmeetingsللمستخدم في /var/openmeetings.

تحقق من صفحة تنزيل Apache OpenMeetings للحصول على رابط لأحدث إصدار متوفر. قم بتنزيل أرشيف OpenMeetings.

cd /tmp
wget http://www-us.apache.org/dist/openmeetings/4.0.1/bin/apache-openmeetings-4.0.1.tar.gz

استخرج الأرشيف في /var/openmeetingsالدليل.

sudo tar xf apache-openmeetings-4.0.1.tar.gz -C /var/openmeetings

وفر ملكية الملفات لمستخدم OpenMeetings الذي أنشأناه سابقًا.

sudo chown -R openmeetings:openmeetings /var/openmeetings

قبل أن نبدأ التطبيق ، سنحتاج إلى تعديل جدار الحماية للسماح بالمنافذ 5080و 1935.

sudo firewall-cmd --zone=public --permanent --add-port=5080/tcp
sudo firewall-cmd --zone=public --permanent --add-port=1935/tcp
sudo firewall-cmd --reload

يمكنك الآن بدء التطبيق.

sudo su -s /bin/bash -c 'cd /var/openmeetings/ && sh red5.sh' openmeetings

يمكنك الآن الوصول http://192.168.1.1:5080/openmeetingsفي متصفحك المفضل. سترى شاشة الترحيب مع تعليمات لتثبيت GhostScript.

كيفية تثبيت OpenMeetings على CentOS 7

نظرًا لأننا قمنا بالفعل بتثبيت GhostScript ، تابع الأمر أكثر. في الواجهة التالية ، سيُطلب منك تقديم تفاصيل خادم قاعدة البيانات. حدد نوع قاعدة البيانات " PostgreSql" وقدم تفاصيل خادم قاعدة البيانات التي قمت بتكوينها أثناء تثبيت PostgreSQL.

كيفية تثبيت OpenMeetings على CentOS 7

اضغط على Checkزر " " وستحصل على الرسالة: " Database check was successful". قدِّم تفاصيل حساب المشرف واسم المجموعة في الواجهة التالية.

كيفية تثبيت OpenMeetings على CentOS 7

تكوين الإعدادات الأساسية للتثبيت الخاص بك ؛ مثل السماح بالتسجيل الذاتي والتحقق من البريد الإلكتروني واللغة الافتراضية. أيضًا ، قدم تفاصيل خادم SMTP. إذا لم يكن لديك خادم SMTP جاهزًا ، فيمكنك أيضًا تقديم تفاصيل SMTP لاحقًا في لوحة تحكم المشرف.

كيفية تثبيت OpenMeetings على CentOS 7

سيطلب منك المسار إلى ثنائيات التطبيقات المختلفة. تقديم /usr/binكمسار لـ ImageMagick و FFmpeg و SoX. إذا كان التطبيق يوفر أخطاء للمسار الذي تم إدخاله ، فيمكنك استخدامه which <binary_name>للعثور على المسار المطلق إلى الثنائي. على سبيل المثال ، which ffmpegيجب أن تعطيك /usr/bin/ffmpegكمخرج. استخدم /opt/openoffice4كمسار إلى ثنائيات OpenOffice.

كيفية تثبيت OpenMeetings على CentOS 7

يمكنك تخطي التكوين على الواجهة التالية لأننا سنستخدم القيم الافتراضية. أخيرًا ، انقر فوق Finishالزر " " لتثبيت التطبيق وكتابة قاعدة البيانات.

تم تثبيت OpenMeetings الآن على الخادم الخاص بك. لجعله أكثر سهولة في الإنتاج ، سنقوم بإعداد Systemd لإدارة خادم OpenMeetings. سنقوم أيضًا بتهيئة Nginx باستخدام Let's Encrypt SSL باعتباره الوكيل العكسي الآمن لخدمة التطبيق.

إعداد Systemd

على الرغم من أنه يمكننا بسهولة بدء التطبيق وإيقافه باستخدام الأمر أعلاه ، فمن المستحسن إعداد وحدة خدمة Systemd لإدارة التطبيق. سيضمن هذا أيضًا بدء تشغيل الخدمة تلقائيًا في وقت التمهيد والفشل.

قم بإيقاف خادم OpenMeetings إما بالضغط على " Ctrl+C" أو بقتل غلاف openmeetingsالمستخدم.

sudo pkill -KILL -u openmeetings

قم بإنشاء ملف وحدة Systemd جديد لـ OpenMeetings Server.

sudo nano /etc/systemd/system/openmeetings.service

تعبئة الملف.

[Unit]
Description=OpenMeeting Service 
After=network.target

[Service]
Type=simple
User=openmeetings
WorkingDirectory=/var/openmeetings 
ExecStart=/var/openmeetings/red5.sh
Restart=always

[Install]
WantedBy=multi-user.target

قم بتشغيل خادم OpenMeetings وتمكينه من البدء تلقائيًا في وقت التمهيد.

sudo systemctl start openmeetings
sudo systemctl enable openmeetings

للتحقق من حالة الخدمة ، يمكنك تشغيل ما يلي.

sudo systemctl status openmeetings

سترى مخرجات مماثلة.

[root@vultr openmeetings]# sudo systemctl status openmeetings
● openmeetings.service - OpenMeeting Service
   Loaded: loaded (/etc/systemd/system/openmeetings.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2018-01-31 15:40:56 UTC; 38s ago
 Main PID: 10522 (java)
   CGroup: /system.slice/openmeetings.service
           └─10522 /bin/java -Dred5.root=/var/openmeetings -Djava.security.debug=failure -Xms256m...

Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.431 16603 343 o.a.o.c.r.Scope...se]
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.531 16703 124 o.a.o.c.r.Scope...ngs
Jan 31 15:41:34 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:34.421 21593 82 o.a.o.u.Version ...] -
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Jan 31 15:41:34 vultr.guest red5.sh[10522]: #                              Openmeetings is up ...  #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: #                      4.0.1 3795f14 2017-12-05T16...  #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: #                               and ready to use  ...  #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Hint: Some lines were ellipsized, use -l to show in full.

إعداد Nginx باعتباره وكيل عكسي

بشكل افتراضي ، يستمع OpenMeetings إلى المنفذ 5080. إذا لم يتم تشفير الاتصال بين المتصفح والخادم باستخدام SSL ، فسيتم إرسال تسجيلات الدخول والمعلومات الأخرى باستخدام نص عادي. قد يكون هذا تهديدًا محتملاً لأن شخصًا ما يتنصت على الشبكة قد يحصل على المعلومات. للتخفيف من هذه المشكلة ، سنقوم بإعداد Nginx باعتباره الوكيل العكسي الذي سيستمع إلى منفذ HTTPS الافتراضي وسيرسل جميع الطلبات إلى خادم OpenMeetings.

قم بتثبيت Nginx.

sudo yum -y install nginx

قم بتشغيل Nginx وتمكينه من البدء تلقائيًا في وقت التمهيد.

sudo systemctl start nginx
sudo systemctl enable nginx

قم بتثبيت Certbot ، وهو تطبيق العميل لـ Let's Encrypt CA.

sudo yum -y install certbot

قبل أن تتمكن من طلب الشهادات، سوف تحتاج للسماح الموانئ 80و 443أو معيار HTTPو HTTPSالخدمات من خلال جدار الحماية.

sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload

ملاحظة: للحصول على شهادات من Let's Encrypt CA ، يجب توجيه النطاق الذي سيتم إنشاء الشهادات من أجله إلى الخادم. إذا لم يكن الأمر كذلك ، قم بإجراء التغييرات اللازمة على سجلات DNS للمجال وانتظر DNS للنشر قبل إجراء طلب الشهادة مرة أخرى. يتحقق Certbot من سلطة المجال قبل تقديم الشهادات.

إنشاء شهادات SSL.

sudo certbot certonly --webroot -w /usr/share/nginx/html -d meetings.example.com

من المرجح أن يتم تخزين الشهادات التي تم إنشاؤها /etc/letsencrypt/live/meetings.example.com/. سيتم تخزين شهادة SSL كـ وسيتم تخزين fullchain.pemالمفتاح الخاص كـ privkey.pem.

تنتهي صلاحية شهادات التشفير في غضون 90 يومًا ، وبالتالي يوصى بإعداد التجديد التلقائي للشهادات باستخدام وظائف Cron.

افتح ملف مهمة كرون.

sudo crontab -e

أضف السطر التالي في نهاية الملف.

30 5 * * * /usr/bin/certbot renew --quiet

سيتم تشغيل وظيفة cron المذكورة أعلاه كل يوم الساعة 5:30 صباحًا. إذا كانت الشهادة ستنتهي صلاحيتها ، فسيتم تجديدها تلقائيًا.

الآن ، قم بتغيير ملف التكوين الافتراضي لـ Nginx لإزالة default_serverالخط.

sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf

قم بإنشاء ملف تكوين جديد لـ OpenMeetings Server.

sudo nano /etc/nginx/conf.d/meetings.example.com.conf

تعبئة الملف.

server {
    listen 80;
    server_name meetings.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443;
    server_name meetings.example.com;

    ssl_certificate           /etc/letsencrypt/live/meetings.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/meetings.example.com/privkey.pem;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    access_log  /var/log/nginx/openmeetings.access.log;

location / {
    proxy_pass            http://localhost:5080;        
    proxy_set_header    host $host;
    proxy_http_version  1.1;
    proxy_set_header upgrade $http_upgrade;         
    proxy_set_header connection "upgrade";     
    } 
}

تحقق من وجود أخطاء في ملف التكوين الجديد.

sudo nginx -t

إذا رأيت الإخراج التالي ، فإن التكوين خالي من الأخطاء.

[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

إذا تلقيت خطأ ما ، فتأكد من التحقق من المسار إلى شهادات SSL. أعد تشغيل خادم الويب Nginx لتنفيذ التغيير في التكوين.

sudo systemctl restart nginx

قبل أن تتمكن من البدء في استخدام التطبيق على موقع SSL الآمن ، ستحتاج إلى إجراء تغيير في التكوين في OpenMeetings. قم بتسجيل الدخول إلى لوحة التحكم الإدارية لـ OpenMeetings وانتقل إلى " Administration >> Configuration". في جدول الهوية والمفتاح والقيمة ؛ تجد application.base.url. قم بتغيير قيمته https://meetings.example.comوفقًا لاسم المجال الخاص بك. احفظ التكوين بالنقر فوق أيقونة الحفظ أعلاه.

كيفية تثبيت OpenMeetings على CentOS 7

أعد تشغيل خدمة OpenMeetings.

sudo systemctl restart openmeetings

الآن ، يمكنك التصفح https://meetings.example.comباستخدام متصفح الويب المفضل لديك وتسجيل الدخول لاستخدام التطبيق.

تهانينا ، تم تثبيت Apache OpenMeetings على الخادم الخاص بك. يمكنك دعوة أصدقائك والبدء في استخدام OpenMeetings للمؤتمرات عبر الإنترنت.



Leave a Comment

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد