WIADOMOŚCI

Wyjaśnienie przejrzystego przepływu dostarczania numerów PIN

Published on:28 / December / 2015

Wysyłanie numerów PIN, aby pomóc użytkownikom w uwierzytelnieniu kont, to nie nowość, ale przejrzysty przepływ, dostęp do informacji o tym, czy numer PIN został dostarczony, możliwość przekazania tej informacji klientowi – to zupełnie nowa historia.

Przepływy uwierzytelniania dwuczynnikowego na bazie SMS-ów są proste. Gdy tylko użytkownik podejmie próbę zalogowania się na swoim koncie, otrzymuje wiadomość SMS z osobistym numerem identyfikacyjnym (PIN), który stanowi dodatkowe zabezpieczenie dostępu. To może pomóc temu zapobiec.

Wydaje się to bardzo łatwe – napisać dwie linijki kodu, wprowadzić go do aplikacji i gotowe – właśnie dodaliśmy całą logikę uwierzytelniania dwuczynnikowego. Tak po prostu zwiększyliśmy bezpieczeństwo konta użytkownika.

Zwykle wiadomości dostarczane są do użytkowników w ciągu kilku sekund, ale jeśli tak się nie stanie? Czasami wiadomość nie jest dostarczana błyskawicznie. Zastanawialiście się kiedyś, dlaczego? Czy chcecie od razu wiedzieć, co się stało z wiadomością? To dobrze, bo zaraz wam pokażemy, jak to osiągnąć.

W tym samouczku krok po kroku dotyczącym integracji pełnego oprogramowania Messaging Suite z procesami przy użyciu API HTTP firmy Infobip przedstawiamy:

*Aby bliżej zapoznać się z API SMS HTTP firmy Infobip, odwiedź samouczek na początek.

Wysyłanie SMS-ów

Aby zacząć wysyłać wiadomości SMS, trzeba utworzyć żądanie HTTP POST do https://api.infobip.com/sms/1/text/advanced

Nagłówek powinien zawierać uwierzytelnienie i rodzaj treści.

  • Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
  • Content-Type: application/json

Pokażemy przykłady, jak wysłać SMS, ustawić parametr, aby otrzymać pośredni i ostateczny raport doręczenia oraz jak ustawić śledzenie SMS-ów dla współczynników konwersji.

JSON


POST /sms/1/text/advanced HTTP/1.1
Host: api.infobip.com
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Content-Type: application/json

{
   "messages":[
      {
         "from":"InfoSMS",
         "destinations":[
            {
               "to":"41793026731"
            }
         ],
         "text":"Your PIN code is 1a2B3c. Enjoy our app!",
         "intermediateReport":true,
         "notifyUrl":"http://www.example.com/sms/advanced"
      }
    ],
   "tracking":{
         "track":"SMS",
         "type":"One_Time_Pin"
   }
}

Jako odpowiedź powinniście otrzymać status 200 OK ze szczegółami wiadomości w treści odpowiedzi:

JSON


HTTP/1.1 200 OK
Content-Type: application/json

{
  "bulkId": "1446634544520356423",
  "messages": [
    {
      "to": "41793026731",
      "status": {
        "groupId": 1,
        "groupName": "PENDING",
        "id": 7,
        "name": "PENDING_ENROUTE",
        "description": "Message sent to next instance"
      },
      "smsCount": 1,
      "messageId": "8ef699bc-d4c6-4cf6-8d6e-9a9aa62ad93a"
    }
  ]
}

Jednym z parametrów otrzymanych w odpowiedzi jest identyfikator wiadomości (messageId) służący do przesyłania współczynników konwersji na platformę Infobip.

Aby uzyskać dalsze wyjaśnienia i przykłady wysyłania wiadomości, prosimy przejść na stronę z dokumentacją.

Pośrednie raporty doręczenia

Pośrednie raporty doręczenia służą do otrzymywania w czasie rzeczywistym informacji na temat wiadomości.

Gdy tylko system firmy Infobip otrzyma jakikolwiek niestały błąd GSM (tj. EC_ABSENT_SUBSCRIBER), błąd ten zostanie przesłany na podany adres Notify URL* na serwerze callback. Poza błędami GSM będziemy także przesyłać w czasie rzeczywistym informacje dotyczące cen, statusu wiadomości oraz sieci i kodów kraju.

*Adres Notify URL ustawiany jest jako jeden z parametrów metody API pełnofunkcyjnych wiadomości tekstowych.

Aby uzyskać więcej informacji na temat kodów błędów GSM i statusów wiadomości, prosimy odwiedzić stronę kodów odpowiedzi.

Poniżej przedstawiamy przykład pośredniego raportu doręczenia, który zostanie wypchnięty na serwer callback:

JSON


{
  "results": [
    {
      "bulkId": "BULK-ID-123-xyz",
      "messageId": "c9823180-94d4-4ea0-9bf3-ec907e7534a6",
      "to": "41793026731",
      "sentAt": "2015-10-04T13:01:52.933+0000",
      "doneAt": "2015-10-04T13:02:00.134+0000",
      "smsCount": 1,
      "price": {
        "pricePerMessage": 0.0001000000,
        "currency": "EUR"
      },
      "status": {
        "groupId": 3,
        "groupName": "PENDING",
        "id": 1,
        "name": "PENDING_WAITING_DELIVERY",
        "description": "Message sent, waiting for delivery report"
      },
      "error": {
        "groupId": 1,
        "groupName": "HANDSET_ERRORS",
        "id": 27,
        "name": "EC_ABSENT_SUBSCRIBER",
        "description": "Absent Subscriber",
        "permanent": false
      }
    }
  ]
}

Ostateczne raporty doręczenia

Gdy tylko system firmy Infobip otrzyma ostateczne raporty doręczenia wysłanych wiadomości, zostaną one przesłane na podany adres Notify URL na serwerze callback.

Nadawca wiadomości otrzyma wynik pod adresem Notify URL, który będzie miał taką samą strukturę jak pośredni raport doręczenia:

JSON


{
  "results": [
    {
      "bulkId": "BULK-ID-123-xyz",
      "messageId": "MESSAGE-ID-123-xyz",
      "to": "41793026727",
      "sentAt": "2015-06-04T13:01:52.937+0000",
      "doneAt": "2015-06-04T13:02:01.204+0000",
      "smsCount": 1,
      "price": {
        "pricePerMessage": 0.0001000000,
        "currency": "EUR"
      },
      "status": {
        "groupId": 3,
        "groupName": "DELIVERED",
        "id": 5,
        "name": "DELIVERED_TO_HANDSET",
        "description": "Message delivered to handset"
      },
      "error": {
        "groupId": 0,
        "groupName": "OK",
        "id": 0,
        "name": "NO_ERROR",
        "description": "No Error",
        "permanent": false
      }
    }
  ]
}

Rozwiązanie do śledzenia konwersji

Podczas prowadzenia kampanii SMS-owej jedną z najważniejszych rzeczy jest śledzenie jej efektów i pomiar współczynników konwersji użytkowników. Na przykład, wysyłając jednorazowe numery PIN SMS-em należy koniecznie śledzić współczynniki konwersji, aby móc zoptymalizować przepływ i procesy.

Śledzenie konwersji wymaga każdorazowej inicjalizacji po rozpoczęciu procesu i zakończenia po dokonaniu konwersji. Dopiero po zamknięciu pętli uznajemy konwersję za udaną.

PROCES INICJALIZACJI ŚLEDZENIA KONWERSJI

Nasze rozwiązanie do śledzenia SMS-ów będzie automatycznie śledzić każdą wiadomość wysłaną za pośrednictwem platformy Infobip. Wystarczy ustawić parametr i podać rodzaj kampanii, a śledzenie SMS-ów będzie prowadzone automatycznie.

Funkcje te ustawia się w obiektach śledzenia podczas wysyłania wiadomości SMS.

PRZESŁANIE WSPÓŁCZYNNIKA KONWERSJI

Gdy użytkownik wykona czynność po otrzymaniu SMS-a, na przykład wpisze jednorazowy numer PIN w aplikacji, można przesłać tę informację do nas, aby umożliwić nam pomiar współczynników konwersji.

Do przesłania współczynnika konwersji wystarczy podać tylko identyfikator wiadomości (messageId) otrzymany po wysłaniu wiadomości SMS. Identyfikator wiadomości należy przesłać do naszego punktu końcowego, kiedy nastąpi konwersja. Punkt końcowy do przesyłania współczynników konwersji:

Przykład: przesyłanie identyfikatora wiadomości dla przekonwertowanych wiadomości

W tym przykładzie przedstawiamy, jak przesłać identyfikator wiadomości, gdy dojdzie do konwersji.

JSON


POST /ct/1/log/end/9304a5a3ab19-1ca1-be74-76ad87651ed25f35 HTTP/1.1
Host: api.infobip.com
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Content-Type: application/json
As a response, you will receive a processKey that is used for getting conversion rates and statistics:
JSON
{
    "processKey": "A37D448C1ACCA02FABA745522558326C" 
} 

Jako odpowiedź otrzymacie klucz procesowy processKey do pozyskania współczynników konwersji i danych statystycznych:

JSON

{
    "processKey": "A37D448C1ACCA02FABA745522558326C" 
} 

Aby uzyskać dalszą pomoc w zwiększeniu przejrzystości przepływu uwierzytelniania dwuczynnikowego w swojej firmie, prosimy o kontakt pod adresem .(JavaScript must be enabled to view this email address)!