HTTP API - akcja 'receivemessage'
Ta akcja może być używana do odbierania wiadomości SMS z Bramki SMS przy użyciu HTTP polling. HTTP polling oznacza, że pobierasz wiadomości SMS z folderu skrzynki odbiorczej bramki, tak jak pobrałbyś stronę internetową. W tej sekcji możesz uzyskać informacje o tym, jak używać akcji receivemessage, jakie są parametry, oraz zostanie przedstawiony przykładowy żądanie HTTP do pobierania przychodzących wiadomości.
Opis
Aby pobrać przychodzące wiadomości tekstowe, użyj następującego formatu URL:
https://127.0.0.1:9508/api?action=receivemessage&username=UUUUU&password=PPPPP&
folder=inbox&limit=2&afterdownload=delete
Zamiast 127.0.0.1 należy podstawić nazwę hosta lub adres IP komputera, na którym zainstalowana jest bramka SMS. Numer portu 9508 to domyślny numer portu HTTP bramki SMS Ozeki. Jego numer można skonfigurować w interfejsie użytkownika Ozeki 10 SMS Gateway, klikając przycisk Zaawansowane na pasku narzędzi.
Nazwę użytkownika i hasło należy zastąpić zamiast "UUUUU" i "PPPPP". Nazwa użytkownika i hasło identyfikują użytkownika utworzonego w bramce SMS. Gdy wywołasz akcję receivemessage poprzez wywołanie URL, pobierzesz wiadomości ze skrzynki odbiorczej użytkownika określonego w zapytaniu za pomocą nazwy użytkownika i hasła.
Parametr folder wiadomości powinien być ustawiony na inbox.
Parametr limit określa liczbę wiadomości, które zostaną pobrane. Zaleca się, aby pobierać mniej niż 1000 wiadomości w jednym żądaniu. Pozostałe wiadomości można pobrać w kolejnych żądaniach.
Parametr afterdownload może być używany do usuwania wiadomości z bramki SMS po ich pomyślnym pobraniu.
Przykładowe żądanie URL
https://127.0.0.1:9508/api?action=receivemessage&username=admin&password=abc123&
folder=inbox&limit=2&afterdownload=delete
Przykładowa odpowiedź
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: 824 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE response PUBLIC "-//OZEKI//DTD XML 1.0//EN" "http://www.ozekisms.com/DTD/response.xml"> <response> <action>receivemessage</action> <data> <message> <messageid>ERFAV23D</messageid> <originator>06301234567</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Witaj świecie</messagedata> <senttime>2008-01-16 10:04:00</senttime> <receivedtime>2008-01-18 20:58:04</receivedtime> </message> <message> <messageid>GYT4455D</messageid> <originator>06209994444</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Druga wiadomość</messagedata> <senttime>2008-01-16 10:08:00</senttime> <receivedtime>2008-01-18 20:58:05</receivedtime> </message> </data> </response>
Parametry żądania
Parametr | Opis | Dopuszczalne wartości | Przykład | W/O* |
action | Określa polecenie HTTP API | receivemessage | action=receivemessage | W |
username | Określa nazwę użytkownika. Parametry username i password są używane do uwierzytelnienia użytkownika. Po uwierzytelnieniu wiadomości będą pobierane z jego skrzynki odbiorczej. Wartość musi być zakodowana w URL. | wartość tekstowa, maksymalna długość to 16 znaków | username=admin | W |
password | Określa hasło. Parametry username i password są używane do uwierzytelnienia użytkownika. Po uwierzytelnieniu wiadomości będą pobierane z jego skrzynki odbiorczej. Wartość musi być zakodowana w URL. | wartość tekstowa, maksymalna długość to 16 znaków | password=abc123 | W |
folder | Określa nazwę folderu. Domyślnie wiadomości będą pobierane z folderu skrzynki odbiorczej. Możesz użyć akcji receivemessage do pobierania wiadomości również z innych folderów. |
inbox (domyślnie) outbox deliveredtonetwork deliveredtohandset deliveryfailed |
folder=inbox | O |
limit | Określa maksymalną liczbę wiadomości do pobrania z serwera w ramach żądania. Pozostałe wiadomości można pobrać w kolejnych żądaniach. | wartość całkowita, domyślny limit to 1000 | limit=10 | O |
afterdownload | Określa sposób obsługi wiadomości po pomyślnym
pobraniu. Wiadomości mogą zostać usunięte z bramki SMS; mogą
zostać oznaczone jako pobrane lub mogą pozostać nietknięte. Jeśli
pozostaną nietknięte, przy następnym żądaniu pobrania będą
pobierane ponownie. |
delete (domyślnie) mark untouch |
afterdownload=delete | O |
responseformat | Możesz określić format przychodzących wiadomości użytkownika. | xml, html, url-encoded | responseformat=xml | O |
* W = Wymagany parametr, O = Opcjonalny parametr
Parametry odpowiedzi
(format odpowiedzi xml)
Parametr | Opis | Możliwe wartości | Przykład |
message | Zawiera pojedynczą wiadomość. Sekcja danych może zawierać wiele wiadomości. Liczba wiadomości w danych wiadomości może być mniejsza lub równa wartości parametru limit | <message> <messageid>ERFAV23D</messageid> <originator>06301234567</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Hello world</messagedata> <senttime>2028-01-16 10:04:00</senttime> <receivedtime>2028-01-18 20:58:04</receivedtime> </message> |
|
message.messageid | Zawiera referencję wiadomości, która może być użyta do śledzenia wiadomości w bramce SMS. Ta referencja jest również używana do identyfikacji raportów dostarczenia do sieci i dostarczenia do telefonu lub do zapytania o informacje dotyczące wiadomości. | wartość tekstowa, maksymalna długość to 16 znaków | <messageid>ERFAV23D</messageid> |
message.originator | Zawiera numer telefonu nadawcy. Jest to numer telefonu komórki, która wysłała wiadomość. | wartość tekstowa, maksymalna długość to 16 znaków | <recipient>06301234567</recipient> |
message.recipient | Zawiera adres odbiorcy. Jest to numer telefonu, na który została wysłana wiadomość. | wartość tekstowa, maksymalna długość to 16 znaków | <recipient>06201112222</recipient> |
message.messagetype | Zawiera identyfikator typu wiadomości określony w Specyfikacji Typu Wiadomości Mobilnej. W większości przypadków będzie to SMS:TEXT. | wartość tekstowa, maksymalna długość to 1024 znaków | <recipient>SMS:TEXT</recipient> |
message.messagedata | Zawiera dane wiadomości. Dla wiadomości tekstowych jest to tekst wiadomości SMS. Dla innych typów wiadomości jest to struktura XML określona w Specyfikacji Typu Wiadomości Mobilnej. Dane wiadomości są kodowane jako UTF8. | wartość tekstowa | <messagedata>Hello world</messagedata> |
message.senttime | Zawiera znacznik czasu, który informuje, kiedy wiadomość została wysłana z telefonu nadawcy. | Wartość daty i czasu w następującym formacie: RRRR-MM-DD gg:mm:ss | <senttime>2028-01-16 10:04:00</senttime> |
message.receivedtime | Zawiera znacznik czasu, który informuje, kiedy wiadomość została odebrana przez bramkę SMS. | Wartość daty i czasu w następującym formacie: RRRR-MM-DD gg:mm:ss | <senttime>2028-01-18 20:58:04</senttime> |
Podsumowanie
W tym artykule znajdziesz wszystkie informacje niezbędne do korzystania z akcji ‘receivemessage’ z naszym HTTP SMS API.
Dzięki temu rozwiązaniu możesz wykorzystać zalety http polling do odbierania przychodzących wiadomości tekstowych. Dołożyliśmy wszelkich starań, aby było to proste i aby przeprowadzić Cię przez wszystkie szczegóły w jak najprostszy sposób. Jeśli już wykonałeś kroki, zobaczyłeś korzyści płynące z korzystania z naszego HTTP SMS API. Jeśli jeszcze nie zacząłeś prac nad ukończeniem swojego systemu SMS za pomocą API, nie trać czasu. Zacznij teraz!
Jeśli chcesz poznać więcej przydatnych informacji na temat zalet innych podobnych rozwiązań SMS, odwiedź stronę o wysyłaniu wiadomości z tym samym systemem.
Mam nadzieję, że ta strona okaże się przydatna dla wszystkich czytelników, a szczególnie dla początkujących.
More information