لوحة التحكم فيها معالج بدء سريع مدمج يمشي معك بهذه الخطوات نفسها ويكتشف مباشرةً أول استدعاء API ناجح من تطبيقك. سجّل وسيستقبلك عند أول تسجيل دخول.
1 أنشئ حسابك المجاني
سجّل ببريدك، أو استخدم الدخول عبر Google أو Telegram. هذه الخطوة كلها — لا خطة تختارها ولا عدّاد تجربة. تفعيل التحقق بخطوتين فوراً (لوحة التحكم ← الأمان) اختياري لكنه مُستحسن.
2 أنشئ تطبيقاً
في لوحة التحكم، افتح Applications ← Create App وسمِّه. قيمتان تهمّانك من الآن فصاعداً:
- App ID — يعرّف تطبيقك في كل استدعاء API.
- App Secret — يوقّع ويشفّر الحركة بين تطبيقك وPWF Auth. أبقِه بعيداً عن المستودعات العامة.
3 ثبّت SDK وأضف الفحص
اختر لغتك. كل مقطع ينفّذ مسار الإنتاج كاملاً — تسجيل دخول بمفتاح ترخيص، ثم نبضُ اتصالٍ يُبقي الجلسة حيّة ويفرض مفتاح الإيقاف (حظر، إيقاف مؤقت، انتهاء، إلغاء).
C# (.NET)
// dotnet add package PWFAuth
using PWFAuth;
var client = new PwfClient(APP_SECRET);
client.SessionEnded += (s, e) => // ban / pause / expiry / revoke / offline
{
Console.WriteLine($"{e.ErrorCode}: {e.Message}");
Environment.Exit(0);
};
var login = await client.LoginAsync("XXXXX-XXXXX-XXXXX-XXXXX");
if (!login.Success) { Console.WriteLine(login.Message); return; }
client.StartHeartbeat(); // keeps the session alive AND enforces the kill switch
VB.NET
' dotnet add package PWFAuth
Dim client As New PwfClient(APP_SECRET)
AddHandler client.SessionEnded, Sub(s, e) ' ban / pause / expiry / revoke / offline
MessageBox.Show(e.Message)
Application.Exit()
End Sub
Dim login = Await client.LoginAsync("XXXXX-XXXXX-XXXXX-XXXXX")
If login.Success Then client.StartHeartbeat()
Python
# pip install pwfauth
import sys
from pwfauth import PwfClient
client = PwfClient(APP_SECRET)
client.on_session_ended = lambda code, msg: sys.exit(msg) # kill switch
login = client.login("XXXXX-XXXXX-XXXXX-XXXXX")
if not login.success:
sys.exit(login.message)
client.start_heartbeat() # keeps the session alive AND enforces the kill switch
Node.js
// npm install pwfauth
import { PwfClient } from 'pwfauth';
const client = new PwfClient(process.env.PWFAUTH_SECRET);
client.on('sessionEnded', ({ errorCode, message }) => { // kill switch
console.error(`${errorCode}: ${message}`);
process.exit(1);
});
const login = await client.login('XXXXX-XXXXX-XXXXX-XXXXX');
if (!login.success) { console.error(login.message); process.exit(1); }
client.startHeartbeat(); // keeps the session alive AND enforces the kill switch
تعمل بلغة أخرى؟ مولّد SDK في لوحة التحكم يكتب كود عميل جاهزاً للصق (C++ وJava وDart وPHP وغيرها) موصولاً مسبقاً بسرّ تطبيقك — ومرجع API يوثّق عقد HTTP الخام لكل ما عدا ذلك. كل الحِزم الرسمية مدرجة في صفحة الحِزم والأدوات.
4 أنشئ مفتاح ترخيص وجرّب
في لوحة التحكم، افتح License Keys ← Generate، اختر مدة (أو مدى الحياة)، وانسخ المفتاح. ألصقه في المقطع أعلاه مكان XXXXX-XXXXX-XXXXX-XXXXX، شغّل تطبيقك، وشاهد تسجيل الدخول ينجح.
ثم جرّب الجزء الممتع: اضغط Pause أو Ban على ذلك المفتاح في اللوحة وتطبيقك يعمل — سيلتقطها نبض الاتصال وسيُطلق معالج SessionEnded عندك خلال ثوانٍ. هذا هو مفتاح الإيقاف وهو يعمل.