Skip to content

Commit

Permalink
Add new realtime protocol
Browse files Browse the repository at this point in the history
  • Loading branch information
zyro committed Apr 22, 2018
1 parent 7db87e6 commit 17e40ae
Show file tree
Hide file tree
Showing 2 changed files with 347 additions and 0 deletions.
273 changes: 273 additions & 0 deletions rtapi/realtime.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

74 changes: 74 additions & 0 deletions rtapi/realtime.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
// Copyright 2018 The Nakama Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/**
* The realtime protocol for Nakama server.
*/
syntax = "proto3";

package nakama.realtime;

import "github.com/heroiclabs/nakama/api/api.proto";

option go_package = "rtapi";

option java_multiple_files = true;
option java_outer_classname = "NakamaRealtime";
option java_package = "com.heroiclabs.nakama";

option csharp_namespace = "Nakama";

option objc_class_prefix = "NKPB";

/**
* An envelope for a realtime message.
*/
message Envelope {
oneof message {
// Describes an error which occurred on the server.
Error error = 1;

nakama.api.ChannelId channel_id = 2; // TODO(zyro): replace with real imported message.
}
}

/**
* A logical error which may occur on the server.
*/
message Error {
// The selection of possible error codes.
enum Code {
// An unexpected result from the server.
RUNTIME_EXCEPTION = 0;
// The server received a message which is not recognised.
UNRECOGNIZED_PAYLOAD = 1;
// A message was expected but contains no content.
MISSING_PAYLOAD = 2;
// Fields in the message have an invalid format.
BAD_INPUT = 3;
// The match id was not found.
MATCH_NOT_FOUND = 4;
// The runtime function does not exist on the server.
RUNTIME_FUNCTION_NOT_FOUND = 5;
// The runtime function executed with an error.
RUNTIME_FUNCTION_EXCEPTION = 6;
}

// The error code which should be one of "Error.Code" enums.
int32 code = 1;
// A message in English to help developers debug the response.
string message = 2;
// Additional error details which may be different for each response.
map<string, string> context = 3;
}

0 comments on commit 17e40ae

Please sign in to comment.