Eric House
|
810dfac8b8
|
postpone packet creation and id assignment until send time so id can
be logged along with send.
|
2013-09-04 08:11:42 -07:00 |
|
Eric House
|
42a517b246
|
support UPGRADE message; don't queue KEEPALIVE packets when network is
down (as it is on Kindle when screen off)
|
2013-09-03 06:57:21 -07:00 |
|
Eric House
|
48e0afc589
|
add comment
|
2013-09-03 06:54:42 -07:00 |
|
Eric House
|
70fc4c448c
|
print the exception's stack trace
|
2013-09-03 06:54:13 -07:00 |
|
Eric House
|
40215337c9
|
cleanup
|
2013-09-03 06:53:25 -07:00 |
|
Eric House
|
032f8c1f99
|
add ctrl port command to post UPGRADE message to clients
|
2013-09-03 06:52:02 -07:00 |
|
Eric House
|
8da0b73744
|
replace string_printf() with new class derived from std::string with
printf() method.
|
2013-09-02 13:17:42 -07:00 |
|
Eric House
|
23bdec0ea1
|
Remove debug prefs checkboxes for ignoring gcm and using the udp relay
mechanism. Replace with static finals with shipping settings.
|
2013-09-01 09:40:08 -07:00 |
|
Eric House
|
0003065571
|
handle dev (not game) messages arriving via gcm
|
2013-08-31 08:58:12 -07:00 |
|
Eric House
|
a95d620b09
|
Make ack timeout settable from ctrl port; add ctrl facility to print
and nack outstanding acks.
|
2013-08-31 08:30:25 -07:00 |
|
Eric House
|
07c9722433
|
add ability to forget multiple devices
|
2013-08-31 08:26:44 -07:00 |
|
Eric House
|
f6a91464ac
|
don't update db unless value's changed
|
2013-08-31 07:59:58 -07:00 |
|
Eric House
|
593bb91ee6
|
saving last packet timestamp in onDestroy then reading in in onCreate
wasn't working because they're not always called in that order. So
for now save every time we get a message. Should be every time it
changes...
|
2013-08-31 07:59:58 -07:00 |
|
Eric House
|
7b9f6adf6d
|
preserve most recent maxInterval rather than counting on getting it
from relay.
|
2013-08-31 07:59:58 -07:00 |
|
Eric House
|
d9bfc01e35
|
change unsigned char to uint8_t (using sed)
|
2013-08-29 22:55:11 -07:00 |
|
Eric House
|
3592c2a1ab
|
add logging
|
2013-08-29 21:54:36 -07:00 |
|
Eric House
|
99ec44809a
|
use random number rather than incrementing static int (which can be
reset) to keep Intents from being reused
|
2013-08-29 21:54:17 -07:00 |
|
Eric House
|
b6fd850d04
|
improve logging
|
2013-08-29 21:53:22 -07:00 |
|
Eric House
|
49ab62d521
|
set DEBUG when building ndk based on target in build.xml
|
2013-08-29 07:28:08 -07:00 |
|
Eric House
|
0e6b211a76
|
fix treating game-targeted messages as if they were device-targeted.
Should probably have separate tables for the two types....
|
2013-08-29 06:37:22 -07:00 |
|
Eric House
|
b80051cc73
|
send dev-targeted messages pulled from db by rewriting their headers
with a new packetID.
|
2013-08-28 21:36:12 -07:00 |
|
Eric House
|
de125eb9a6
|
fix GetStoredMessages to also return messages without connnames,
i.e. messages to a device rather than to a game.
|
2013-08-28 21:29:39 -07:00 |
|
Eric House
|
cd2b83c9c5
|
type change: use vector<uint8_t> rather than string in struct for
retrieving data from db.
|
2013-08-28 20:33:42 -07:00 |
|
Eric House
|
e2f689765b
|
Merge remote-tracking branch 'origin/android_branch' into android_branch
|
2013-08-28 20:08:33 -07:00 |
|
Eric House
|
c4cf8b3c3c
|
make 'devs print' take multiple devid args; rename args to argv everywhere.
|
2013-08-28 19:23:40 -07:00 |
|
Eric House
|
831018ed9d
|
oops: remove extra format specifier
|
2013-08-28 19:20:37 -07:00 |
|
Eric House
|
ad9615709e
|
test whether gcm being ignored not when receiving messages but when
deciding whether to stay connected to relay.
|
2013-08-28 08:02:48 -07:00 |
|
Eric House
|
b5f35fab78
|
unescape things like '\n' in messages
|
2013-08-28 08:00:21 -07:00 |
|
Eric House
|
4207df8078
|
apply limit to all; list messages without connname too
|
2013-08-28 07:29:24 -07:00 |
|
Eric House
|
2e7433f2b2
|
change 'devs msg' command to send to a list, or to all
|
2013-08-28 07:29:23 -07:00 |
|
Eric House
|
b3342c6e8a
|
for --clean-start option, try not to remove games not created by this script.
|
2013-08-28 07:29:23 -07:00 |
|
Eric House
|
668cc27f35
|
lots of logging; handle GCM messages for device as well as for a
single game; tweak for more reliable connection or messages to help
diagnose.
|
2013-08-27 07:57:36 -07:00 |
|
Eric House
|
a7d5d261d3
|
replace static final ints with enum
|
2013-08-27 07:03:25 -07:00 |
|
Eric House
|
084abb57e3
|
Merge remote-tracking branch 'origin/android_branch' into android_branch
|
2013-08-27 06:52:11 -07:00 |
|
Eric House
|
35a09512ce
|
add missing params
|
2013-08-26 08:41:42 -07:00 |
|
Eric House
|
57ea3cd77e
|
wasn't supposed to check this in with debugging on
|
2013-08-26 07:22:07 -07:00 |
|
Eric House
|
f6b34fcbbc
|
sleep time should depend on configured ACK expiry
|
2013-08-25 22:24:21 -07:00 |
|
Eric House
|
d3c15eb58b
|
remove logging
|
2013-08-25 22:23:52 -07:00 |
|
Eric House
|
063b01d3d8
|
change most len-as-short+bytes strings to vli+bytes; add device model
to what's passed for device registration, and store it in a new column
in devices table.
|
2013-08-25 21:20:26 -07:00 |
|
Eric House
|
d10e9f6235
|
use vlis for acks in both directions
|
2013-08-25 16:59:07 -07:00 |
|
Eric House
|
47414beeb2
|
catch up with changes in udp proto: use vli for packet num in header.
|
2013-08-25 16:15:37 -07:00 |
|
Eric House
|
7e02db78db
|
change function name spelling
|
2013-08-25 16:14:42 -07:00 |
|
Eric House
|
91235f3be7
|
begin process of using variable-length-ints in udp protocol. Works
between linux client and relay, but unrelased features of Android
client will be broken until fixed.
|
2013-08-25 12:34:35 -07:00 |
|
Eric House
|
69f34f4ef8
|
make method private
|
2013-08-25 12:32:26 -07:00 |
|
Eric House
|
cf3437c686
|
fix argc checking to prevent crashes
|
2013-08-23 07:44:42 -07:00 |
|
Eric House
|
4be1653ab7
|
remove logging
|
2013-08-23 07:41:10 -07:00 |
|
Eric House
|
235346b7a4
|
fix signature string (and log when there's a mismatch)
|
2013-08-23 07:41:10 -07:00 |
|
Eric House
|
38adea1612
|
fix infinite recursion
|
2013-08-22 08:23:32 -07:00 |
|
Eric House
|
1af12f1de2
|
refactor packet assembly/sending so posting message can post all,
including header.
|
2013-08-22 08:15:38 -07:00 |
|
Eric House
|
16aafccec6
|
to telnet interface add ability to forget device and to send to one
not known (which will make message available next time it connects or
via GCM); rename methods.
|
2013-08-22 06:29:20 -07:00 |
|
Eric House
|
23a59e8097
|
sometimes a device goes away and we don't notice, so when it comes
back just reuse its record rather than asserting there's no record
there.
|
2013-08-21 21:32:55 -07:00 |
|
Eric House
|
45998fd2c0
|
don't assert when packet size short is unexpectedly large. Not sure
why this happens, but it's not a reason to abort a test.
|
2013-08-21 21:28:47 -07:00 |
|
Eric House
|
3dee41e584
|
set new clntvers row in devices table at the same time as updating it
in games table. (The latter is now redundant and will go away.)
|
2013-08-21 06:49:37 -07:00 |
|
Eric House
|
f728f7459b
|
pass INITIAL_CLIENT_VERS and git version to relay
|
2013-08-20 08:42:41 -07:00 |
|
Eric House
|
5197033de3
|
In the spirit of setting constants in only one place, pass
INITIAL_CLIENT_VERS in from build.xml rather than the jni makefile,
and make it available in java world as well.
|
2013-08-20 08:42:12 -07:00 |
|
Eric House
|
2157706dcd
|
add client version and a desc string to devices DB and to reg info sent to relay
|
2013-08-20 08:09:45 -07:00 |
|
Eric House
|
a8d67830d8
|
add missing enum
|
2013-08-19 20:51:03 -07:00 |
|
Eric House
|
84d06b9fed
|
use g_shell_parse_argv() to parse input buf (so messages can be in
quotes and contain whitespace)
|
2013-08-19 08:25:06 -07:00 |
|
Eric House
|
7bce97f78a
|
post notification, not alert, on receipt of relay alert message
|
2013-08-19 07:02:03 -07:00 |
|
Eric House
|
0868a33c83
|
print out whether message is ACK'd or not
|
2013-08-18 20:52:09 -07:00 |
|
Eric House
|
31a3a593a4
|
handle alert command by posting message (if app's in foreground;
should otherwise post an intent...); remove some of excessive logging
|
2013-08-18 20:13:08 -07:00 |
|
Eric House
|
5412119a6f
|
add hexDump (commented out)
|
2013-08-18 15:49:13 -07:00 |
|
Eric House
|
d0aca01289
|
clean up send message/alert code
|
2013-08-18 15:48:44 -07:00 |
|
Eric House
|
47203437cc
|
register devices more often; add ctrl command to send text message to
device if possible, otherwise to post it to the db (mostly for testing).
|
2013-08-17 14:55:19 -07:00 |
|
Eric House
|
8ad549d2bd
|
query on null db fails, doesn't assert
|
2013-08-16 19:15:28 -07:00 |
|
Eric House
|
e776f7b230
|
comment out toast that's showing on every connection -- too annoying
|
2013-08-15 22:32:00 -07:00 |
|
Eric House
|
8c56f55445
|
track time since last game-related packet, not any packet from relay.
|
2013-08-15 22:32:00 -07:00 |
|
Eric House
|
10ef75113f
|
factor common code
|
2013-08-15 22:32:00 -07:00 |
|
Eric House
|
6a27bbba94
|
tweaks to new ctrl command
|
2013-08-15 19:22:23 -07:00 |
|
Eric House
|
d07bb5013d
|
oops: function need to return something
|
2013-08-15 19:22:01 -07:00 |
|
Eric House
|
62f0819a82
|
Toward resurrecting ctrl feature to give runtime info about stuff that
isn't in the DB. Step one: comment out the stuff that doesn't compile
and add ability to print all registered devices with their ages.
|
2013-08-15 08:44:33 -07:00 |
|
Eric House
|
06f0b7e411
|
treat KEEPALIVE same as RQSTMSGS (for now)
|
2013-08-15 07:25:20 -07:00 |
|
Eric House
|
61009cefc7
|
in advance of using memcache, keep track (in memory) of those devids
for which no messages are pending, since that's a query that can be
made by each device every minute.
|
2013-08-15 07:24:30 -07:00 |
|
Eric House
|
42bbc946ae
|
quote variable and echo when switching to udp
|
2013-08-15 07:20:22 -07:00 |
|
Eric House
|
f1b60dab62
|
Don't assert when can't find state transition. At least in some cases
these result from unexpected/out-of-order packets that slip through.
|
2013-08-14 08:11:21 -07:00 |
|
Eric House
|
fe51d19c2e
|
Device can't be 'alreadyHere' if has hostID of 0 since the only way a
device gets registered involves giving it a non-0 hostID. Fixes array
OOB access.
|
2013-08-14 08:10:09 -07:00 |
|
Eric House
|
80f66d1df7
|
remove test for duplicates now that it's impossible
|
2013-08-13 08:20:57 -07:00 |
|
Eric House
|
5be8779749
|
remove redundant member variable
|
2013-08-13 08:19:32 -07:00 |
|
Eric House
|
c9406c36ae
|
use a simple array rather than a vector to store currently connected
devices. It's simpler, searching for hid is faster, and it makes it
easier to detect when we try to add the same device twice.
|
2013-08-13 08:04:19 -07:00 |
|
Eric House
|
652a8ec905
|
toward staying reachable as-if GCM were there: note whether GCM
working, and if so skip keeping the connection up. But otherwise stay
reachable by relay for a week after last udp packet was received.
|
2013-08-12 08:24:52 -07:00 |
|
Eric House
|
09494dcf09
|
remove unused param
|
2013-08-12 08:15:55 -07:00 |
|
Eric House
|
0ba0530bf3
|
set global before informing of change so if there's a query result
will match what was sent
|
2013-08-12 08:13:58 -07:00 |
|
Eric House
|
fde50cce32
|
move timeout interval into config file; cleanup
|
2013-08-12 07:41:48 -07:00 |
|
Eric House
|
a96c0c548f
|
switch from static final ints to an enum; no other change.
|
2013-08-11 10:47:01 -07:00 |
|
Eric House
|
1d52a9afea
|
add reset button to ConnStatusHandler on-click dialog that calls to
stubbed-out function in RelayService
|
2013-08-10 23:24:46 -07:00 |
|
Eric House
|
de1803c9dd
|
cleanup: reduce number of params required
|
2013-08-10 17:36:37 -07:00 |
|
Eric House
|
758c6a6c5c
|
add interface to ConnStatusHandler as part of moving UI-based response
into Activity.
|
2013-08-10 14:25:28 -07:00 |
|
Eric House
|
dbc1bb1cd5
|
use getHandler()
|
2013-08-10 08:54:51 -07:00 |
|
Eric House
|
787367071d
|
show only those devids in the visible games
|
2013-08-08 19:55:04 -07:00 |
|
Eric House
|
f96155f12b
|
merge changes for quick b65
|
2013-08-08 01:14:23 -07:00 |
|
Eric House
|
9528e61f84
|
Merge remote-tracking branch 'origin/android_branch' into android_branch
|
2013-08-08 01:07:02 -07:00 |
|
Eric House
|
635b948c41
|
don't drop messages from devices without a devID -- lots of older
devices are in that boat.
|
2013-08-08 00:40:32 -07:00 |
|
Eric House
|
20056153aa
|
up version strings
|
2013-08-07 23:54:47 -07:00 |
|
Eric House
|
6bb2a9bb9a
|
fix crash upgrading from beta 30 (which is two years old!)
|
2013-08-07 23:52:37 -07:00 |
|
Eric House
|
d8e6979bcc
|
cleanup: store db schema as arrays of arrays rather than arrays whose
odd- and even-indexed members have different roles. Uses slightly
more memory but is better code.
|
2013-08-07 23:48:33 -07:00 |
|
Eric House
|
d00e9edf55
|
fix crash upgrading from beta 30 (which is two years old!)
|
2013-08-07 23:36:17 -07:00 |
|
Eric House
|
01c97c5716
|
null token is a possibility if message was stored by device connecting
via tcp and device is now connecting via udp
|
2013-08-07 21:59:21 -07:00 |
|
Eric House
|
cd9eea665b
|
oops: still need to register device connecting via tcp so gcm sends
can work.
|
2013-08-07 21:36:06 -07:00 |
|
Eric House
|
84b77d4456
|
log threadid as unsigned int
|
2013-08-07 21:32:58 -07:00 |
|
Eric House
|
b49486fc3f
|
cleanup: use constant and add/use isUDP()
|
2013-08-07 21:31:10 -07:00 |
|