Automatické SMS mobilniplatby.cz

Message
Autor
eakethet
Příspěvky: 314
Registrován: 19 led 2012, 10:33
Reputation: 0

Automatické SMS mobilniplatby.cz

#1 Příspěvekod eakethet » 08 čer 2012, 16:11

Jelikož tu bylo už mnoho žádostí na script na automatické sms od mobilniplatby.cz tak ho sem přidávám.
Co budeme potřebovat?
1) Skripty, které stáhnete na konci tohoto prvního příspěvku (mirror) (mirror 2)
2) Webhosting podporující php (v dnešní době každý) a ftp
3) 1 minutu času

Krok první
Soubor „rcon.php“ a nahrajeme na ftp na náš webový server. Soubor „mobilniplatbymc.php“ si otevřeme v textovém editoru, nebo nejlépe Notepad++ a nastavíme IP našeho serveru, rcon port a rcon heslo. Poté soubor přejmenujeme na nějaký podivný název který se nedá uhádnout, např.:169849684154986465168.php a nahrajeme na web k souboru rcon.php
Krok druhý
Na mobilniplatby.cz si v "Brána" -> "Nastavení brány" najdeme pole pro zadání volání adresy, při přijetí SMS platby a nastavíme adresu tak, aby odkazovala na náš script, který máte na svém webu.

Zároveň je nutné na serveru mít povolený RCON. Jak povolit RCON najdete v návodu na Automatické platby ze systému FakaHedy: viewtopic.php?p=24666#p24666

Ke stažení:
Skript definující příkazy podle cenových hladin
Soubor pojmenujte dle zvážení. Např. tajnaautoplatba.php
Code: [Vybrat vše] [Expand/Collapse] [Download] (automatickeplatby.php)
  1. Vaše sms byla zpracována
  2. <?php
  3. ///////////////
  4. // NASTAVENÍ //
  5. ///////////////
  6. $server = "IP vašeho serveru bez portu";
  7. $port = "rcon port, nejedná se o port serveru! Jedná se o rcon port v server.properties";
  8. $pw = "heslo od rconu, podle server.properties";
  9.  
  10. //////////////////////////////
  11. // VYTAŽENÍ INFORMACÍ Z SMS //
  12. //////////////////////////////
  13. $price = $_GET['price'];
  14. $player = $_GET['text'];
  15.  
  16. if(empty($price)) { die('Error'); }
  17.  
  18. $commands = array();
  19. //////////////////////////////
  20. // JEDNOTLIVÉ CENOVÉ HLADINY//
  21. //////////////////////////////
  22. switch($price) {
  23.  
  24.   case 99.000:  
  25.     $commands[] = "money give ".$player." 1500"; //přičte hráči 1500 money, můžete dát jakýkoli libovolný příkaz cena 99kč
  26.     $commands[] = "say Hráč ".$player." koupil VIP za 1500 Kč"; //druhý příkaz, takto je možné přidat více příkazů ke každé cenové hladině
  27.   break;
  28.  
  29.   case 79.000:  
  30.     $commands[] = "money give ".$player." 1100"; //79kč cena
  31.   break;
  32.  
  33.   case 50.000:  
  34.     $commands[] = "money give ".$player." 700"; //50kč cena
  35.   break;
  36.  
  37.   case 30.000:  
  38.     $commands[] = "money give ".$player." 300"; //30kč cena
  39.   break;
  40.  
  41.   case 20.000:  
  42.     $commands[] = "money give ".$player." 200"; //20kč cena
  43.   break;
  44.  
  45.   case 10.000:  
  46.     $commands[] = "money give ".$player." 100"; //10kč cena
  47.   break;
  48.  
  49.   case 0.500:  
  50.     $commands[] = "money give ".$player." 150"; //sms za 0,5 €
  51.   break;
  52.  
  53.   case 1.000:  
  54.     $commands[] = "money give ".$player." 300"; //sms za 1 €
  55.   break;
  56.  
  57.   case 1.205:  
  58.     $commands[] = "money give ".$player." 400"; //sms za 1.205 €
  59.   break;
  60.  
  61.   case 1.607:  
  62.     $commands[] = "money give ".$player." 500"; //sms za 1,607 €
  63.   break;      
  64.  
  65. }
  66.  
  67. include_once("rcon.php");
  68. $r = new rcon($server,$port,$pw);
  69. if($r->Auth())
  70. {
  71.    foreach($commands as $command)  
  72.     $r->rconCommand($command);            
  73. }
  74.  
  75. ?>


Skript komunikující se serverem (hlavní rcon část)
Soubor neupravujte! Uložte jej jako rcon.php
  1. <?php
  2. /*
  3. RCON remote console class, modified for minecraft compability by Tehbeard.
  4.  
  5. !!!YOU MUST CONFIGURE RCON ON YOUR MINECRAFT SERVER FOR THIS TO WORK
  6. AT TIME OF WRITING ONLY 1.9pr4+ HAVE BUILTIN RCON SUPPORT!!!
  7.  
  8. Example Code:
  9. ============
  10. include_once("rcon.class.php"); //Include this file
  11. $r = new rcon("127.0.0.1",25575,"foobar"); //create rcon object for server on the rcon port with a specific password
  12. if($r->Auth()){ //Connect and attempt to authenticate
  13. {
  14.   $r->rconCommand("say Saving in 10 seconds!"); //send a command
  15.   sleep(10);
  16.   $r->rconCommand("save-all"); //send a command
  17.   $r->rconCommand("say Save complete!");//send a command
  18.   echo $r->rconCommand("list");//send a command, echo returned value
  19. }
  20. ============
  21.  
  22.  
  23.  
  24. Based upon the following work:
  25. [<<<
  26.     Basic CS:S Rcon class by Freman.  (V1.00)
  27.     ----------------------------------------------
  28.     Ok, it's a completely working class now with with multi-packet responses
  29.  
  30.     Contact: printf("%s%s%s%s%s%s%s%s%s%d%s%s%s","rc","on",chr(46),"cl","ass",chr(64),"pri","ya",chr(46),2,"y",chr(46),"net")
  31.  
  32.     Behaviour I've noticed:
  33.         rcon is not returning the packet id.
  34. >>>]
  35. */
  36.  
  37. define("SERVERDATA_EXECCOMMAND",2);
  38. define("SERVERDATA_AUTH",3);
  39.  
  40. class RCon {
  41.     var $Password;
  42.     var $Host;
  43.     var $Port = 27015;
  44.     var $_Sock = null;
  45.     var $_Id = 0;
  46.  
  47.     function RCon ($Host,$Port,$Password) {
  48.         $this->Password = $Password;
  49.         $this->Host = $Host;
  50.         $this->Port = $Port;
  51.         $this->_Sock = @fsockopen($this->Host,$this->Port, $errno, $errstr, 30) or
  52.                 die("Unable to open socket: $errstr ($errno)\n");
  53.         $this->_Set_Timeout($this->_Sock,2,500);
  54.         }
  55.  
  56.     function Auth () {
  57.         $PackID = $this->_Write(SERVERDATA_AUTH,$this->Password);
  58.  
  59.         // Real response (id: -1 = failure)
  60.         $ret = $this->_PacketRead();
  61.         //var_dump($ret);
  62.         if ($ret[0]['ID'] == -1) {
  63.             return false;
  64.         }
  65.         return true;
  66.     }
  67.  
  68.     function _Set_Timeout(&$res,$s,$m=0) {
  69.         if (version_compare(phpversion(),'4.3.0','<')) {
  70.             return socket_set_timeout($res,$s,$m);
  71.         }
  72.         return stream_set_timeout($res,$s,$m);
  73.     }
  74.  
  75.     function _Write($cmd, $s1='', $s2='') {
  76.         // Get and increment the packet id
  77.         $id = ++$this->_Id;
  78.  
  79.         // Put our packet together
  80.         $data = pack("VV",$id,$cmd).$s1.chr(0).$s2.chr(0);
  81.  
  82.         // Prefix the packet size
  83.         $data = pack("V",strlen($data)).$data;
  84.  
  85.         // Send packet
  86.         fwrite($this->_Sock,$data,strlen($data));
  87.  
  88.         // In case we want it later we'll return the packet id
  89.         return $id;
  90.     }
  91.  
  92.     function _PacketRead() {
  93.         //Declare the return array
  94.         $retarray = array();
  95.         //Fetch the packet size
  96.         while ($size = @fread($this->_Sock,4)) {
  97.             $size = unpack('V1Size',$size);
  98.             //Work around valve breaking the protocol
  99.             if ($size["Size"] > 4096) {
  100.                 //pad with 8 nulls
  101.                 $packet = "\x00\x00\x00\x00\x00\x00\x00\x00".fread($this->_Sock,4096);
  102.             } else {
  103.                 //Read the packet back
  104.                 $packet = fread($this->_Sock,$size["Size"]);
  105.             }
  106.             array_push($retarray,unpack("V1ID/V1Response/a*S1/a*S2",$packet));
  107.         }
  108.         return $retarray;
  109.     }
  110.  
  111.     function Read() {
  112.         $Packets = $this->_PacketRead();
  113.  
  114.         foreach($Packets as $pack) {
  115.             if (isset($ret[$pack['ID']])) {
  116.                 $ret[$pack['ID']]['S1'] .= $pack['S1'];
  117.                 $ret[$pack['ID']]['S2'] .= $pack['S1'];
  118.             } else {
  119.                 $ret[$pack['ID']] = array(
  120.                     'Response' => $pack['Response'],
  121.                     'S1' => $pack['S1'],
  122.                     'S2' => $pack['S2'],
  123.                 );
  124.             }
  125.         }
  126.         return $ret;
  127.     }
  128.  
  129.     function sendCommand($Command) {
  130.         //$Command = '"'.trim(str_replace(' ','" "', $Command)).'"';
  131.         //$Command="stop";
  132.         $this->_Write(SERVERDATA_EXECCOMMAND,$Command,'');
  133.     }
  134.  
  135.     function rconCommand($Command) {
  136.         $this->sendcommand($Command);
  137.  
  138.         $ret = $this->Read();
  139.  
  140.         //ATM: Source servers don't return the request id, but if they fix this the code below should read as
  141.         // return $ret[$this->_Id]['S1'];
  142.         return $ret[$this->_Id]['S1'];
  143.     }
  144. }
  145. ?>


Mirror
Soubory je možné stáhnout jako balík. Pokud nebude dostupný, kontaktujte podporu
Stáhnout
Naposledy upravil(a) nejento dne 22 bře 2020, 03:47, celkem upraveno 1 x.

Uživatelský avatar
Welton123
Příspěvky: 2388
Registrován: 08 úno 2012, 17:54
Reputation: 0
Kontaktovat uživatele:

Re: Automatické SMS mobilniplatby.cz

#2 Příspěvekod Welton123 » 08 čer 2012, 17:27

Díky, hodí se.

Chsi se zeptat, když mám na jednom uctu na webu mobilniplatby jednu sms branu a chci si udelat dalsi da se pouzit tento script znova, kdyzs e da to jine slozky spollu se souborem rcon.php nebo to zalezi proste jen na cene sms a tvar sms to nesnima ?
CZ/SK TOP Databáze MineCraft Serverů ►KLIK◄
Chceš i Ty mít měnící se podpis? ►KLIK◄

Uživatelský avatar
LavorekCZ
Příspěvky: 1805
Registrován: 20 lis 2011, 13:58
Reputation: 0
Kontaktovat uživatele:

Re: Automatické SMS mobilniplatby.cz

#3 Příspěvekod LavorekCZ » 08 čer 2012, 17:31

Ano, bere si to pouze cenu a text bez toho pm blabla.
Pomohl ti někdo? Pak určitě bude rád, když mu zvedneš karmu!
not sure

Uživatelský avatar
Welton123
Příspěvky: 2388
Registrován: 08 úno 2012, 17:54
Reputation: 0
Kontaktovat uživatele:

Re: Automatické SMS mobilniplatby.cz

#4 Příspěvekod Welton123 » 08 čer 2012, 17:46

Dekuji, v tom scriptu jsou SK platby oddelene a jsou tam ty SK platby jenom 4. Vice jich nejde nebo ty 4 je hranice ?
CZ/SK TOP Databáze MineCraft Serverů ►KLIK◄
Chceš i Ty mít měnící se podpis? ►KLIK◄

Uživatelský avatar
LavorekCZ
Příspěvky: 1805
Registrován: 20 lis 2011, 13:58
Reputation: 0
Kontaktovat uživatele:

Re: Automatické SMS mobilniplatby.cz

#5 Příspěvekod LavorekCZ » 08 čer 2012, 17:49

O SK platby si musíš speciálně zažádat. Přečti si tam podmínky.
Pomohl ti někdo? Pak určitě bude rád, když mu zvedneš karmu!
not sure

Uživatelský avatar
Welton123
Příspěvky: 2388
Registrován: 08 úno 2012, 17:54
Reputation: 0
Kontaktovat uživatele:

Re: Automatické SMS mobilniplatby.cz

#6 Příspěvekod Welton123 » 08 čer 2012, 17:58

sms platby uz mam, uz jsem to vyresil :-) :-D
CZ/SK TOP Databáze MineCraft Serverů ►KLIK◄
Chceš i Ty mít měnící se podpis? ►KLIK◄

Uživatelský avatar
SpreyYManNNikKK
Příspěvky: 1294
Registrován: 25 led 2012, 18:49
Reputation: 0

Re: Automatické SMS mobilniplatby.cz

#7 Příspěvekod SpreyYManNNikKK » 08 čer 2012, 21:57

ale nechapu to , to mi ma jako chodit na ten web kdo co poslal ? nebo na co to je script ? :D :D Protoze udelal sem vse dobre a :
Spoiler: zobrazit
Obrázek

Uživatelský avatar
LavorekCZ
Příspěvky: 1805
Registrován: 20 lis 2011, 13:58
Reputation: 0
Kontaktovat uživatele:

Re: Automatické SMS mobilniplatby.cz

#8 Příspěvekod LavorekCZ » 08 čer 2012, 22:17

... normální Automatické VIP jak sem dával Sejsel viewtopic.php?f=85&t=3962 akorát předělané na mobilniplatby.cz
Pomohl ti někdo? Pak určitě bude rád, když mu zvedneš karmu!
not sure

Uživatelský avatar
Welton123
Příspěvky: 2388
Registrován: 08 úno 2012, 17:54
Reputation: 0
Kontaktovat uživatele:

Re: Automatické SMS mobilniplatby.cz

#9 Příspěvekod Welton123 » 09 čer 2012, 13:38

Jeste mam dotaz ja :D , kdyz si na mobilniplatby.cz udelam ucet a na nem budu mit prodej hernich penez, script a rcon.php dam do jedne slozky a pak tam zadam cestu, bude to po odeslani sms davat prikazem herni penize ale kdyz bych mel jeste jeden ucet a tam dal zase jinej script(jine prikazy) a take do jine slozky muzu taklhle pouzivat dva scripty, kde jeden bude davat herni penize a druhej treba kredity do webshopu od Vojka ? :-) :-D
CZ/SK TOP Databáze MineCraft Serverů ►KLIK◄
Chceš i Ty mít měnící se podpis? ►KLIK◄

eakethet
Příspěvky: 314
Registrován: 19 led 2012, 10:33
Reputation: 0

Re: Automatické SMS mobilniplatby.cz

#10 Příspěvekod eakethet » 09 čer 2012, 14:35

Pokud by si to měl jako jiné brány tak tam problém není. Pokud by si chtěl aby z jedné sms hráčům šli peníze jak na server tak i na vojkův webshop tak tam by ses musel domluvit jak jsou uchovávány informace o penězích ve webshopu a jen by se přidalo pár řádek aby to připisovalo i do db webshopu


Zpět na „Návody“

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 30 hostů