ComInfo - Komunikačný protokol
<viewsecurity service />
Obsah
metóda getStatusOfChip
Získa pre dané fyzické číslo čipu stav čipu s rovnakými parametrami, ako readStatusOfChip. Vstup
- {physicalChipNum} - číslo čipu
Funkcia vráti rovnakú štruktúru a hodnoty pre dané fyzické číslo čipu, ako funkcia readStatusOfChip.
<command name=”getStatusOfChip”> <values> <value name=”physicalChipNum” type=”string”> 12345678901234567890 </value> </values> </command>
<returns> <values = readStatusOfChip <returns>
metóda readStatusOfChip
Metóda prečíta číslo čipu a následne získa stav čipu.
Vstup
- {numOfEncoder} - číslo čítačky
- {delay_ms} – čas v milisekundách, do kedy kontrolovane čaká čítačka na zosnímanie čipu.
Výstup
- {entryNum} - číslo čipu
- {chipStatus} - stav čipu
- {lockerstatus} - stav skrinky
- {discount} - zľava na ostatné služby (resp. na služby Asseco BLUEGASTRO)
- {entryNumOfGroup} - stav, či čip je zo skupiny – napr. rodinný vstup (jeden Entry check-in program pre viacej čipov)
- {lastOfGroup} - stav, či je posledný non check-out zo skupiny (lastOfGroup). Ak sa jedná o čip so sólo Entry vstupom, tak parameter lastOfGroup bude vždy True.
Návratové hodnoty pre jednotlivé výstupné parametre
- chipStatus
- 0 – freeChip – čip po funkcii check-out – voľný pre použitie
- 1 – je busy – služobný čip a podobne. Ide o čipy, ktoré neprešli systémom Asseco BLUEGASTRO, tj. sú iniciované mimo nášho systému.
- 2 – blokovaný čip
- 3 – groupBusy – čip je po check-out člena skupiny, ale ešte neodišla celá skupina
- 4 – po vypršaní platnosti - požadovalo ComInfo
- 11 – na čipe sú už objednané služby, ale ešte nevstúpil cez prvú Entry službu do areálu
- 12 – čip je vo vnútri areálu – prešiel cez prvú Entry službu
- 13 – čip je vonku mimo areálu – pri viacdňových programoch, alebo ubytovaný hosť
- 14 – ubytovaný hosť – prístup na hotel – čip je vo vnútri areálu
- 15 – ubytovaný hosť – prístup na hotel – čip je vonku mimo areálu
- chipStatus
- lockerStatus :
- 0 - otvorená skrinka
- 1 - zamknutá skrinka
- 2 - neznámy stav
- lockerStatus :
Ak sa nepodarí v definovanom čase čip prečítať, vráti sa exception WARN, kde v <point> časti bude uvedený kód „NON“.
Ak sa načíta neznámy čip – nezaregistrovaný čip v systéme ComInfo, resp. vadný čip, vznikne exception ERROR v časti <point> bude kód UNKNOWN
<command name=”readStatusOfChip”> <values> <value name=”numOfEncoder” type=”integer”>1</value> <value name=”delay_ms” type=”integer”>500</value> </values> </command>
<returns> <values> <value name=”entryNum” type=”string”>12345678901234567890</value> <value name=”physicalChipNum” type=”string”> 12345678901234567890 </value> <value name=”chipStatus” type=”integer”>11</value> <value name=”lockerStatus” type=”integer”>0</value> <value name=”discount” type=”decimal”>12.5</value> <value name=”entryNumOfGroup” type=”boolean”>true</value> <value name=”lastOfGroup” type=”boolean”>true</value> </values> <returns>
<exception type=”WARN”> <point>NON</point> </exception>
<exception type=”ERROR”> <text>neplatné číslo čipu a podobne …..</text> <point>UNKNOWN</point> </exception>
metóda getInfoOfServiceOnChip
Metóda vracia predajnú cenu s DPH, výšku %DPH a počet čipov na danú službu, ak je táto typu združená skupina (rodinný vstup).
Vstup
- {cisloVstupu}
- {idEntryService}
Výstup
- {endPriceWithDph} - konečná predajná cena
- {dph} - výška sadzby DPH
- {numOfChipCheckIn} - počet čipov, ktoré treba načítať pre danú Entry službu (ak nie je služba Entry, bude tam nula)
- {multipleDay} - príznak viacdennej ENTRY služby
- {advance} - výška vyžadovanej zálohy pre danú check-in službu
- {debit} - výška povoleného debetu pre danú check-in službu
Položky advance a debit nie sú povinné položky a mali by sa uvádzať iba pri checkIn službách, pri ostatných službách nemajú význam. Z hľadiska kasy sa berie advance alebo debit iba v tom prípade pokiaľ sú vyplnené.
<command name=”getInfoOfServiceOnChip”> <values> <value name=”entryNum” type=”string”>1234567890</value> <value name=”idEntryService” type=”string”>0000000001</value> </values> </command>
<returns> <values> <value name=”endPriceWithDph” type=”decimal”>180.00</value> <value name=”dph” type=”integer”>19</value> <value name=”numOfChipCheckIn” type=”integer”>1</value> <value name=”multipleDay” type=”boolean”>false</value> <value name=”advance” type=”decimal”> 0.00</value> <value name=”debit” type=”decimal”>1000.00</value> </values> </returns>
metóda getListNewservicesOnChip
metóda getListAllServicesOnChip
Nastavenie priameho čítania čipov
Postup zprovozneni: 1 restorovat si na SQL server 2008 databazi cmf_ids1 (v adresari \DB\cmf_ids1.bak) 2 vygenerovat modulem CryptClient (predpokladam ze ho tam z dob spousteni Besenove mate) pritupovy klic k databazi 3 spustit z \app aplikaci MashineNameSetter (pouze zaregistruje instalaci do DB) 4. pripojit snimac ENCO 5. z \app spustit testovaci aplikaci ReaderManagerTester (1. init, 2, check - pokud nevyhodi chybu tak je vse OK) a potom lze pouzti "Read" pro nacteni, pripadne "Stop read" pro ukonceni cteni bez nacteni karty
V adresari \Project je vzorovy priklad pouziti knihovny vcetne popisu kodu (v adresari \...\lib jsou vsechny knihovny ktere aplikace potrebuje)