Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> SMS w PHP
PiotrGP
post 29.03.2013, 17:36:57
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 23.03.2013

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


Witam,

Tematów może było wiele na ten temat. lecz - niestety- są to stare posty i informacje w nich zawarte nie są aktualne. Wiele pozmieniało się na polskim rynku w telefonii mobilnej :-)
Szukam DZIAŁAJĄCEGO SMS API, darmowego /może być z limitem wysłanych smsów, tylko do sieci np. PLUS/.

Znalazłem taki skrypt:

  1. <?php
  2. // w zmiennej $dane podajemy to co chcemy wysłać do pliku
  3. $dane = 'tprefix=601&
  4. numer=108107&
  5. odkogo=nadawca&
  6. tekst=treść wiadomości&
  7. charno=20&
  8. smsno=1';
  9.  
  10. //adres pliku php na który mają zostać wysłane dane
  11. $adresPliku = 'http://www.text.plusgsm.pl/sms/sendsms.php';
  12.  
  13. //chcemy wysłać 10 sms'ów więc powtarzamy pętle 10 razy
  14. for ($i=0; $i<10; $i++){
  15. $c = curl_init();
  16. curl_setopt($c, CURLOPT_URL, $adresPliku);
  17.  
  18. // ustawiamy CURL_POST na 1 co oznacza ze wyślemy dane metoda POST
  19. curl_setopt($c, CURL_POST, 1);
  20.  
  21. // ustawiamy CURLOPT_POSTFIELDS aby wysłał dane zawarte w zmiennej $dane
  22. curl_setopt($c, CURLOPT_POSTFIELDS, $dane);
  23. curl_exec($c);
  24. curl_close($c);
  25. }
  26. ?>


Nietstety, to nie działa. Link z $adresPliku jak najbardziej jest aktualny lecz opis tej funkcji fatalny.

Mam też taki kod w html - formularz:

  1. <form action="smsocena.php" method="post">
  2. Nadawca:<br/>
  3. <input type="text" name="nadawca" /><br/>
  4. Numer:<br/>
  5. <input type="text" name="numer" /><br/>
  6. Wiadomosc:<br/>
  7. <textarea name="tresc" >Wpisz tresc...</textarea>
  8. <input type="submit" name="submit" value="Wyślij" />
  9. </form>
  10.  


Napiszę tak. Za pomocą tego formularza, chciałbym wysyłać smsy. Stąd też potrzeba jakiegoś API / skryptu - ale działającego. Wiem, że szukanie nie boli. Wieżcie mi lub nie, nawet Wujek Google nie jest w stanie pomóc do końca ponieważ, jak pisałem wcześniej, nie mogę znaleźć darmowego, działającego API/skrytpu.

Oczywiście jest dobre SMSAPI na www.smsapi.pl leczx trzeba wykupić abonament :/
Jest też apisms.pl -> tam jest nieco niższy abonament ale JEST.
Ja potrzebujęczegoś darmowego. Muszę zrobić pracę i tam zamieścić formularz z powiadomieniami SMS - może być z lmitem, nie przeszkadza mi to. Ja mam to tylko pokazać, że działa i że jest coś takiego możliwe ale nie będę wykupował pakietu na rok czasu ponieważ pokaz będzie trwał z 5-10 minut.

Proszę uprzejme o pomoc.

Ten post edytował PiotrGP 29.03.2013, 17:38:03
Go to the top of the page
+Quote Post
markonix
post 29.03.2013, 17:52:43
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


http://promosms.pl/

Masz okres darmowy, testowy.


--------------------
Go to the top of the page
+Quote Post
Monter08
post 29.03.2013, 17:58:12
Post #3





Grupa: Zarejestrowani
Postów: 237
Pomógł: 22
Dołączył: 16.09.2010
Skąd: Lubaczów

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


Jeżeli chcesz wysyłać smsy tylko do plusa to wystarczy wysłać treść smsa pod adres mailowy 48xxxxxxxxx@text.plusgsm.pl.
Go to the top of the page
+Quote Post
PiotrGP
post 29.03.2013, 18:03:59
Post #4





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 23.03.2013

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


Cytat(markonix @ 29.03.2013, 17:52:43 ) *
http://promosms.pl/

Masz okres darmowy, testowy.


Jasne ale gdzie mogę pobrać kod do PHP do obsługi tego API? Już zarejestrowałem się
Go to the top of the page
+Quote Post
Monter08
post 29.03.2013, 18:06:35
Post #5





Grupa: Zarejestrowani
Postów: 237
Pomógł: 22
Dołączył: 16.09.2010
Skąd: Lubaczów

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


Cytat(PiotrGP @ 29.03.2013, 18:03:59 ) *
Jasne ale gdzie mogę pobrać kod do PHP do obsługi tego API? Już zarejestrowałem się

Coś słabo patrzyłeś, mi się od razu rzuciło w oczy.
Go to the top of the page
+Quote Post
PiotrGP
post 29.03.2013, 18:11:03
Post #6





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 23.03.2013

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


Cytat(Monter08 @ 29.03.2013, 17:58:12 ) *
Jeżeli chcesz wysyłać smsy tylko do plusa to wystarczy wysłać treść smsa pod adres mailowy 48xxxxxxxxx@text.plusgsm.pl.


Mogą być tylko do sieci PLUS. Nie ma znaczenia. Chcę tylko zademonstrować działanie takich bramek w PHP.

Rozumiem, że mam zrobić prosty fomrularz np. w HTML i wstawić to: 48xxxxxxxxx@text.plusgsm.pl.
W formularzu miałyby być pola;
Imię i nazwisko adresata
Imię i nazwisko np. wychowawcy
Temat istu
Wiadomość

Jakiś szybki tutorial/gotowy skrypcik/podpowiedź?



Cytat(Monter08 @ 29.03.2013, 18:06:35 ) *
Coś słabo patrzyłeś, mi się od razu rzuciło w oczy.

Faktycznie słabo patrzyłem. :-)

Ten post edytował PiotrGP 29.03.2013, 18:10:38
Go to the top of the page
+Quote Post
Monter08
post 29.03.2013, 18:13:10
Post #7





Grupa: Zarejestrowani
Postów: 237
Pomógł: 22
Dołączył: 16.09.2010
Skąd: Lubaczów

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


Szybki tutorial:
1. Wchodzisz tutaj czytasz obsługę funkcji mail.
2. Wklepujesz do adresata 48numer_telefonu@text.plusgsm.pl
3. W tytule bodajże dawało się nadawce, nie pamiętam już - wyślij smsa to się przekonasz.
4. Wysyłasz.

Myślę, że sobie poradzisz.
Go to the top of the page
+Quote Post
PiotrGP
post 29.03.2013, 18:34:02
Post #8





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 23.03.2013

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


Cytat(Monter08 @ 29.03.2013, 18:06:35 ) *
Coś słabo patrzyłeś, mi się od razu rzuciło w oczy.


Bardzo dziwna rzecz.

Wkleiłem sobie ten kod:
  1. <?php
  2.  
  3. // Podajemy niezbedne dane do wyslania wiadomosci
  4. $login = "twoj@email.pl"; // Twoj login w systemie PromoSMS
  5. $haslo = md5("haslo"); // Twoje haslo w systemie PromoSMS
  6. //$haslo = "haslo"; // Dozwolone jest rowniez przekazanie hasla w taki sposob
  7. $to = "518187989"; // Numer, na ktory chcesz wyslac wiadomosc
  8. //$to = "518187989,607864321"; // Mozna wyslac do kilku odbiorcow, podajac numery rozdzielone przecinkiem
  9. $tresc = urlencode("To jest wiadomosc"); // Twoja tresc wiadomosci
  10.  
  11. // sprawdzamy, czy podane sa niezbedne dane
  12. if ( $login && $haslo && $to && $tresc )
  13. {
  14. $parametry = "?login=$login&pass=$haslo"."&to=$to&message=$tresc&from=$from";
  15. $url = fopen( 'https://api.promosms.pl/send.php' . $parametry, 'r' );
  16. $wynik = fread( $url,1024 );
  17. fclose( $url );
  18.  
  19. header('Content-Type: text/plain');
  20. echo $wynik;
  21. }
  22.  
  23. ?>


Z wpisanym sowim hasłem i adresem mailowym w pola: $login oraz $hasło i kiedy wywołuę ten plik, to pokazyje mi się cały kod strony a sms nie lata. Generalnie testowałem apkę. Ze strony śmiga.
Czy może być problemem Moves Portable, którego używam jako serwera lokalnego?
Go to the top of the page
+Quote Post
aogon
post 1.04.2013, 11:20:59
Post #9





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 15.11.2006

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


Dlatego ja polecam www.smsapi.pl - działa, bo też tak obliguje nazwa serwisu ;-). Po rejestracji kod wygląda tak:

  1. 
  2. <?php
  3. $params = array(
  4. 'username' => 'uzytkownik', //login z konta SMSAPI
  5. 'password' => md5('haslo'), //lub $password="ciąg md5"
  6. 'to' => '48500000000', //numer odbiorcy
  7. 'from' => 'nadawca', //nazwa nadawcy musi być aktywna
  8. 'eco' => 0, //określa czy wiadomość ma być wysłana jako Eco lub Pro
  9. 'message' => "moja wiadomosc", //treść wiadomości
  10. );
  11.  
  12. $data = '?'.http_build_query($params);
  13. $plik = fopen('https://ssl.smsapi.pl/sms.do'.$data,'r');
  14. $wynik = fread($plik,1024);
  15. fclose($plik);
  16. echo $wynik;
  17.  
  18. ?>

Dodatkowo przy rejestracji proponuję podać kod: VTK2 - otrzymacie dodatkowo 100 SMS-ów do testowania gratis. Oczywiście nie jest prawdą, że trzeba płacić abonament. Domyślna forma współpracy do prepaid.

W razie pytań zapraszam do kontaktu! :-)
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 18.04.2024 - 01:15