Gå til innhold

Sende SMS skript?


Anbefalte innlegg

Skrevet

Er det mulig å benytte php for å sende sms meldinger via et abbonement?

Vet Telenor har en addon til Outlook som gjør at man kan sende sms, men skulle gjerne hatt noe jeg kan implementere på en enkel php side.

Videoannonse
Annonse
Skrevet

Vet ikke om noe som går på ditt eget abonnement, det stiller jeg meg tvilende til om finnes. Men du kan sende SMS ved å opprette en konto og fylle på credits med VISA på en av disse gatewayene:

- tm4b.com

- clickatell.com

- cpa.teletopiainteractive.no

 

På de to første mener jeg du får brukt ditt eget nummer som avsender

Skrevet (endret)

Ung1881 sms skript, krever at hosten støtter CURL.

 

Klikk for å se/fjerne innholdet nedenfor

<?php
//Syntax: echo sendsms("your message here");
function sendsms($message, $phonenumber = "********", $username = "******", $password = "******") {
//cookie file path
$cookie = "/execscriptdir/php.cgi/cookie/cookie.txt";
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://www.ung1881.no/Templates/Login____44.aspx");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$frontpage = curl_exec($ch);
preg_match("/ id=\"__VIEWSTATE\" value=\"([^\"]+)\"/", $frontpage, $token);
preg_match("/ id=\"__EVENTVALIDATION\" value=\"([^\"]+)\"/", $frontpage, $tuken);
preg_match("/ name=\"REQUEST_SYNC_TOKEN_STRING\" value=\"([^\"]+)\"/", $frontpage, $teken);
$token = $token[1];
$tuken = $tuken[1];
$teken = $teken[1];

curl_setopt($ch, CURLOPT_URL, "https://www.ung1881.no/Templates/Login____44.aspx");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$post = "__VIEWSTATE=".urlencode($token);
$post .= "&__EVENTVALIDATION=".urlencode($tuken);
$post .= "&REQUEST_SYNC_TOKEN_STRING=".urlencode($teken);
$post .= "&DefaultFramework\$Content1\$login\$tbxUsername=".$username;
$post .= "&DefaultFramework\$Content1\$login\$tbxPassword=".$password;
$post .= "&DefaultFramework\$Content1\$login\$btnLogin.x=1&DefaultFramework\$Content1\$login\$btnLogin.y=1";
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$memberpage = curl_exec($ch);
curl_exec($ch);

if (strpos($memberpage, "<div class=\"loggedInUser\">".$username."</div>")) {
$status = "Login process successfully completed.  <br />";
} else { $status = "An error occured, login failure. <br />"; }

curl_setopt($ch, CURLOPT_URL, "https://www.ung1881.no/Templates/SMS____24.aspx");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$page = curl_exec($ch);
preg_match("/ id=\"__VIEWSTATE\" value=\"([^\"]+)\"/", $page, $taken);
preg_match("/ id=\"__EVENTVALIDATION\" value=\"([^\"]+)\"/", $page, $truken);
preg_match("/ name=\"REQUEST_SYNC_TOKEN_STRING\" value=\"([^\"]+)\"/", $page, $treken);
$taken = $taken[1];
$truken = $truken[1];
$treken = $treken[1];

   
curl_setopt($ch, CURLOPT_URL, "https://www.ung1881.no/Templates/SMS____24.aspx");
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$posten = "__VIEWSTATE=".urlencode($taken);
$posten .= "&__EVENTVALIDATION=".urlencode($truken);
$posten .= "&REQUEST_SYNC_TOKEN_STRING=".urlencode($treken);
$posten .= "&defaultframework\$ctl02\$Smssend\$txtPhonenumber=".$phonenumber;
$posten .= "&defaultframework\$ctl02\$Smssend\$txtText=".$message;
$posten .= "&defaultframework\$ctl02\$Smssend\$butSend.x=0&defaultframework\$ctl02\$Smssend\$butSend.y=0";
curl_setopt($ch, CURLOPT_POSTFIELDS, $posten);
$smspage = curl_exec($ch);


preg_match("/ id=\"defaultframework_ctl02_Smssend_popupWinaCnt\">([^\"]+)<\/span>/", $smspage, $smsstatus);
if (strpos($smsstatus[1], "SMS sendt") !== false) {
$status .= $smsstatus[1]."<br />The message <i>\"".$message."\"</i> was successfully sent.<br />";
} else { $status .= $smsstatus[1]."<br />An error occured, send sms failure.<br />"; }

curl_close ($ch);
return $status;
}

?>

Endret av Rasks
Skrevet

Funka som gull :) (Fra Netbox domene)

 

La også til at den lagret alle meldingene i mySQL basen slik at jeg har litt historikk også. Gøy.

Skrevet (endret)

personlig bruker jeg sammen med en cron-job og en database til å skjekke om noen jeg kjenner har bursdag og sender meg en melding.

Trenger aldri å huske en bursdag mer, ever :D

Endret av Rasks
Skrevet
personlig bruker jeg sammen med en cron-job og en database til å skjekke om noen jeg kjenner har bursdag og sender meg en melding.

Trenger aldri å huske en bursdag mer, ever  :D

9171056[/snapback]

 

Automatisk utsending/bestilling av blomster er også gull verdt, spesielt for de som står litt nærme ;)

Skrevet (endret)

Får dette jeg:

"Login process successfully completed.

 

An error occured, send sms failure."

 

Hvordan kan jeg feilsøke på dette? :p

 

Edit:

Funket ikke på servetheworld, men på powweb virket det :w00t:

Endret av ZoRaC
Skrevet

testa ut skriptet, drittøft! Men lurer litt på i forhold til sikkerhet og sånn. Kan jeg f.eks implementere noe slikt på en offentlig nettside(min egen) og fylle inn en tlf,beskjed, passord og brukernavn og trigge sendsms-funksjonen, uten at noen andre kan snappe det opp?

 

noen som selv bruker dette på sine sider? Rasks: er det greit om jeg bruker og/elr modifiserer scriptet så det passer til mitt eget bruk?

Gjest Slettet+142
Skrevet

Du har veldig fine variabelnavn i det skriptet ditt :p

 

$token = $token[1];

$tuken = $tuken[1];

$teken = $teken[1];

$taken = $taken[1];

$truken = $truken[1];

$treken = $treken[1];

 

Måtte le litt da jeg lese de iallefall 3 første ^^

 

Jeg får jammen ikke registrert med på ung1881. Enten kan jeg vente til 21 September, eller så må jeg få underskrift av foreldre. BLÆ

Skrevet
testa ut skriptet, drittøft! Men lurer litt på i forhold til sikkerhet og sånn. Kan jeg f.eks implementere noe slikt på en offentlig nettside(min egen) og fylle inn en tlf,beskjed, passord og brukernavn og trigge sendsms-funksjonen, uten at noen andre kan snappe  det opp?

 

noen som selv bruker dette på sine sider? Rasks: er det greit om jeg bruker og/elr modifiserer scriptet så det passer til mitt eget bruk?

9171920[/snapback]

 

Ja =)

 

Bruk .htpass , gjør det selv på min webside (se signatur).

Skrevet

de som vil kan bruke skriptet, men jeg sier ikke neitakk til litt heder og ære.

Det er forresten et lite "bug" i skriptet, tegnene øæå funker ikke og hvis melding innholder & blir bare det før &-tegnet sendt.

Noen som har en løsning på noe av dette?

Skrevet
Sender man gratis fra ung1881?

9174421[/snapback]

 

ja, ubegrenset gratis sms. eneste haken er en liten reklametekst på slutten av hver melding.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...