Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Odczytywanie stawek sms


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
16 odpowiedzi w tym temacie

#1 csMaster

    Wszechwiedzący

  • Power User

Reputacja: 14
Początkujący

  • Postów:542
  • Lokalizacja:localhost
Offline

Napisano 23.07.2018 11:56

Pisze właśnie sklepsms i ogólnie wszystko byłoby dobrze gdyby nie fakt, że większość hostingów po wysłaniu kodu sms od razu doładowuje konto, a jeśli ktoś wyśle sms o zbyt niskiej cenie (lub zbyt wysokiej) to np. kupi usługę wartą 11 zł za złotówkę. Jedyny sposób jaki mi przychodzi do głowy to właśnie po doładowaniu konta sprawdzić za ile gracz wysłał sms, ale to raczej marnowanie pieniędzy...

 

Czy jest możliwość sprawdzenia za ile dany kod sms jest wysyłany z samego poziomu amxx (np. przez sockets) ?


  • +
  • -
  • 0

#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 23.07.2018 23:57

Z jakiej firmy smsów korzystasz bez tego nie można odpowiedzieć na Twoje pytanie.
  • +
  • -
  • 0

#3 csMaster

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 14
Początkujący

  • Postów:542
  • Lokalizacja:localhost
Offline

Napisano 24.07.2018 12:03

Nie pisze tego pod konkretny hosting tylko póki co żeby działał na tych 4: pukawka, 1s1k, zabijaka, cssetti.

Ogólnie sprawdzenie pod jaki hosting aktualnie działać będzie sklepsms można sprawdzić:

switch(hosting)
{
     case 1: // pukawka
     case 2: // 1shot1kill
     case 3: // zabijaka
     case 4: // cssetti
     default: // off
}

Na zabijaka można sprawdzić cenę wysłanego kodu, ale do trzech pozostałych jedyny sposób jaki znam to php :/


  • +
  • -
  • 0

#4 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 24.07.2018 14:24

Tutaj technologia nie ma znaczenia tylko czy hosting udostępnia odpowiednie informacje :P
  • +
  • -
  • 0

#5 csMaster

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 14
Początkujący

  • Postów:542
  • Lokalizacja:localhost
Offline

Napisano 24.07.2018 15:55

Wiesz... można wejść i sprawdzić, nie bardzo wiem jakie informacje są potrzebne :P


  • +
  • -
  • 0

#6 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 24.07.2018 17:15

Myślę że do końca się nie rozumiemy.
 

doładowaniu konta sprawdzić za ile gracz wysłał sms, ale to raczej marnowanie pieniędzy...

 

​Nie wydajesz na to nic jako że hosting musi Ci podawać informacje a ich sprawdzenie nic nie kosztuje.

 

Jeśli API SMS danego serwisu pozwala sprawdzić na jaki numer był wysłany sms lub koszt sms'a to oczywiście możesz to zrobić. 

 

Czy jest możliwość sprawdzenia za ile dany kod sms jest wysyłany z samego poziomu amxx (np. przez sockets) ?

 

Tak jako że sockety mogą łączyć się do stron ( czytaj api sms ).


  • +
  • -
  • 0

#7 csMaster

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 14
Początkujący

  • Postów:542
  • Lokalizacja:localhost
Offline

Napisano 24.07.2018 22:18

 

doładowaniu konta sprawdzić za ile gracz wysłał sms, ale to raczej marnowanie pieniędzy...

 

Chodziło mi tu ogólnie o to, że jeśli nie sprawdze czy wysłany przez gracza kod pasuje do ceny to gracz wywali pieniądze i nic nie dostanie, dlatego przed doładowaniem konto powinienem sprawdzić czy kod jest poprawny, jeśli nie to żeby hosting nie marnował kodu jeśli gracz i tak nic za to by nie dostał.

 

Właśnie w tym problem że (chyba) tylko zabijaka przez wysłanie informacji bez &add na końcu, sprawdzi wartość kodu bez zużywania go, a np. pukawka po wysłaniu informacji od razu doładowuje konto i w formacie json pokazuje wartość kodu.

Jeśli już doładuje konto to co mi po tym że będę wiedział za ile ten kod był, jeśli ktoś już ten kod użył. Jedynie mógłbym nie dodać wtedy kupowanej usługi, ale gracz wywaliłby pieniądze i nic by za to nie dostał.

 

Właśnie wysyłając podobny socket:

https://admin.pukawka.pl/api/?keyapi=nv295v928yn23y&type=sms&code=k4kt57

Pukawka co prawda pokaże cene kodu, ale też doładuje konto, więc jeśli kod byłby za zbyt niską cenę to już i tak kod straci ważność a wtedy już niewiele zrobie...


  • +
  • -
  • 0

#8 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 26.07.2018 15:34

W tym względzie, każdy hosting może mieć inną politykę funkcjonowania SMS API.

W przypadku pukawki - rzeczywiście , serwis wymaga przeprowadzenia weryfikacji kodu po stronie aplikacji, bez możliwości uzyskania informacji o samym kodzie sms. Tu cytat ze strony hostingu:

Ważne: po stronie aplikacji korzystającej z API leży validacja (weryfikacja) kwot z SMS-ów. API zaakceptuje kod z każdego SMS-a, który występuje w naszej tabeli. Trzeba przewidzieć w kodzie aplikacji sytuację, w której kwota z SMS-a jest inna od zamierzonej. Np. klient pomyli się i wyśle SMS-a za 1 zł zamiast za 2 zł. Wynika to z faktu, że przed aktywacją kodu nie można ustalić na jaką kwotę opiewa.

Skutki ewentualnych pomyłek ze stawką sms można zniwelować stosując swego rodzaju bufory (portfele) wirtualnej waluty. Gracz wysyła sms i po wpisaniu prawidłowego kodu dostaje x waluty na swoje konto.
Poza tym, należy zapobiegać sytuacjom, w których klient może łatwo się pomylić. Wyświetlanie krótkich i przejrzystych instrukcji, dotyczących procedur zakupu usług, jest kluczowe dla tego typu pluginów.

Użytkownik _McHappy edytował ten post 26.07.2018 15:36

  • +
  • -
  • 0

#9 csMaster

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 14
Początkujący

  • Postów:542
  • Lokalizacja:localhost
Offline

Napisano 26.07.2018 16:11

To równie dobrze mógłbym pobrać sklepsms krwiopijcy, właśnie chciałem napisać podobny do tego ze sklep-sms.pl, bez wprowadzania walut sklepu. Czy sklep-sms sprawdza zgodność ceny kodu przez php (chociaż domyślam się że tak) ?


  • +
  • -
  • 0

#10 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 26.07.2018 16:18

To równie dobrze mógłbym pobrać sklepsms krwiopijcy, właśnie chciałem napisać podobny do tego ze sklep-sms.pl, bez wprowadzania walut sklepu. Czy sklep-sms sprawdza zgodność ceny kodu przez php (chociaż domyślam się że tak) ?


Pukawka nie udostępnia informacji o kodzie sms bez jego aktywacji, więc nie rozumiem, co takiego niezwykłego jest w PHP, że skrypt w nim napisany potrafiłby niejako zmienić sposób funkcjonowania SMS API tego hostingu.

Seek, pomimo zapewnień odnoszących się do 4. wydania sklepu, nie udostępnił kodu źródłowego pluginu sklepu. Sam nie sprawdzałem, jak ten moduł radzi sobie w opisanej przez Ciebie sytuacji.
  • +
  • -
  • 0

#11 csMaster

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 14
Początkujący

  • Postów:542
  • Lokalizacja:localhost
Offline

Napisano 26.07.2018 16:51

Równie dobrze mógłbym zdekompilować ten sklepsms bo mam *.amxx (w tym że brak licencji) :P

 

Nie wiem czym się różni php od amxx (jeśli chodzi o sprawdzenie stawki kodu), ale jeśli wpisze zły kod to sklep-sms jakoś na to zareaguje. Nie będe marnował pieniędzy żeby to sprawdzić na jakimś serwerze, ale na pewno została tam przewidziana sytuacja w której gracz wyślę sms za złą cenę (?)


  • +
  • -
  • 0

#12 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 26.07.2018 19:21

Plik amxx sklepu jest zabezpieczony przed całkowitą dekompilacją (lysis), a korzystanie z deasemblera może okazać się zbyt czasochłonne (chyba, że bardzo Ci na tym zależy - analiza czystego kodu symbolicznego może pomóc).

Nie chodzi tu o różnicę między amxx(pawn), a php. Jeżeli dostawca API SMS nie przewiduje możliwości sprawdzenia kodu sms bez jego aktywacji, to żadna siła nie pomoże.

Domyślam się, że w przypadku gdy użytkownik aktywuje zły kod, plugin zwyczajnie wyświetli informację o błędzie. Są to jednak de facto moje, niepotwierdzone przypuszczenia ;)

Użytkownik _McHappy edytował ten post 26.07.2018 19:26

  • +
  • -
  • 1

#13 oeN.

    Wszechwidzący

  • Użytkownik

Reputacja: 95
Zaawansowany

  • Postów:294
  • Lokalizacja:Dom
Offline

Napisano 26.07.2018 23:05

Każdy, bez wyjątku, hosting który ma API do płatności SMS, zwraca kwotę doładowania i opcjonalnie koszt. Dzięki temu możesz sprawdzać czy wybrana cena jest odpowiednia do tego co zwraca API.

Musisz jednak ręcznie wpisać w tablicę, bazę czy gdziekolwiek, cennik, ile dany SMS kosztuje i ile doładowuje. Dzięki temu bardzo łatwo będziesz mógł się opierać na kosztach itp.


  • +
  • -
  • 0

#14 csMaster

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 14
Początkujący

  • Postów:542
  • Lokalizacja:localhost
Offline

Napisano 27.07.2018 11:07

Każdy, bez wyjątku, hosting który ma API do płatności SMS, zwraca kwotę doładowania i opcjonalnie koszt. Dzięki temu możesz sprawdzać czy wybrana cena jest odpowiednia do tego co zwraca API.

Musisz jednak ręcznie wpisać w tablicę, bazę czy gdziekolwiek, cennik, ile dany SMS kosztuje i ile doładowuje. Dzięki temu bardzo łatwo będziesz mógł się opierać na kosztach itp.

 

To wyjaśnij jak to zrobić. Może nie przeczytałeś wszystkich postów, ale jeśli gracz wyśle sms to co tu da cennik jak api samo sprawdza kod i dopiero po jego aktywacji (czyli kiedy kod już się zmarnuję) zwraca jego koszt ? Jak bym miał jakąś tabele czy algorytm który by sprawdzał koszt wysłanego kodu, równie dobrze móglbym sam generować kody sms i doładowywać sobie konto (co jest nielegalne).

 

 

Plik amxx sklepu jest zabezpieczony przed całkowitą dekompilacją (lysis), a korzystanie z deasemblera może okazać się zbyt czasochłonne (chyba, że bardzo Ci na tym zależy - analiza czystego kodu symbolicznego może pomóc).

Nie chodzi tu o różnicę między amxx(pawn), a php. Jeżeli dostawca API SMS nie przewiduje możliwości sprawdzenia kodu sms bez jego aktywacji, to żadna siła nie pomoże.

Domyślam się, że w przypadku gdy użytkownik aktywuje zły kod, plugin zwyczajnie wyświetli informację o błędzie. Są to jednak de facto moje, niepotwierdzone przypuszczenia ;)

 

Wątpie żeby był zabezpieczony przed AI >.<

Coż... Jak dla mnie to wtedy gracz wywali hajs i nic za to nie dostanie, ale jeśli mówisz że to jest niemożliwe...

Może przynajmniej dam jakieś info żeby przed aktywacją kodu sprawdzić czy wszystko się zgadza. W sumie to mała jest szansa na to, że gracz wyśle sms na zły numer :P


  • +
  • -
  • 0

#15 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 28.07.2018 10:38

To wyjaśnij jak to zrobić. Może nie przeczytałeś wszystkich postów, ale jeśli gracz wyśle sms to co tu da cennik jak api samo sprawdza kod i dopiero po jego aktywacji (czyli kiedy kod już się zmarnuję) zwraca jego koszt ? Jak bym miał jakąś tabele czy algorytm który by sprawdzał koszt wysłanego kodu, równie dobrze móglbym sam generować kody sms i doładowywać sobie konto (co jest nielegalne).
Nie , kod i tak jest generowany i zapisywany u operatora więc nie mógł byś generować :) , co do api do tego co chcesz zrobić hosting musi udostępniać funkcje aby sprawdzić ile kosztował sms lub na jaki numer został wysłany bez jego aktywacji w serwisie i wykorzystania.
  • +
  • -
  • 0

#16 oeN.

    Wszechwidzący

  • Użytkownik

Reputacja: 95
Zaawansowany

  • Postów:294
  • Lokalizacja:Dom
Offline

Napisano 10.08.2018 11:37


To wyjaśnij jak to zrobić.
socket_send(g_Socket, szSendBuffer, charsmax(szSendBuffer)); // Leci jakiś HTTP
set_task(1.0, "socketAnswer", id, .flags = "b"); // Sprawdzanie czy jest odpowiedź od serwera

public socketAnswer(id) {
	if (socket_change(g_Socket)) { // AMXX 1.8.2
	if (socket_is_readable(g_Socket)) { // AMXX 1.8.3
		remove_task( id );

		new buf[512];
		socket_recv(g_Socket, buf, 511);
		
		log_amx(buf); // Leci do konsoli serwera odpowiedź
		
		/*
		
		Tutaj możesz się pobawić w ogarnięcie tego co zwraca i bez problemu odczytywać dane.
		Skrypt PHP zwraca czy kod był poprawny, jeśli tak to ile był wart itp. a jak nie to nie.
		
		*/
	}
}

Użytkownik oeN. edytował ten post 10.08.2018 11:38

  • +
  • -
  • 0

#17 csMaster

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 14
Początkujący

  • Postów:542
  • Lokalizacja:localhost
Offline

Napisano 10.08.2018 12:44

Teraz powiedz co będzie szSendBuffer.

Nie mów że jakiś http bo jedyny jaki moge wysłać do np. pukawki to:

format(szSendBuffer, charsmax(szSendBuffer), "GET pukawka.pl^nHost:/api/?keyapi=nv295v928yn23y&type=sms&code=k4kt57^r^n^r^n");

Jeśli podobny wyśle to co prawda socket zwróci koszt kodu, ale doładuje od razu konto marnując kod.

Skoro mówisz że da się to zrobić to wymyśl jakiś inny socket, po którego wysłaniu pukawka nie doładuje konta tylko zwróci samą cene kodu.


  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych