Aktualizacja SMSFall v. 1.1.5 Data publikacji: 20-05-2013 Wersja Standard i Plus: we właściwościach terminala dodano wskaźnik poziomu sygnału urządzenia GSM wyrażony w dbm. Podstawa teoretyczna: http://pl.wikipedia.org/wiki/dbm. Wartość wskaźnika jest aktualizowana po naciśnięciu przycisku Odśwież w menu podręcznym terminala: we właściwościach zadania wysyłania dodano pole ilości wysłanych SMS-ów: pole Ilość błędów we właściwościach zadania wysyłania zawsze widoczne niezależnie od ilości błędów (wcześniej było widoczne gdy ilość błędów > 0):
Wersja Plus: nowe HTTP API wersja graficzna (format HTTP) znajduje się na domyślnym adresie serwera. Dla lokalnego komputera to http://localhost Uwaga! Poprzednia wersja HTTP API została przeniesiona do podkatalogu old czyli http://localhost/old JSON API umożliwia otrzymywanie odpowiedzi od programu jako tablicy JSON w procesie czytania, edycji, usuwania oraz dodawania nowych wpisów (obiektów) do programu SMSFall. Używając protokołu JSON do komunikacji z aplikacją należy użyć w nagłówku GET zmiennej output=json. Przykłady użycia JSON API dla PHP do pobrania z: http://smsfall.pl/download/apitest.zip Logowanie: do logowania służą parametry nagłówka user oraz password. Nazwa użytkownika to admin natomiast hasło definiuje się w opcjach programu (zakładka Serwer HTTP). Jako obiekty w API programu rozumiane są : Obiekt Task Subtask Reply Contact Contactgroup Opis Zadanie wysyłania Podzadanie (pojedynczy SMS) Odpowiedź (SMS) Kontakt Grupa kontaktów Na obiektach możliwe jest wykonanie następujących operacji: Operacja/Obiekt Task Subtask Reply Contact Contactgroup find x x x x x edit x - x x x delete x x x x x add x - - x x search - - - - - Przykład: Strona http:/localhost/findreply?id=11&output=json służy do wyświetlania odpowiedzi SMS dla podanego id. Dla operacji find, edit, delete należy podać parametr nagłówka GET/POST id. Dla operacji add oraz edit należy podać dodatkowe parametry. Nazwy parametrów są dostępne po wyświetleniu obiektu za pomocą operacji find.
Przykład: Zapytanie wyświetlające kontakt o id równym 1 http://localhost/findcontact?id=1&output=json&user=admin&password=adminpass "status": "data ready", "object": "firstname": "Jan", "surname": "Kowalski", "phonenumber": "+48999999999", "comment": "Brak komantarza", "groups": [ "group": "id": 1 ], "street": "Poznańska 999/999", "city": "Warszawa", "zip": "99-999", "region": "mazowieckie", "country": "Polska", "vocative": "Janie", "gender": 1, "email": "kontakt@modaiuroda999.pl", "www": "modaiuroda999.pl", "companyname": "Moda i Uroda Sp. z o.o.", "nip": "9999999999", "field1": "Pole 1", "field2": "Pole 2", "field3": "Pole 3", "field4": "Pole 4"
Przykład: Aktualizacja treści wiadomości w zadaniu wysyłania o id równym 1. http://localhost/edittask?output=json&id=1&content=test1&user=admin&password=adminpass "status": "updated succefully", "object": "nationalcharacters": false, "priority": 2, "deliveryreport": true, "flash": false, "activity": true, "finished": false, "finishdate": null, "matchresponses": true, "sender": "number": "", "propagation": "propagationtimefrom": "01-01-1970 00:01:00", "propagationtimeto": "01-01-1970 23:58:59", "propagationdatefrom": "01-01-2013 00:00:00", "propagationdateto": "31-12-2013 00:00:00", "saturdayexclude": false, "sundayexclude": false, "subtasks": [ "id": 1 ], "count": 1, "countsended": 0, "counterrors": 0, "counterrorsfatal": 0, "content": "Test1", "archive": false, "entrydate": "20-05-2013 01:54:10"
Przykład: Dodanie nowego zadania wysyłania. http://localhost/addtask? content=test&archive=false&nationalcharacters=false&priority=2&deliveryreport=true&flash=false&a ctivity=true&matchresponses=true&sender=1&propagationtimefrom=00:01:00&propagationtimeto=2 3:58:59&propagationdatefrom=01-01-2013&propagationdateto=31-12- 2013&saturdayexclude=false&sundayexclude=false&subtasksId=1,2,3&output=json&user=admin&p assword=adminpass "status": "added succefully", "object": "nationalcharacters": false, "priority": 2, "deliveryreport": true, "flash": false, "activity": true, "finished": false, "finishdate": null, "matchresponses": true, "sender": "number": "", "propagation": "propagationtimefrom": "01-01-1970 00:01:00", "propagationtimeto": "01-01-1970 23:58:59", "propagationdatefrom": "01-01-2013 00:00:00", "propagationdateto": "31-12-2013 00:00:00", "saturdayexclude": false, "sundayexclude": false, "subtasks": [ "id": 2 ], "count": 0, "countsended": 0, "counterrors": 0, "counterrorsfatal": 0, "id": 2, "content": "Test", "archive": false, "entrydate": "20-05-2013 02:09:40"
W zależności od operacji możliwe są następujące statusy odpowiedzi: Status not logged in invalid id parameter id not exists data ready unexpected error deleted succefully not deleted added succefully updated succefully invalid parameter: x Opis Nie zalogowany Parametr id jest nieprawidłowy Nie podano parametru id Dane są dostępne Wystąpił nieoczekiwany błąd Kasowanie zakończone pomyślnie Kasowanie niepomyślne Dodano Zaktualizowano Brak parametru/parametr nieprawidłowy W przypadku kasowania kontaktów bądź grup kontaktów które posiadają zależne wpisy (wysłane/otrzymane SMS-y) możliwe jest podanie parametru option w nagłówku żądania: Wartość option option=0 option=1 option=2 Siła kasowania Nie kasuj kontaktów posiadających zależne wpisy Kasuj kontakty, nie kasuj zależnych wpisów (wychodzące/otrzymane SMS) Kasuj kontakty, kasuj zależne wpisy (wychodzące/otrzymane SMS) W celu dodania do grupy kontaktów kontaktów należy użyć parametru groups dla którego po przecinkach podajemy id kolejnych kontaktów. W celu dodania do zadania wysyłania numerów kontaktów można użyć dwóch parametrów: subtasks numery telefonów po przecinkach (+48999999999,+48888888888) subtasksid id kontaktów zapisanych w książce kontaktów programu (1,2,3) Uwaga: podając podczas edycji wartości dla parametru subtasks albo subtasksid dodaje się kolejne SMS-y dla zadania wysyłania. Pozostałe przykłady użycia JSON API dla PHP do pobrania z: http://smsfall.pl/download/apitest.zip