Rechercher une page de manuel
gammu-smsd-tables
Langue: cs
Version: Srpen 17, 2009 (fedora - 01/12/10)
Section: 7 (Divers)
Sommaire
JMÉNO
gammu-smsd-tables - popis tabulek pro databázové služby gammu-smsd(1)
POPIS
gammu-smsd(1) podporuje několik služeb. Aktuálně použitá je zvolená v konfiguračním souboru gammu-smsdrc(5).Jednotlivé služby jsou popsány v samostatných manuálových stránkách. Tato manuálová stránka popisuje strukturu databáze a potřebné tabulky.
Několik SMS démonů může sdílet jedinou databázi. Pokud v jejich nastavení nezadáte PhoneID, všechny jsou brány jako rovnocenné a kterýkoliv z nich může odeslat odchozí zprávu. Pokud nastavíte PhoneID a použijete ho při vkládání zprávy to tabulky outbox (gammu-smsd-inject(1) to dělá), každý SMS démon bude mít vlastní frontu odchozích zpráv.
Přijímání zpráv
Přijaté zprávy jsou ukládány v tabulce inbox.
Odesílání zpráv
Zprávy k odeslání jsou čteny z tabulky outbox a jejich případné další části z tabulky outbox_multipart.
Popis tabulek
- daemons
-
Informace o běžících démonech.
- gammu
-
Tato tabulka obsahuje jedinou hodnotu - verzi databázového schématu. V části HISTORIE se můžete podívat, co se měnilo.
- inbox
-
Tabulka, ve které jsou ukládány přijaté zprávy.
Popis sloupců:
UpdatedInDB (timestamp)
kdy byl tento záznam aktualizovánReceivingDateTime (timestamp)
kdy byla přijata SMSText (text)
zakódovaný text zprávy (pro všechny SMS)SenderNumber (varchar(20))
číslo odesílatele SMSCoding (enum('Default_No_Compression', 'Unicode_No_Compression', '8bit', 'Default_Compression', 'Unicode_Compression'))
kódování textu SMSUDH (text)
zakódovaná hlavička uživatelských dat (UDH)SMSCNumber (varchar(20))
číslo centra zpráv (SMSC)Class (integer)
třída SMS nebo -1 (0 je jen pro zobrazení na displej, 1 je normální SMS)TextDecoded (varchar(160))
dekódovaný text (pro zprávy ve výchozí abecedě nebo unicode)ID (integer unsigned)
identifikátor zprávy (pro použití v externích aplikacích)RecipientID (text)
který démon Gammu přidal tento záznamProcessed (enum('false', 'true'))
můžete použít pro označení, jestli byla zpráva zpracována nebo nebyla - outbox
-
Zprávy určené k odeslání by měly být uloženy v této tabulce. Pokud zpráva obsahuje více částí, další části jsou uloženy v tabulce outbox_multipart.
Popis sloupců:
UpdatedInDB (timestamp)
kdy byl tento záznam aktualizovánInsertIntoDB (timestamp)
kdy byla zpráva vložena do databázeSendingDateTime (timestamp)
nastavte na libovolnou hodnotu, pokud chcete vynutit poslání zprávy i po naplánovaném časeText (text)
Text SMS zakódovaný šestnáctkově ve správné znakové sadě. Pokud chcete použít pole TextDecoded, nechte zde NULL (nebo prázdný text).DestinationNumber (varchar(20))
číslo příjemceCoding (enum('Default_No_Compression', 'Unicode_No_Compression', '8bit', 'Default_Compression', 'Unicode_Compression'))
kódování textu SMSUDH (text)
User Data Header ((hlavička uživatelských dat) zapsaná v šestnáckové soustavě, která bude použita při vytváření zprávy. Pokud není uvedena, zpráva bude odeslána jako čistě textová.Class (integer)
třída SMS nebo -1 (0 je normální SMS, 1 jen pro zobrazení na displej)TextDecoded (varchar(160))
text zprávy v "člověkem čitelné" podoběID (integer unsigned)
číslo SMS/SMS sekvenceProsím uvědomte si, že toto číslo musí být unikátní i pro tabulku sentitems, takže opětovné používání ID zpráv nemusí být nutně dobrý nápad.
MultiPart (enum('false','true'))
informace, zda se v tabulce outbox_multipart nacházejí další části této SMS zprávyRelativeValidity (integer)
platnost SMS zakódovaná podle GSM specifikacíSenderID (text)
která instance SMSD by měla odesílat tuto sekvenciSendingTimeOut (timestamp)
použito SMSD pro vlastní účelyDeliveryReport (enum('default','yes','no'))
při výchozí hodnotě bude nastavení doručenky záviset na nastavení SMSD, při yes se doručenka vynutíCreatorID (text)
identifikace odesílajícího démona, musí odpovídat PhoneID v konfiguraci SMSD, aby SMSD zprávu zpracoval - outbox_multipart
-
Data pro odchozí zprávy, které jsou z více částí.
Popis sloupců:
ID (integer unsigned)
Text (text)
Coding (enum('Default_No_Compression', 'Unicode_No_Compression', '8bit', 'Default_Compression', 'Unicode_Compression'))
UDH (text)
Class (integer)
TextDecoded (varchar(160))
ID (integer unsigned)
mají stejný význam jako v tabulce outboxSequencePosition (integer)
kolikátá zpráva je tato v SMS sekvenci (začíná se od 2, první část je uložena v tabulce outbox). - phones
-
Informace o připojených telefonech. Tato tabulka je pravidelně obnovována a můžete v ní najít informace jako stav baterie nebo síla signálu.
Popis sloupců:
ID (text)
hodnota PhoneIDUpdatedInDB (timestamp)
kdy byl tento záznam aktualizovánInsertIntoDB (timestamp)
kdy byl tento záznam vytvořen (kdy byl telefon připojen)TimeOut (timestamp)
kdy tento záznam expirujeSend (boolean)
v současné době vždy trueReceive (boolean)
v současné době vždy trueIMEI (text)
IMEI telefonuClient (text)
jméno klienta, obvykle text Gammu a verzeBattery (integer)
stav baterie v procentech (nebo -1 pokud není znám)Signal (integer)
úrověň signálu v procentech (nebo -1 pokud není znám)Sent (integer)
Počet odeslaných SMS zpráv (SMSD tento čítač nenuluje, takže může přetéct).Received (integer)
Počet přijatých SMS zpráv (SMSD tento čítač nenuluje, takže může přetéct). - sentitems
-
Informace o odeslaných (a neodeslaných) zprávách a jejich stavu. Při zapnutých doručenkách je stav zprávy aktualizován při jejím přijetí.
Popis sloupců:
UpdatedInDB (timestamp)
kdy byl tento záznam aktualizovánInsertIntoDB (timestamp)
kdy byla zpráva vložena do databázeSendingDateTime (timestamp)
kdy byla zpráva odeslánaDeliveryDateTime (timestamp)
Čas přijetí doručenky (pokud jsou zapnuty).Status (enum('SendingOK', 'SendingOKNoReport', 'SendingError', 'DeliveryOK', 'DeliveryFailed', 'DeliveryPending', 'DeliveryUnknown', 'Error'))
Stav odesílání zprávy. SendingError znamená, že telefonu se nepodařilo zprávu odeslat, Error indikuje jinou chybu při zpracovávání zprávy.- SendingOK - Zpráva byla odeslána, čeká se na doručenku.
- SendingOKNoReport - Zpráva byla odeslána bez požadavku na doručenku.
- SendingError - Odesílání selhalo.
- DeliveryOK - Doručenka dorazila a potvrdila úspěšné doručení.
- DeliveryFailed - Doručenka dorazila a nahlásila chybu při doručování.
- DeliveryPending - Doručenka dorazila a obsahuje informaci o zpořděném doručení.
- DeliveryUnknown - Doručenka dorazila, ale informuje o neznámém stavu.
- Error - Došlo k nějaké chybě při odesílání (obvykle se jedná o chybu SMSD).StatusError (integer)
Stav z doručenky, hodnoty jsou definovány ve specifikaci GSM.Text (text)
text SMS zprávy v šestnáctkovém formátuDestinationNumber (varchar(20))
číslo adresáta SMSCoding (enum('Default_No_Compression', 'Unicode_No_Compression', '8bit', 'Default_Compression', 'Unicode_Compression'))
kódování textu SMSUDH (text)
hlavička uživatelských dat (UDH) v šestnáctkovém formátuSMSCNumber (varchar(20))
číslo servisního centra (SMSC), které odeslalo zprávuClass (integer)
třída SMS nebo -1 (0 je normální SMS, 1 jen pro zobrazení na displej)TextDecoded (varchar(160))
text zprávy v "člověkem čitelné" podoběID (integer unsigned)
SMS IDSenderID (text)
Vkládání zpráv pomocí SQL
která instance SMSD odeslala tuto sekvenci
SequencePosition (integer)
pořadí SMS v SMS sekvenci
TPMR (integer)
reference zprávy, podle specifikací GSM
RelativeValidity (integer)
platnost SMS zakódovaná podle GSM specifikací
CreatorID (text)
zkopírováno CreatorID z tabulky outbox, odpovídá PhoneID
- pbk
-
SMSD tuto tabulku v současné době nepoužívá, je zde jen pro použití v aplikaci.
- pbk_groups
-
SMSD tuto tabulku v současné době nepoužívá, je zde jen pro použití v aplikaci.
HISTORIE
Historie verzí schématu:
11 - položky pro ukládání textu zpráv již nejsou omezeny na 160 znaků, ale může se jednat o libovolně dlouhé texty (1.25.92)
10 - DeliveryDateTime je nyní NULL pokud zpráva nebyla doručena, přidáno několik indexů.
9 - přidána počítadla přijatých a odeslaných zpráv do tabulky phones
8 - přidána tabulka phones
7 - do tabulek přidáno CreatorID (obsahuje PhoneID, pokud je nastaveno)
PŘÍKLAD
Vytváření tabulek
SQL skripty potřebný pro vytvoření všech tabulek pro většinu databází je obsažen v dokumentaci Gammu (docs/sql). Ta také obsahuje pár PHP skriptů pro práci s databází.
Například vytvoření tabulek pro SQLite vypadá následovně:
sqlite3 smsd.db < docs/sql/sqlite.sql
Vkládání zpráv pomocí SQL
Pro posílání zpráv buď použijte gammu-smsd-inject(1), které za vás udělá veškerou magii, nebo můžete vložit zprávy ručně. Nejjednodušší je vložit obyčejnou textovou zprávu:
INSERT INTO outbox (
DestinationNumber,
TextDecoded,
CreatorID,
Coding
) VALUES (
'800123465',
'This is a SQL test message',
'Program',
'Default_No_Compression'
);
Vkládání dlouhých zpráv pomocí SQL
Vkládání zprávy s více částmi je poněkud náročnější, musíte také vytvořit UDH hlavičku. Například dlouhá textová zpráva by vypadala následovně (povšimněte si, že UDH obsahuje počet zpráv a pořadá zprávy v posledních dvou bajtech, hodnota D3 v příkladu je identifikace zprávy a může být libovolná):
INSERT INTO outbox (
CreatorID,
MultiPart,
DestinationNumber,
UDH,
TextDecoded,
Coding
) VALUES (
'Gammu 1.23.91',
'true',
'123465',
'050003D30201',
'Mqukqirip ya konej eqniu rejropocejor hugiygydewl tfej nrupxujob xuemymiyliralj. Te tvyjuh qaxumur ibewfoiws zuucoz tdygu gelum L ejqigqesykl kya jdytbez',
'Default_No_Compression'
)
INSERT INTO outbox_multipart (
SequencePosition,
UDH,
Class,
TextDecoded,
ID,
Coding
) VALUES (
2,
'050003D30202',
'u xewz qisubevumxyzk ufuylehyzc. Nse xobq dfolizygqysj t bvowsyhyhyemim ovutpapeaempye giuuwbib.',
<ID_OF_INSERTED_RECORD_IN_OUBOX_TABLE>,
'Default_No_Compression'
)
DALŠÍ INFORMACE
Databázové služby: gammu-smsd-mysql(7), gammu-smsd-pgsql(7), gammu-smsd-dbi(7)gammu-smsd(1), gammu-smsdrc(5), gammu(1), gammurc(5)
AUTOR
gammu-smsd a tuto manuálovou stránku napsal Michal Čihař <michal@cihar.com>.COPYRIGHT
Copyright © 2009 Michal Čihař a další autoři. Licence GPLv2: GNU GPL verze 2 <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>Tento program je svobodný software; můžete jej šířit a modifikovat. Není poskytována ŽÁDNÁ ZÁRUKA, v rozsahu jaký je povolen zákonem.
HLÁŠENÍ CHYB
Prosím hlašte chyby na <http://bugs.cihar.com>.Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre