Programare

Laravel WebSocket SMS Gateway Android App

April 02, 2025
Francisc Lz.
1 an în urmă

Trimiterea în timp real a mesajelor SMS dintr-o aplicație web Laravel către un telefon Android

Prezentare generală

Acest proiect permite trimiterea în timp real a mesajelor SMS dintr-o aplicație web Laravel către un telefon Android. Aplicația Laravel transmite mesaje prin WebSocket, iar aplicația Android ascultă aceste evenimente, trimițând automat mesajele SMS către numerele specificate.

Cum funcționează

  1. Backend Laravel:
  • Utilizează WebSocket-urile Laravel Reverb pentru a trimite mesaje în timp real.
  • Declansează un eveniment care conține numărul de telefon al destinatarului și mesajul.
  • Mesajul WebSocket este transmis către dispozitivul Android conectat.

  1. Aplicație Android:
  • Ascultă evenimentele WebSocket de la serverul Laravel.
  • Analizează mesajul primit și extrage numărul de telefon și conținutul SMS-ului.
  • Trimite SMS-ul folosind funcționalitatea implicită de mesagerie a dispozitivului.
  • Afișează starea conexiunii WebSocket și ultimele 3 mesaje primite în interfața aplicației.
  • Afișează o notificare de sistem atunci când un SMS este trimis.
  • Rulează în fundal.

Caracteristici

  • Comunicare WebSocket în timp real: Aplicația menține o conexiune WebSocket cu serverul Laravel.

  • Trimitere automată de SMS-uri: Telefonul trimite automat un SMS atunci când primește un eveniment.

  • Sistem de notificări: Utilizatorii sunt notificați atunci când un SMS este trimis.

  • Actualizări ale interfeței aplicației: Aplicația afișează ultimele trei mesaje primite prin WebSocket.

  • Conexiune WebSocket persistentă: Asigură că aplicația rămâne conectată în fundal.

Detalii tehnice

Configurare Laravel:

  • Laravel 11 cu WebSocket Reverb și Livewire.
  • Difuzare de evenimente pe canal.
  • WebSocket Reverb pentru comunicare în timp real.

Aplicația Android:

  • Construită cu Kotlin în Android Studio.

  • Utilizează clientul WebSocket OkHttp pentru a menține conexiunea în timp real.

  • Rulează ca un serviciu în prim-plan pentru a menține WebSocket-ul activ.

  • Utilizează BroadcastReceiver pentru a actualiza interfața cu mesaje noi.

  • Implementează permisiuni în timpul execuției pentru trimiterea SMS-urilor.

Cerințe de sistem

  • Laravel Server: PHP 8+, Laravel 11, Reverb WebSockets.

  • Android Phone: Rulează Android 7+ cu capacitate de trimitere SMS.

  • Conexiune la internet: Necesară pentru comunicarea WebSocket.