NetRelay API dokümantasyonu
HTTP, WebSocket ve MQTT ile I/O kaynaklarına erişin. Tüm örnekler yerel ağda çalışır; dışarıdan erişim zorunlu değildir.
Varsayılan erişim
Tarayıcı veya HTTP istemcisi ile http://192.168.1.50 adresine bağlanın. Kullanıcı: admin / Şifre: mltek
- • Temel kimlik doğrulama (HTTP Basic) desteklenir.
- • Yanıtlar JSON formatındadır; kuru kontak ve röle durumları inp/out alanlarında yer alır.
- • Ping watchdog ve olay tetikleyicileri web arayüzünden yapılandırılır; API ile durum okunur.
API kimlik doğrulama
General Settings ekranındaki API Authentication anahtarı, GET /ios ve GET /outk isteklerinde HTTP Basic Auth zorunluluğunu açar veya kapatır.
Kullanıcı adı ve şifre, cihazdaki Kullanıcı sayfasındaki bilgilerdir. Fabrika varsayılanı genelde admin / mltek değerleridir.
Enable (açık)
Web kullanıcısı ile HTTP Basic Auth zorunludur. Doğru kimlik bilgisi ile 200 ve JSON döner; yanlış veya eksik kimlikte 401 ve {"error":"authentication_required"} alınır.
Disable (kapalı)
Auth kapalıysa -u olmadan da aynı GET istekleri çalışır; kimlik bilgisi göndermeniz gerekmez.
curl örnekleri
Auth açıkken örnekler. admin ve mltek yerine cihazdaki kullanıcı adı ve şifreyi yazın. Auth kapalıysa -u admin:mltek kısmını çıkarabilirsiniz.
Durum oku
curl -u admin:mltek "http://192.168.1.50/ios"Çıkış 1’i 2 saniye aç
curl -u admin:mltek "http://192.168.1.50/outk?out=1&durum=1&gecikme=2"Header’ı elle yazmak (Base64)
curl -H "Authorization: Basic YWRtaW46bWx0ZWs=" "http://192.168.1.50/outk?out=1&durum=1&gecikme=2"YWRtaW46bWx0ZWs= değeri admin:mltek ifadesinin Base64 karşılığıdır. Kendi şifrenizi kullanıyorsanız değeri yeniden hesaplayın.
PowerShell
$user = "admin"
$pass = "mltek"
$pair = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes("${user}:${pass}"))
Invoke-RestMethod -Uri "http://192.168.1.50/ios" -Headers @{ Authorization = "Basic $pair" }
Invoke-RestMethod -Uri "http://192.168.1.50/outk?out=1&durum=1&gecikme=2" -Headers @{ Authorization = "Basic $pair" }Python
import requests
r = requests.get(
"http://192.168.1.50/outk",
params={"out": 1, "durum": 1, "gecikme": 2},
auth=("admin", "mltek"),
timeout=5,
)
print(r.status_code, r.text)Tarayıcıda http://admin:[email protected]/ios da Basic Auth gönderir; modern tarayıcılar bunu kısıtlayabilir. Entegrasyon için curl veya Python daha güvenilirdir.
HTTP uçları
API Örnek 1 — Sensör Okuma
HTTP GET isteği ile karttan JSON formatında sensör ve I/O durum verisi alın.
GET http://192.168.1.50/ios{"nereye":"ios","sensorData":"10","ipAdresi":"192.168.1.50","hostname":"MLTEK1","cihazID":"1000","inp1":"0","inp2":"0","inp3":"0","inp4":"0","out1":"0","out2":"0","out3":"0","out4":"0","tarih":"2023-07-26 13:52:23","uptime":"0 gün,2 saat,59 dakika,48 saniye","memory":242496,"ctemp":29}API Örnek 2 — Röle Kontrolü
Röleyi belirli süre boyunca aktifleştirip ardından eski durumuna döndürün.
GET http://192.168.1.50/outk?out=1&durum=1&gecikme=2{"ipAdresi":"192.168.1.51","hostname":"MLTEK1","cihazID":"1001","inp1":"0","inp2":"0","inp3":"0","inp4":"0","out1":"0","out2":"1","out3":"1","out4":"0"}API Örnek 3 — WebSocket Remote
WebSocket üzerinden röleleri gerçek zamanlı olarak açıp kapatın.
WS ws://192.168.1.50:3000{"nereye":"outRemote1","out":"out1","durum":"1","remote_key":"ORTAK_SIFRE"}API Örnek 4 — Socket Server Senkronizasyonu
Kartı client modunda socket server'a bağlayarak röle durumunu yönetin.
WS ws://192.168.1.50:3000{"nereye":"outespc","cihaz_id":"1001","out":"out1","out_value":1,"gecikme":0,"remote_key":"ORTAK_SIFRE"}MQTT entegrasyonu
NetRelay, yerel MQTT broker'a bağlanarak telemetri yayınlar ve komut topic'leri üzerinden röleleri günceller. Home Assistant, Node-RED veya SCADA sistemleri aynı broker üzerinden I/O kaynaklarını tüketebilir. Broker'ı LAN içinde tutarak trafiği buluta çıkarmadan uçtan uca yerel otomasyon kurabilirsiniz.
MQTT özellik sayfası →LSI / teknik terimler
kuru kontak iletimi · I/O kaynakları · MQTT entegrasyonu · ping watchdog · WebSocket remote mode · PoE · RS485