Ingen treff

Du ser en eldre versjon av denne siden.

Åpne gjeldende versjon

Transaksjonsmelding (PHP SDK 1.0)

Klassen BulkGate\Sms\Message representerer objektet for SMS-meldingen, som består av innholdet i meldingen og mottakeren.

use BulkGate\Sms\Message;

Mottaker

Som første argument tar klassen imot et telefonnummer, som kan angis som en streng:

$message = new Message('420777777777', 'testmelding');

eller en instans av objektet `Message\PhoneNumber`:

$message = new Sms\Message(new Message\PhoneNumber('420777777777'), 'testmelding');

Du kan også angi telefonnummeret etter at instansen av objektet er opprettet, med metoden phoneNumber($phone_number, $iso = null):

$message = new Sms\Message(); $message->phoneNumber('420777777777'); // streng $message->phoneNumber('777777777', BulkGate\Sms\Country::CZECH_REPUBLIC); // Varianten der det internasjonale landsprefikset fylles ut $message->phoneNumber(new Message\PhoneNumber('420777777777'));

For å hente telefonnummeret kan du bruke metoden getPhoneNumber(), som alltid returnerer en instans av objektet `Message\PhoneNumber`.

/** @var Message\PhoneNumber $phone_number */ $phone_number = $message->getPhoneNumber();

Meldingstekst

Den andre parameteren er teksten i meldingen. Også her finnes det 2 muligheter: den første er å angi teksten som en streng, den andre er en instans av klassen `Message\Text`.

$message = new Message( new Message\PhoneNumber('420777777777'), new Message\Text('testmelding') );

Du kan selvfølgelig også angi teksten etter at instansen av objektet er opprettet, med metoden text($text, array $variables = [])

$message = new Sms\Message(); $message->phoneNumber('420777777777'); // streng $message->text('testmelding'); // streng $message->text(new Message\Text('testmelding')); $message->text( 'Hei <first_name> <last_name>', [ 'first_name' => 'Ola', 'last_name' => 'Nordmann' ]); // utfylling av variabler; resultatet er "Hei Ola Nordmann"

For å hente meldingsteksten kan du bruke metoden getText(), som alltid returnerer en instans av objektet `Message\Text`.

/** @var Message\Text $text */ $text = $message->getText();

JSON-støtte

Objektet BulkGate\Sms\Message implementerer grensesnittet \JsonSerializable, slik at du kan konvertere det til JSON-format med json_encode().

/** @var BulkGate\Sms\Message $message */ $message = new Message('420777777777', 'testmelding'); echo json_encode($message);

Utdataene er:

{ "number": { "number": "420777777777", "iso": null }, "text": "testmelding", "status": "preparation", "price": 0.0, "credit": 0.0, "id": null, "scheduled": null }

Nøklene status, price, credit og id fylles ut først etter sending, scheduled når du kaller schedule().

Konvertering til streng

Objektet BulkGate\Sms\Message implementerer den magiske metoden __string()

/** @var BulkGate\Sms\Message $message */ $message = (string) $message; // til variabelen echo $message; // til utdataene

Utdataene er:

420777777777: testmelding

Konvertering til array

/** @var BulkGate\Sms\Message $message */ $array = $message->toArray();

Flytende grensesnitt

Flytende grensesnitt (fluent interface) er en teknikk for å kjede sammen metodekall.

$message = new Sms\Message(); $message->phoneNumber('420777777777') ->text('testmelding');

Informasjon etter sending

Etter at du har sendt meldingen, kan du hente prisen, statusen og ID-en til meldingen fra den.

$id = $message->getId(); // meldings-ID $status = $message->getStatus(); // status $price = $message->getPrice(); // pris $credit = $message->getCredit(); // kredittsaldo etter sending

Planlegging av meldingen

Metoden schedule() angir sendetidspunktet som et Unix-tidsstempel. Uten parameter avbryter den planleggingen.

$message->schedule(strtotime('2026-01-15 09:00')); // planlegg $message->schedule(); // avbryt planleggingen
Var denne siden nyttig?