Pereiti prie turinio

Rekomenduojami pranešimai

Visvien bisk nekertu, puse paros prie sms raso "pending", nu ju parasymu tai reiskia kad sms atejo, bet pinigai ne, o tai siuntejas jau gavo paslauda? status i mano scripta siunte "ok"?

i billing faila ateina tik "OK" arba "failed", o i pagrindini sms faila fortumo kreipiasi iskart po zinutes issiuntimo.

Nuoroda į pranešimą
Dalintis kituose puslapiuose
o jei tarkim is karto ok, tai kreipiasi ir i pagrindini ir i billing? Ar tik i viena?

Jei pending tai tik i pagrindini, o kai pasidaro ok tai tada i billing?

Jei ok is karto kreipiasi tik i pagrindini, jei pending kreipiasi i pagrindini, o kai sms pavirsta i ok tada i billing kreipiasi.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Šiandien atsirado laiko, todėl pabėgau iš mokejimai.lt į fortumo.

Pats paprastumas paliko man labai didelį įspūdį. Viską susitvarkiau pusvalandžio bėgyje, radęs pavyzdinį SMS script'ą iš seno mokejimai.lt pasikopijavau metodus ir prisijungimą prie MySQL. Viskas veikia tiesiog nuostabiai :D

 

Galiu paviešinti savo skriptą, negaila, nes užtruko tik 10 minučių. Jis prisijungia prie MySQL ir į lentelę characters, column'ą game_points prideda 3 taškus prie jau esamų taškų. Pavyzdžiui, žmogus siunčia SMS "TXT L2ERA Omanus", nuskaitomas nickas Omanus ir tikrinama, ar jis yra duomenų bazėje - jei nickas egzistuoja, pridedami taškai, jei ne, nedaroma nieko. Abiejais atvejais gaunamas atsakymas. Taip pat į failą xxx.txt prideda paskutinio apmokėjimo statusą - jei OK, transakcija pavyko, jei FAILED - nepavyko, nes charakteris nerastas. Gal atsiras koks žinovas, kuris moka padaryti, kad mokėjimai bus išsaugomi visi?

 

Štai ir skriptas

 

<?php

$host = "11.22.33.44"; //Duombazes IP

$login = "root"; // Duombazes login

$password = "password"; // Duombazes slaptazodis

$database = "database"; // Duombazes lentele

$connect = mysql_connect("$host","$login","$password") or die(mysql_error());

mysql_select_db("$database") or die(mysql_error());

 

//set true if you want to use script for billing reports

//first you need to enable them in your account

$billing_reports_enabled = false;

 

// check that the request comes from Fortumo server

if(!in_array($_SERVER['REMOTE_ADDR'],

array('81.20.151.38', '81.20.148.122', '209.20.83.207'))) {

die("Error: Restricted area!");

}

 

// check the signature

$secret = 'secret'; // insert your secret between ''

if(!empty($secret) && !check_signature($_GET, $secret)) {

die("Error: Invalid signature");

}

 

$sender = $_GET['sender'];

$message = $_GET['message'];

$nikas = explode(" ", $_GET['message']);

$character = mysql_real_escape_string($nikas[2]);

$characterexist = mysql_query("SELECT * FROM characters WHERE char_name = '".$character."'");

if (mysql_num_rows($characterexist) == 1) {

mysql_query("UPDATE `characters` SET `game_points`=game_points+'3' WHERE `char_name`='".$character."'") or die(mysql_error());

echo 'Thanks for supporting L2Era. 3 points have been added to character '.$character;

file_put_contents("xxx.txt", "$sender | $character | OK");

} else {

echo 'Thanks for supporting L2Era, but character '.$character.' does not exist.';

file_put_contents("xxx.txt", "$sender | $character | FAIL");

}

 

//customize this according to your needs

if($billing_reports_enabled

&& preg_match("/Failed/i", $_GET['status'])

&& preg_match("/MT/i", $_GET['billing_type'])) {

// find message by $_GET['message_id'] and suspend it

}

 

 

function check_signature($params_array, $secret) {

ksort($params_array);

 

$str = '';

foreach ($params_array as $k=>$v) {

if($k != 'sig') {

$str .= "$k=$v";

}

}

$str .= $secret;

$signature = md5($str);

 

return ($params_array['sig'] == $signature);

}

?>

 

Įrašus pasikeiskite patys, o jei negaila, užmeskit ir teigiamą atsiliepimą - kiek supratau, jie čia vertingi :D

Redagavo Omanus
Nuoroda į pranešimą
Dalintis kituose puslapiuose

greičiausia ir ant fortumo bus apribojimas kaip ir ant mokejimai.lt bei ant kitų sistemų. Esmė ta, jog tik tele2 reikalauja verslo liudijimų ar iv pažymėjimų, kiti operatoriai to neprašo. Taigi be pažymėjimo nebus pasiekiami sms iš tele2, o fortumo arba pradės taip pat reikalaut pažymėjimų, arba bus nutraukta sutartis tarp tele2 ir fortumo, ko pasekoje ir fortumo sistema bus nepasiekiama tele2 vartotojams.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Aš gal palauksiu iki birželio galo ir jei su fortumo viskas bus gerai, tada pereisiu... jau turiu visus skriptus persikūręs tik dar nepaleidęs... Kol kas neverta stačia galva bėgti į fortumo, nes jei surinkus kažkiek pinigų (mažiau negu 50 eurų) paaiškės, kad jų neišmokės ar kažkas pan, tada dar blogiau negu visai be mokėjimų būti...

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 3 savaičių...
Sveiki, norėjau paklausti dėl to secret. Kaip suprantu kiekvienam raktažodžiui yra vis kitas secret ir tai reiškia, kad reikia kurti kelis skirtingus failus su skirtingais secret arba padaryti kelis skirtingus secret su if'ais. Teisingai aš supratau? :unsure:

 

Kiekvienam (skirtingam) raktažodžiui apdoroti yra skirti atskiri skriptai. ;)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

O man iškilo su fortumo tokia problema, turiu pasijungęs sms sistemą ant fortumo, pora dienų viskas normaliai veikė, dabar kai atsiunčia kas nors sms žinute tai rašo:

3706******* 2010-06-18 16:40 TXT ****** 78.58.**.** failed

 

Ir dar atsirado tokia icon'a (raudonas laiškas) tarp žodžių price ir profit, paspaudus ant to raudono laiško rašo:

 

What is an unbilled message?

 

Sometimes operators fail to bill some messages. This happens when end-users refuse to pay their bill or someone has used your service with pre-paid calling card that doesn't have enough credit. These unbilled messages are withheld from your account according to points 17,18,19 in our terms of services. When the end-user pays the phone bill, the money will be transferred back to your account.

 

Ir pinigai nėra priskaičiuojami prie mano sąskaitos, kas čia gali būti ? Gal galėtum padėt? Jeigu ką, mano skype: lee_bronius

Redagavo kundrotux
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Sveiki,

Gal kas patartų kaip anksčiau laiko pasiimti išmoką? Dabar turiu sąskaitoje 45,88 EUR. Nebeturiu laiko laukti, kol bus 50.

Ir dar klausimas būtų: Jeigu tą išmoką galima nuimti, tai kiek man už tai nuskaičiuos pinigų? Ir kaip greitai aš jos gaučiau?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...