# Voting System
## Ticket type
Different ticket should have different type
### Config: C
CC -> config 開始
C:[candidate name]
C-[voter public key]
### Vote: ACCESS ticket type
After CRKE, voter automatically send an u-token requiring cadidate information.
"A" should be automatically sent to get the candidates. 0.[name]1.[name] will be the format sent back to voter.
Sending the index after "V" to mention which candidate you want to vote.
V:[index]
### Tally: T
After CRKE, voter automatically send "TC" to get the tickets every cadidate gets.
0:name,ticket number:1:name,ticket number:
after that, voter automatically send "TV[index]" multiple times to get the voter informations.
[publickey]:[vote or not(0 for false, 1 for true)]
Voting machine will send a "-----" when index is larger than the number of voter number.
the "TV[index]" cmd will end up sending after receiving a "-----" from voting machine, which means all the public keys were sent.
### Permission Less
message_operation : "PERMISSIONLESS"
message_type : "PERMISSIONLESS"
message_str : ""
回傳:
message_operation : "PERMISSIONLESS"
message_type : "RTICKET"
message_str : {
candidate_0: name
candidate_1: name
voter_0: name
voter_1: name
}