Ian Gulliver
|
368c704b81
|
Translate events in pre-channel subscribe responses.
|
2014-06-19 23:36:47 -07:00 |
|
Ian Gulliver
|
3c452dabf3
|
Add message translation layer than can handle "me" as an ACL.
|
2014-06-19 23:14:26 -07:00 |
|
Ian Gulliver
|
40229ff0c0
|
Return the new message for sendMessage and pin RPCs. Pass it through the sendMessage Promise callback.
|
2014-06-12 23:12:00 -07:00 |
|
Ian Gulliver
|
66c1564980
|
Add server-side info logging.
|
2014-06-09 23:51:41 -07:00 |
|
Ian Gulliver
|
d2e7b76df9
|
Add support for magic "admin" ACL that is only satisfied by appengine administrators.
|
2014-06-08 23:41:23 -07:00 |
|
Ian Gulliver
|
44ede2abbf
|
Record IP addresses for messages and pins to support later banning.
|
2014-06-08 22:04:53 -07:00 |
|
Ian Gulliver
|
1b4b55ac23
|
Cache named profiles in memory in the Python application, since they're immutable once written.
|
2014-06-07 23:06:17 -07:00 |
|
Ian Gulliver
|
7c04134dc4
|
Rewrite the session code, again. Now use the username as the profile key name.
|
2014-06-02 22:54:16 -07:00 |
|
Ian Gulliver
|
f4bb278835
|
Impose access controls for subscribe even without a channel open.
|
2014-06-02 21:53:51 -07:00 |
|
Ian Gulliver
|
5079aac9a6
|
Allow subscribe to return events from a subject even when not creating a subscription
|
2014-06-01 21:14:58 -07:00 |
|
Ian Gulliver
|
fd5569c5dc
|
Generate the client_id on the client, so we don't need a round trip to get it before we can send arbitrary RPCs.
This changes the Profile/Client relationship; we never needed to be transactional with them, so split them up entirely so we can reparent Clients.
|
2014-05-31 23:25:15 -07:00 |
|
Ian Gulliver
|
27a21cc2d3
|
New debug console. Add sender_message_id to delivered messages for code simplicity.
|
2014-05-30 16:56:22 -07:00 |
|
Ian Gulliver
|
e1288a67fb
|
Fixes for read/write ACLs on server and client side
|
2014-05-30 16:42:30 -07:00 |
|
Ian Gulliver
|
a70982243b
|
Add app-local caching and stop using memcache; reduce overall datastore access.
|
2014-05-28 14:44:13 -07:00 |
|
Ian Gulliver
|
9736c15faa
|
Subjects get a key name to enforce uniqueness.
|
2014-05-28 13:51:42 -07:00 |
|
Ian Gulliver
|
be27a86b72
|
Use get_or_insert for finding instances.
|
2014-05-28 13:39:15 -07:00 |
|
Ian Gulliver
|
1dd1490518
|
Pin test, fixes, cleanup
|
2014-05-27 15:33:51 -07:00 |
|
Ian Gulliver
|
d96c31abf7
|
Remove stupid cycling UUID scheme. Instead, limit server-side pin deduping to a single instance.
|
2014-05-27 14:54:16 -07:00 |
|
Ian Gulliver
|
b700202e4f
|
Quiet some of the logspam around instances
|
2014-05-26 17:28:59 -07:00 |
|
Ian Gulliver
|
898121dabd
|
Remove the concept of keys; they can just be encoded into subject names.
|
2014-05-25 23:50:53 -07:00 |
|
Ian Gulliver
|
8e7af2f5cf
|
Add support for ephemeral messages that are tied to an open channel, aka "pins".
|
2014-05-25 23:40:56 -07:00 |
|
Ian Gulliver
|
ba82bf3dee
|
Minor cleanups
|
2014-05-23 15:24:52 -07:00 |
|
Ian Gulliver
|
b5bce48df6
|
Make Instance actually stand alone.
|
2014-05-23 15:00:28 -07:00 |
|
Ian Gulliver
|
0b38d082c1
|
Remove Instance from the Profile hierarchy to allow key_name queries.
|
2014-05-23 14:29:11 -07:00 |
|
Ian Gulliver
|
1ec2340f48
|
Need to make the client_id even shorter. Switch to id()
|
2014-05-23 11:40:08 -07:00 |
|
Ian Gulliver
|
0e87448f6f
|
Switch to using Instance key as the channel_id, since there seems to be an undocumented length limit.
|
2014-05-23 11:23:30 -07:00 |
|
Ian Gulliver
|
6bfa10e82a
|
Add a third level construct under Profile and Client, Instance. This allows more than one connected object with the same client credentials.
|
2014-05-23 10:31:52 -07:00 |
|
Ian Gulliver
|
8fd851c409
|
Fix a subscribe bug when last_id=0
|
2014-05-20 10:26:10 -07:00 |
|
Ian Gulliver
|
f27fc7977b
|
Add real subject ACL support and tests.
|
2014-05-19 20:52:57 +03:00 |
|
Ian Gulliver
|
1ee22da229
|
Add a message ordering test. Fix a nasty ID generation bug.
|
2014-05-18 21:58:40 +03:00 |
|
Ian Gulliver
|
0380679ddb
|
When rebuilding the channel, subscribe via last seen ID, so we don't miss messages from the time we were disconnected.
|
2014-05-18 11:20:44 +03:00 |
|
Ian Gulliver
|
63ac321537
|
Establish a definite ordering and sequential IDs for messages, at the expense of another datastore read/write pair.
|
2014-05-18 10:58:39 +03:00 |
|
Ian Gulliver
|
6389787833
|
Small API changes to move toward subject ACLs.
|
2014-05-17 19:13:59 +03:00 |
|
Ian Gulliver
|
d3f716a081
|
Use a property instead of key_name to hold subject name. This makes Message.ToEvent() do an additional datastore read, but opens up the ability to add more subject indexes.
|
2014-05-17 18:50:12 +03:00 |
|
Ian Gulliver
|
0247b78c6b
|
Suppress duplicate messages from a client (e.g. when network failure causes retries for RPCs that actually went through).
|
2014-05-16 23:07:38 +03:00 |
|
Ian Gulliver
|
81d7db3678
|
Fix profile merge code on login, add test.
|
2014-05-16 22:35:20 +03:00 |
|
Ian Gulliver
|
482feee804
|
Add login test. Fix bugs in socket teardown, RPC retry. Remove chunk of broken merge code pending rewrite.
|
2014-05-15 19:43:09 +03:00 |
|
Ian Gulliver
|
3f0b7db9dd
|
Add test for two messages with the same key. Fixes to clean shutdown and server-side message duplication.
|
2014-05-15 16:30:08 +03:00 |
|
Ian Gulliver
|
3a3cba9be3
|
First pass at tests and initial bugfixes/necessary features, including onReady callback.
|
2014-05-13 19:12:06 +03:00 |
|
Ian Gulliver
|
1b38d81c9c
|
Remove SetValue/GetValue. Add debug console support for keeping track of streaming key values.
|
2014-05-11 19:34:42 +03:00 |
|
Ian Gulliver
|
0575b8918d
|
Add a key field to messages and allow lookup of most recent message by key.
|
2014-05-11 15:43:45 +03:00 |
|
Ian Gulliver
|
a912e973c3
|
Reverse sort order of initially-returned messages, so the client can generally depend on messages proceeding forward.
|
2014-05-10 19:20:14 +02:00 |
|
Ian Gulliver
|
bff49f3401
|
Checkpoint: working subscribe/unsubscribe and message transit, through the debug page
|
2014-05-10 15:47:33 +02:00 |
|
Ian Gulliver
|
6a6fdc1c41
|
Make the structure that we pass over the channel or pseudo-channel called an "event".
Make the string that we pass through pubsub called a "message".
|
2014-05-09 15:00:48 -07:00 |
|
Ian Gulliver
|
e6885042f5
|
Add pubsub server API, without client API or UI yet.
|
2014-05-06 22:46:07 -07:00 |
|
Ian Gulliver
|
64f989e3ca
|
Support public flag for StateEntry
|
2014-05-01 11:33:29 -07:00 |
|
Ian Gulliver
|
006eb03483
|
Be more explicit about parents so I stop forgetting
|
2014-05-01 09:57:50 -07:00 |
|
Ian Gulliver
|
f9c3908a3d
|
Remove line accidentally added
|
2014-05-01 09:56:50 -07:00 |
|
Ian Gulliver
|
b02ddde215
|
Clean up debug UI and code a bit. Allow empty StateEntry values.
|
2014-04-30 17:54:48 -07:00 |
|
Ian Gulliver
|
7069d16aaa
|
Fix handling of initial messages on channel creation by returning them in the
RPC response instead of over the channel.
|
2014-03-25 14:19:13 -07:00 |
|