Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z Bramką SMS
masset
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 3.02.2003

Ostrzeżenie: (0%)
-----


witam
mam pewien problem, a mianowicie ip mojego servera dostalo bana u ery i plusa
czy mogli byscie napisac jak przerobic ponizsze funckje tak aby przy wysylanie kozystaly one za
kazdym razem z innego proxy( pobierane z pliku postaci
adres:port
adres2:port
po kolei, gdy gdy skonczą sie adresy, skrypt przechodzi do poczatku)
i chodziło by jeszcze o to , ze jezeli proxy nie odpowie w ciagu poiwecmy 5 s to
skrypt przechodzi do kolejnego proxy i powtaza prube wyslania

Kod
## Funkcja dla Ery

function send_era ($numer,$tekst,$podpis) {

        $fp=fsockopen("boa.eragsm.com.pl",80,&$errno,&$errstr,3); //timeout=3s

        if (!$fp) {

                debug ("PROBLEM Z POLACZENIEM: $errno - $errstr");

                return 0;

        } else {

                fputs($fp,"GET /sms/sendsms.asp?sms=1 HTTP/1.0nn"); //wysylanie

                fgets($fp,128);fgets($fp,128);fgets($fp,128);fgets($fp,128);

                fgets($fp,128);fgets($fp,128);fgets($fp,128);fgets($fp,128);

                $tmp=fgets($fp,128);            //linia DZIEWIATA

                $tmp=explode(" ",$tmp);

                $cookie=substr($tmp[1],0,-1);   //wartosc COOKIE

                debug ("cookie: $cookie");

                $tmp=fread($fp,12000);          // pobranie strony

                $tmp=strstr ($tmp,"name="Code" value="");

                $tmp=explode("rn",$tmp);

                debug ("Linia z kodem: $tmp[0]");

                $code=substr($tmp[0],19,-3);    //wartosc CODE

                debug ("Code: $code");

                fclose($fp);



                #powtorne polaczenie w celu wyslania

                $fp=fsockopen("boa.eragsm.com.pl",80,&$errno,&$errstr,3); //timeout=3s

                if (!$fp) {

                        debug ("PROBLEM Z POLACZENIEM : $errno - $errstr");

                        return 0;

                } else {

                        $rozmiar_tekstu=strlen($tekst);

                        $rozmiar_podpisu=strlen($podpis);

                        if ($rozmiar_tekstu+$rozmiar_podpisu>125) { // limit 125

                        znakow

                                $tekst=substr($tekst, 0, 125-$rozmiar_podpisu-3);

                                $tekst=$tekst."...";

                        }

                        $tekst=znaki_spec($tekst);

                        $podpis=znaki_spec($podpis);

                        $post="bookopen=&numer=$numer&ksiazka=&message=$tekst&podpis=$podpis&kontakt=&code=$code&Nadaj=Nadaj";



                        $size=strlen($post);

                        debug ("Wysylam pakiet: $post");

                        debug ("Wielkosc pakietu: $size");

                        fputs($fp,"POST /sms/sendsms.asp HTTP/1.0nCookie:

                        $cookienContent-type: application/x-www-form-urlen

codednContent-length: $sizenn$postn");

                        $tmp=fread($fp,6500); // pobranie strony po wyslaniu

                        if (strpos($tmp, "11 wiadomo")) $status=1;

                        if (strpos($tmp, "Na ten numer GSM wys")) $status=2;

                        fclose($fp);

                        }



        debug("Status: $status");

        return $status;

        }

}















## Funkcja dla Plus'a

function send_plus ($numer,$tekst,$podpis) {

        $fp=fsockopen("www.text.plusgsm.pl",80,&$errno,&$errstr,3); //timeout=3s

        if (!$fp) {

                debug ("PROBLEM Z POLACZENIEM: $errno - $errstr");

                return 0;

        } else {

                $rozmiar_tekstu=strlen($tekst);

                $rozmiar_podpisu=strlen($podpis);

                if ($rozmiar_tekstu+$rozmiar_podpisu>617) { // limit 617 znakow

                        $tekst=substr($tekst, 0, 617-$rozmiar_podpisu-3);

                        $tekst=$tekst."...";

                }

                $n_pfx = substr($numer, 0, 3);

                $n_num = substr($numer, 3, 6);

                $tekst=znaki_spec($tekst);

                $podpis=znaki_spec($podpis);

                $post="tprefix=$n_pfx&numer=$n_num&odkogo=$podpis&tekst=$tekst";

                $size=strlen($post);

                debug ("Wysylam pakiet: $post");

                debug ("Wielkosc pakietu: $size");

                fputs($fp,"POST /sms/sendsms.php HTTP/1.0nContent-type:

                application/x-www-form-urlencodednContent-length: $s

izenn$postn");

                $tmp=fread($fp,6500); // pobranie strony po wyslaniu

                if (strpos($tmp, "SMS zosta")) $status=1;

                if (strpos($tmp, "SMS nie zosta")) $status=2;

                fclose($fp);



        debug("Status: $status");

        return $status;

        }

}
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 09:40