Documentation ¶
Overview ¶
Package bertyprotocol is a reverse proxy.
It translates gRPC into RESTful JSON APIs.
Package bertyprotocol contains code for integrating the Berty protocol in your project.
See https://berty.tech/protocol for more information.
Index ¶
- Constants
- func ActivateGroupContext(ctx context.Context, gc *groupContext) error
- func ConnectAll(t *testing.T, m libp2p_mocknet.Mocknet)
- func ConnectInLine(t *testing.T, m libp2p_mocknet.Mocknet)
- func DefaultOrbitDBOptions(g *bertytypes.Group, options *orbitdb.CreateDBOptions, ...) (*orbitdb.CreateDBOptions, error)
- func FillMessageKeysHolderUsingNewData(ctx context.Context, gc *groupContext)
- func FillMessageKeysHolderUsingPreviousData(ctx context.Context, gc *groupContext)
- func NewDeviceSecret() (*bertytypes.DeviceSecret, error)
- func NewGroupMultiMember() (*bertytypes.Group, crypto.PrivKey, error)
- func NewOrbitDatastoreCache(ds datastore.Batching) cache.Interface
- func NewSimpleAccessController(_ context.Context, _ iface.BaseOrbitDB, params accesscontroller.ManifestParams, ...) (accesscontroller.Interface, error)
- func RegisterProtocolServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error
- func RegisterProtocolServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client ProtocolServiceClient) error
- func RegisterProtocolServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, ...) (err error)
- func RegisterProtocolServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server ProtocolServiceServer) error
- func RegisterProtocolServiceServer(s *grpc.Server, srv ProtocolServiceServer)
- func SendSecretsToExistingMembers(ctx context.Context, gctx *groupContext)
- func WatchNewMembersAndSendSecrets(ctx context.Context, logger *zap.Logger, gctx *groupContext)
- type AccountKeys
- type BertySignedKeyStore
- func (s *BertySignedKeyStore) CreateKey(id string) (crypto.PrivKey, error)
- func (s *BertySignedKeyStore) GetKey(id string) (crypto.PrivKey, error)
- func (s *BertySignedKeyStore) HasKey(id string) (bool, error)
- func (s *BertySignedKeyStore) SetKey(pk crypto.PrivKey) error
- func (s *BertySignedKeyStore) Sign(privKey crypto.PrivKey, bytes []byte) ([]byte, error)
- func (s *BertySignedKeyStore) Verify(signature []byte, publicKey crypto.PubKey, data []byte) error
- type Client
- func NewClient(svc Service, opts ...grpc.ServerOption) (Client, error)
- func NewClientFromServer(s *grpc.Server, svc Service, opts ...grpc.DialOption) (Client, error)
- func TestingClient(t *testing.T, svc Service, opts ...grpc.ServerOption) (client Client, cleanup func())
- func TestingClientFromServer(t *testing.T, s *grpc.Server, svc Service, dialOpts ...grpc.DialOption) (client Client, cleanup func())
- type ConnnectTestingProtocolFunc
- type DeviceKeystore
- type EventMetadataReceived
- type MemberDevice
- type MessageKeystore
- func (m *MessageKeystore) GetDeviceSecret(g *bertytypes.Group, acc DeviceKeystore) (*bertytypes.DeviceSecret, error)
- func (m *MessageKeystore) OpenEnvelope(ctx context.Context, g *bertytypes.Group, ownPK crypto.PubKey, data []byte, ...) (*bertytypes.MessageHeaders, []byte, error)
- func (m *MessageKeystore) RegisterChainKey(g *bertytypes.Group, devicePK crypto.PubKey, ds *bertytypes.DeviceSecret, ...) error
- func (m *MessageKeystore) SealEnvelope(ctx context.Context, g *bertytypes.Group, deviceSK crypto.PrivKey, ...) ([]byte, error)
- type Opts
- type OwnMemberDevice
- type ProtocolServiceClient
- type ProtocolServiceServer
- type ProtocolService_DebugInspectGroupStoreClient
- type ProtocolService_DebugInspectGroupStoreServer
- type ProtocolService_DebugListGroupsClient
- type ProtocolService_DebugListGroupsServer
- type ProtocolService_GroupMessageListClient
- type ProtocolService_GroupMessageListServer
- type ProtocolService_GroupMessageSubscribeClient
- type ProtocolService_GroupMessageSubscribeServer
- type ProtocolService_GroupMetadataListClient
- type ProtocolService_GroupMetadataListServer
- type ProtocolService_GroupMetadataSubscribeClient
- type ProtocolService_GroupMetadataSubscribeServer
- type Service
- type Status
- type TestingOpts
- type TestingProtocol
- type UnimplementedProtocolServiceServer
- func (*UnimplementedProtocolServiceServer) ActivateGroup(ctx context.Context, req *bertytypes.ActivateGroup_Request) (*bertytypes.ActivateGroup_Reply, error)
- func (*UnimplementedProtocolServiceServer) AppMessageSend(ctx context.Context, req *bertytypes.AppMessageSend_Request) (*bertytypes.AppMessageSend_Reply, error)
- func (*UnimplementedProtocolServiceServer) AppMetadataSend(ctx context.Context, req *bertytypes.AppMetadataSend_Request) (*bertytypes.AppMetadataSend_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactAliasKeySend(ctx context.Context, req *bertytypes.ContactAliasKeySend_Request) (*bertytypes.ContactAliasKeySend_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactBlock(ctx context.Context, req *bertytypes.ContactBlock_Request) (*bertytypes.ContactBlock_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactRequestAccept(ctx context.Context, req *bertytypes.ContactRequestAccept_Request) (*bertytypes.ContactRequestAccept_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactRequestDisable(ctx context.Context, req *bertytypes.ContactRequestDisable_Request) (*bertytypes.ContactRequestDisable_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactRequestDiscard(ctx context.Context, req *bertytypes.ContactRequestDiscard_Request) (*bertytypes.ContactRequestDiscard_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactRequestEnable(ctx context.Context, req *bertytypes.ContactRequestEnable_Request) (*bertytypes.ContactRequestEnable_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactRequestReference(ctx context.Context, req *bertytypes.ContactRequestReference_Request) (*bertytypes.ContactRequestReference_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactRequestResetReference(ctx context.Context, req *bertytypes.ContactRequestResetReference_Request) (*bertytypes.ContactRequestResetReference_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactRequestSend(ctx context.Context, req *bertytypes.ContactRequestSend_Request) (*bertytypes.ContactRequestSend_Reply, error)
- func (*UnimplementedProtocolServiceServer) ContactUnblock(ctx context.Context, req *bertytypes.ContactUnblock_Request) (*bertytypes.ContactUnblock_Reply, error)
- func (*UnimplementedProtocolServiceServer) DeactivateGroup(ctx context.Context, req *bertytypes.DeactivateGroup_Request) (*bertytypes.DeactivateGroup_Reply, error)
- func (*UnimplementedProtocolServiceServer) DebugGroup(ctx context.Context, req *bertytypes.DebugGroup_Request) (*bertytypes.DebugGroup_Reply, error)
- func (*UnimplementedProtocolServiceServer) DebugInspectGroupStore(req *bertytypes.DebugInspectGroupStore_Request, ...) error
- func (*UnimplementedProtocolServiceServer) DebugListGroups(req *bertytypes.DebugListGroups_Request, ...) error
- func (*UnimplementedProtocolServiceServer) GroupInfo(ctx context.Context, req *bertytypes.GroupInfo_Request) (*bertytypes.GroupInfo_Reply, error)
- func (*UnimplementedProtocolServiceServer) GroupMessageList(req *bertytypes.GroupMessageList_Request, ...) error
- func (*UnimplementedProtocolServiceServer) GroupMessageSubscribe(req *bertytypes.GroupMessageSubscribe_Request, ...) error
- func (*UnimplementedProtocolServiceServer) GroupMetadataList(req *bertytypes.GroupMetadataList_Request, ...) error
- func (*UnimplementedProtocolServiceServer) GroupMetadataSubscribe(req *bertytypes.GroupMetadataSubscribe_Request, ...) error
- func (*UnimplementedProtocolServiceServer) InstanceExportData(ctx context.Context, req *bertytypes.InstanceExportData_Request) (*bertytypes.InstanceExportData_Reply, error)
- func (*UnimplementedProtocolServiceServer) InstanceGetConfiguration(ctx context.Context, req *bertytypes.InstanceGetConfiguration_Request) (*bertytypes.InstanceGetConfiguration_Reply, error)
- func (*UnimplementedProtocolServiceServer) MultiMemberGroupAdminRoleGrant(ctx context.Context, req *bertytypes.MultiMemberGroupAdminRoleGrant_Request) (*bertytypes.MultiMemberGroupAdminRoleGrant_Reply, error)
- func (*UnimplementedProtocolServiceServer) MultiMemberGroupAliasResolverDisclose(ctx context.Context, ...) (*bertytypes.MultiMemberGroupAliasResolverDisclose_Reply, error)
- func (*UnimplementedProtocolServiceServer) MultiMemberGroupCreate(ctx context.Context, req *bertytypes.MultiMemberGroupCreate_Request) (*bertytypes.MultiMemberGroupCreate_Reply, error)
- func (*UnimplementedProtocolServiceServer) MultiMemberGroupInvitationCreate(ctx context.Context, req *bertytypes.MultiMemberGroupInvitationCreate_Request) (*bertytypes.MultiMemberGroupInvitationCreate_Reply, error)
- func (*UnimplementedProtocolServiceServer) MultiMemberGroupJoin(ctx context.Context, req *bertytypes.MultiMemberGroupJoin_Request) (*bertytypes.MultiMemberGroupJoin_Reply, error)
- func (*UnimplementedProtocolServiceServer) MultiMemberGroupLeave(ctx context.Context, req *bertytypes.MultiMemberGroupLeave_Request) (*bertytypes.MultiMemberGroupLeave_Reply, error)
Examples ¶
Constants ¶
const CurrentGroupVersion = 1
Variables ¶
This section is empty.
Functions ¶
func ActivateGroupContext ¶
func ConnectAll ¶ added in v2.39.0
func ConnectAll(t *testing.T, m libp2p_mocknet.Mocknet)
ConnectAll peers between themselves
func ConnectInLine ¶ added in v2.39.0
func ConnectInLine(t *testing.T, m libp2p_mocknet.Mocknet)
func DefaultOrbitDBOptions ¶ added in v2.32.1
func DefaultOrbitDBOptions(g *bertytypes.Group, options *orbitdb.CreateDBOptions, keystore *BertySignedKeyStore, storeType string) (*orbitdb.CreateDBOptions, error)
func NewDeviceSecret ¶
func NewDeviceSecret() (*bertytypes.DeviceSecret, error)
func NewGroupMultiMember ¶
func NewGroupMultiMember() (*bertytypes.Group, crypto.PrivKey, error)
NewGroupMultiMember creates a new Group object and an invitation to be used by the first member of the group
func NewOrbitDatastoreCache ¶ added in v2.32.1
func NewSimpleAccessController ¶ added in v2.32.1
func NewSimpleAccessController(_ context.Context, _ iface.BaseOrbitDB, params accesscontroller.ManifestParams, options ...accesscontroller.Option) (accesscontroller.Interface, error)
NewSimpleAccessController Returns a non configurable access controller
func RegisterProtocolServiceHandler ¶ added in v2.100.0
func RegisterProtocolServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error
RegisterProtocolServiceHandler registers the http handlers for service ProtocolService to "mux". The handlers forward requests to the grpc endpoint over "conn".
func RegisterProtocolServiceHandlerClient ¶ added in v2.100.0
func RegisterProtocolServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client ProtocolServiceClient) error
RegisterProtocolServiceHandlerClient registers the http handlers for service ProtocolService to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "ProtocolServiceClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "ProtocolServiceClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "ProtocolServiceClient" to call the correct interceptors.
func RegisterProtocolServiceHandlerFromEndpoint ¶ added in v2.100.0
func RegisterProtocolServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)
RegisterProtocolServiceHandlerFromEndpoint is same as RegisterProtocolServiceHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.
func RegisterProtocolServiceHandlerServer ¶ added in v2.100.0
func RegisterProtocolServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server ProtocolServiceServer) error
RegisterProtocolServiceHandlerServer registers the http handlers for service ProtocolService to "mux". UnaryRPC :call ProtocolServiceServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features (such as grpc.SendHeader, etc) to stop working. Consider using RegisterProtocolServiceHandlerFromEndpoint instead.
func RegisterProtocolServiceServer ¶
func RegisterProtocolServiceServer(s *grpc.Server, srv ProtocolServiceServer)
Types ¶
type AccountKeys ¶
type BertySignedKeyStore ¶ added in v2.32.1
func (*BertySignedKeyStore) CreateKey ¶ added in v2.32.1
func (s *BertySignedKeyStore) CreateKey(id string) (crypto.PrivKey, error)
func (*BertySignedKeyStore) GetKey ¶ added in v2.32.1
func (s *BertySignedKeyStore) GetKey(id string) (crypto.PrivKey, error)
func (*BertySignedKeyStore) HasKey ¶ added in v2.32.1
func (s *BertySignedKeyStore) HasKey(id string) (bool, error)
func (*BertySignedKeyStore) SetKey ¶ added in v2.32.1
func (s *BertySignedKeyStore) SetKey(pk crypto.PrivKey) error
type Client ¶
type Client interface { ProtocolServiceClient Close() error }
func NewClient ¶ added in v2.39.0
func NewClient(svc Service, opts ...grpc.ServerOption) (Client, error)
func NewClientFromServer ¶ added in v2.39.0
func TestingClient ¶
func TestingClientFromServer ¶ added in v2.39.0
type ConnnectTestingProtocolFunc ¶ added in v2.39.0
type ConnnectTestingProtocolFunc func(*testing.T, libp2p_mocknet.Mocknet)
Connect Peers Helper
type DeviceKeystore ¶ added in v2.32.1
type DeviceKeystore interface { AccountPrivKey() (crypto.PrivKey, error) AccountProofPrivKey() (crypto.PrivKey, error) DevicePrivKey() (crypto.PrivKey, error) ContactGroupPrivKey(pk crypto.PubKey) (crypto.PrivKey, error) MemberDeviceForGroup(g *bertytypes.Group) (*ownMemberDevice, error) }
func NewDeviceKeystore ¶ added in v2.32.1
func NewDeviceKeystore(ks keystore.Keystore) DeviceKeystore
New creates a new deviceKeystore instance, if the keystore does not hold an deviceKeystore key, one will be created when required
func NewWithExistingKeys ¶ added in v2.32.1
func NewWithExistingKeys(ks keystore.Keystore, sk crypto.PrivKey, proofSK crypto.PrivKey) (DeviceKeystore, error)
NewWithExistingKeys creates a new deviceKeystore instance and registers the supplied secret key, useful when migrating deviceKeystore to another device
type EventMetadataReceived ¶ added in v2.66.1
type EventMetadataReceived struct { MetaEvent *bertytypes.GroupMetadataEvent Event proto.Message }
type MemberDevice ¶
type MemberDevice struct { Member crypto.PubKey Device crypto.PubKey Secret *bertytypes.DeviceSecret }
MemberDevice is a remote device part of a group
type MessageKeystore ¶ added in v2.32.1
type MessageKeystore struct {
// contains filtered or unexported fields
}
func NewInMemMessageKeystore ¶ added in v2.32.1
func NewInMemMessageKeystore() *MessageKeystore
NewInMemMessageKeystore instantiate a new MessageKeystore, useful for testing
func NewMessageKeystore ¶ added in v2.32.1
func NewMessageKeystore(s datastore.Datastore) *MessageKeystore
NewMessageKeystore instantiate a new MessageKeystore
func (*MessageKeystore) GetDeviceSecret ¶ added in v2.66.1
func (m *MessageKeystore) GetDeviceSecret(g *bertytypes.Group, acc DeviceKeystore) (*bertytypes.DeviceSecret, error)
func (*MessageKeystore) OpenEnvelope ¶ added in v2.66.1
func (m *MessageKeystore) OpenEnvelope(ctx context.Context, g *bertytypes.Group, ownPK crypto.PubKey, data []byte, id cid.Cid) (*bertytypes.MessageHeaders, []byte, error)
func (*MessageKeystore) RegisterChainKey ¶ added in v2.66.1
func (m *MessageKeystore) RegisterChainKey(g *bertytypes.Group, devicePK crypto.PubKey, ds *bertytypes.DeviceSecret, isOwnPK bool) error
func (*MessageKeystore) SealEnvelope ¶ added in v2.66.1
func (m *MessageKeystore) SealEnvelope(ctx context.Context, g *bertytypes.Group, deviceSK crypto.PrivKey, payload []byte) ([]byte, error)
type Opts ¶
type Opts struct { Logger *zap.Logger IpfsCoreAPI ipfsutil.ExtendedCoreAPI DeviceKeystore DeviceKeystore MessageKeystore *MessageKeystore RootContext context.Context RootDatastore datastore.Batching OrbitDirectory string OrbitCache cache.Interface TinderDriver tinder.Driver RendezvousRotationBase time.Duration Host host.Host // contains filtered or unexported fields }
Opts contains optional configuration flags for building a new Client
type OwnMemberDevice ¶
OwnMemberDevice is own local device part of a group
func (*OwnMemberDevice) Public ¶
func (d *OwnMemberDevice) Public() *MemberDevice
type ProtocolServiceClient ¶
type ProtocolServiceClient interface { // InstanceExportData exports instance data InstanceExportData(ctx context.Context, in *bertytypes.InstanceExportData_Request, opts ...grpc.CallOption) (*bertytypes.InstanceExportData_Reply, error) // InstanceGetConfiguration gets current configuration of this protocol instance InstanceGetConfiguration(ctx context.Context, in *bertytypes.InstanceGetConfiguration_Request, opts ...grpc.CallOption) (*bertytypes.InstanceGetConfiguration_Reply, error) // ContactRequestReference retrieves the information required to create a reference (types.ie. included in a shareable link) to the current account ContactRequestReference(ctx context.Context, in *bertytypes.ContactRequestReference_Request, opts ...grpc.CallOption) (*bertytypes.ContactRequestReference_Reply, error) // ContactRequestDisable disables incoming contact requests ContactRequestDisable(ctx context.Context, in *bertytypes.ContactRequestDisable_Request, opts ...grpc.CallOption) (*bertytypes.ContactRequestDisable_Reply, error) // ContactRequestEnable enables incoming contact requests ContactRequestEnable(ctx context.Context, in *bertytypes.ContactRequestEnable_Request, opts ...grpc.CallOption) (*bertytypes.ContactRequestEnable_Reply, error) // ContactRequestResetReference changes the contact request reference ContactRequestResetReference(ctx context.Context, in *bertytypes.ContactRequestResetReference_Request, opts ...grpc.CallOption) (*bertytypes.ContactRequestResetReference_Reply, error) // ContactRequestSend attempt to send a contact request ContactRequestSend(ctx context.Context, in *bertytypes.ContactRequestSend_Request, opts ...grpc.CallOption) (*bertytypes.ContactRequestSend_Reply, error) // ContactRequestAccept accepts a contact request ContactRequestAccept(ctx context.Context, in *bertytypes.ContactRequestAccept_Request, opts ...grpc.CallOption) (*bertytypes.ContactRequestAccept_Reply, error) // ContactRequestDiscard ignores a contact request, without informing the other user ContactRequestDiscard(ctx context.Context, in *bertytypes.ContactRequestDiscard_Request, opts ...grpc.CallOption) (*bertytypes.ContactRequestDiscard_Reply, error) // ContactBlock blocks a contact from sending requests ContactBlock(ctx context.Context, in *bertytypes.ContactBlock_Request, opts ...grpc.CallOption) (*bertytypes.ContactBlock_Reply, error) // ContactUnblock unblocks a contact from sending requests ContactUnblock(ctx context.Context, in *bertytypes.ContactUnblock_Request, opts ...grpc.CallOption) (*bertytypes.ContactUnblock_Reply, error) // ContactAliasKeySend send an alias key to a contact, the contact will be able to assert that your account is being present on a multi-member group ContactAliasKeySend(ctx context.Context, in *bertytypes.ContactAliasKeySend_Request, opts ...grpc.CallOption) (*bertytypes.ContactAliasKeySend_Reply, error) // MultiMemberGroupCreate creates a new multi-member group MultiMemberGroupCreate(ctx context.Context, in *bertytypes.MultiMemberGroupCreate_Request, opts ...grpc.CallOption) (*bertytypes.MultiMemberGroupCreate_Reply, error) // MultiMemberGroupJoin joins a multi-member group MultiMemberGroupJoin(ctx context.Context, in *bertytypes.MultiMemberGroupJoin_Request, opts ...grpc.CallOption) (*bertytypes.MultiMemberGroupJoin_Reply, error) // MultiMemberGroupLeave leaves a multi-member group MultiMemberGroupLeave(ctx context.Context, in *bertytypes.MultiMemberGroupLeave_Request, opts ...grpc.CallOption) (*bertytypes.MultiMemberGroupLeave_Reply, error) // MultiMemberGroupAliasResolverDisclose discloses your alias resolver key MultiMemberGroupAliasResolverDisclose(ctx context.Context, in *bertytypes.MultiMemberGroupAliasResolverDisclose_Request, opts ...grpc.CallOption) (*bertytypes.MultiMemberGroupAliasResolverDisclose_Reply, error) // MultiMemberGroupAdminRoleGrant grants an admin role to a group member MultiMemberGroupAdminRoleGrant(ctx context.Context, in *bertytypes.MultiMemberGroupAdminRoleGrant_Request, opts ...grpc.CallOption) (*bertytypes.MultiMemberGroupAdminRoleGrant_Reply, error) // MultiMemberGroupInvitationCreate creates an invitation to a multi-member group MultiMemberGroupInvitationCreate(ctx context.Context, in *bertytypes.MultiMemberGroupInvitationCreate_Request, opts ...grpc.CallOption) (*bertytypes.MultiMemberGroupInvitationCreate_Reply, error) // AppMetadataSend adds an app event to the metadata store, the message is encrypted using a symmetric key and readable by future group members AppMetadataSend(ctx context.Context, in *bertytypes.AppMetadataSend_Request, opts ...grpc.CallOption) (*bertytypes.AppMetadataSend_Reply, error) // AppMessageSend adds an app event to the message store, the message is encrypted using a derived key and readable by current group members AppMessageSend(ctx context.Context, in *bertytypes.AppMessageSend_Request, opts ...grpc.CallOption) (*bertytypes.AppMessageSend_Reply, error) // GroupMetadataSubscribe subscribes to a group metadata updates (types.or it can also retrieve the history) GroupMetadataSubscribe(ctx context.Context, in *bertytypes.GroupMetadataSubscribe_Request, opts ...grpc.CallOption) (ProtocolService_GroupMetadataSubscribeClient, error) // GroupMessageSubscribe subscribes to a group message updates (types.or it can also retrieve the history) GroupMessageSubscribe(ctx context.Context, in *bertytypes.GroupMessageSubscribe_Request, opts ...grpc.CallOption) (ProtocolService_GroupMessageSubscribeClient, error) // GroupMetadataList replays metadata events from the group GroupMetadataList(ctx context.Context, in *bertytypes.GroupMetadataList_Request, opts ...grpc.CallOption) (ProtocolService_GroupMetadataListClient, error) // GroupMessageList replays message events from the group GroupMessageList(ctx context.Context, in *bertytypes.GroupMessageList_Request, opts ...grpc.CallOption) (ProtocolService_GroupMessageListClient, error) // GroupInfo retrieves information about a group GroupInfo(ctx context.Context, in *bertytypes.GroupInfo_Request, opts ...grpc.CallOption) (*bertytypes.GroupInfo_Reply, error) // ActivateGroup explicitly opens a group, groups are automatically enabled when actions are performed on them ActivateGroup(ctx context.Context, in *bertytypes.ActivateGroup_Request, opts ...grpc.CallOption) (*bertytypes.ActivateGroup_Reply, error) // DeactivateGroup closes a group DeactivateGroup(ctx context.Context, in *bertytypes.DeactivateGroup_Request, opts ...grpc.CallOption) (*bertytypes.DeactivateGroup_Reply, error) DebugListGroups(ctx context.Context, in *bertytypes.DebugListGroups_Request, opts ...grpc.CallOption) (ProtocolService_DebugListGroupsClient, error) DebugInspectGroupStore(ctx context.Context, in *bertytypes.DebugInspectGroupStore_Request, opts ...grpc.CallOption) (ProtocolService_DebugInspectGroupStoreClient, error) DebugGroup(ctx context.Context, in *bertytypes.DebugGroup_Request, opts ...grpc.CallOption) (*bertytypes.DebugGroup_Reply, error) }
ProtocolServiceClient is the client API for ProtocolService service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
func NewProtocolServiceClient ¶
func NewProtocolServiceClient(cc *grpc.ClientConn) ProtocolServiceClient
type ProtocolServiceServer ¶
type ProtocolServiceServer interface { // InstanceExportData exports instance data InstanceExportData(context.Context, *bertytypes.InstanceExportData_Request) (*bertytypes.InstanceExportData_Reply, error) // InstanceGetConfiguration gets current configuration of this protocol instance InstanceGetConfiguration(context.Context, *bertytypes.InstanceGetConfiguration_Request) (*bertytypes.InstanceGetConfiguration_Reply, error) // ContactRequestReference retrieves the information required to create a reference (types.ie. included in a shareable link) to the current account ContactRequestReference(context.Context, *bertytypes.ContactRequestReference_Request) (*bertytypes.ContactRequestReference_Reply, error) // ContactRequestDisable disables incoming contact requests ContactRequestDisable(context.Context, *bertytypes.ContactRequestDisable_Request) (*bertytypes.ContactRequestDisable_Reply, error) // ContactRequestEnable enables incoming contact requests ContactRequestEnable(context.Context, *bertytypes.ContactRequestEnable_Request) (*bertytypes.ContactRequestEnable_Reply, error) // ContactRequestResetReference changes the contact request reference ContactRequestResetReference(context.Context, *bertytypes.ContactRequestResetReference_Request) (*bertytypes.ContactRequestResetReference_Reply, error) // ContactRequestSend attempt to send a contact request ContactRequestSend(context.Context, *bertytypes.ContactRequestSend_Request) (*bertytypes.ContactRequestSend_Reply, error) // ContactRequestAccept accepts a contact request ContactRequestAccept(context.Context, *bertytypes.ContactRequestAccept_Request) (*bertytypes.ContactRequestAccept_Reply, error) // ContactRequestDiscard ignores a contact request, without informing the other user ContactRequestDiscard(context.Context, *bertytypes.ContactRequestDiscard_Request) (*bertytypes.ContactRequestDiscard_Reply, error) // ContactBlock blocks a contact from sending requests ContactBlock(context.Context, *bertytypes.ContactBlock_Request) (*bertytypes.ContactBlock_Reply, error) // ContactUnblock unblocks a contact from sending requests ContactUnblock(context.Context, *bertytypes.ContactUnblock_Request) (*bertytypes.ContactUnblock_Reply, error) // ContactAliasKeySend send an alias key to a contact, the contact will be able to assert that your account is being present on a multi-member group ContactAliasKeySend(context.Context, *bertytypes.ContactAliasKeySend_Request) (*bertytypes.ContactAliasKeySend_Reply, error) // MultiMemberGroupCreate creates a new multi-member group MultiMemberGroupCreate(context.Context, *bertytypes.MultiMemberGroupCreate_Request) (*bertytypes.MultiMemberGroupCreate_Reply, error) // MultiMemberGroupJoin joins a multi-member group MultiMemberGroupJoin(context.Context, *bertytypes.MultiMemberGroupJoin_Request) (*bertytypes.MultiMemberGroupJoin_Reply, error) // MultiMemberGroupLeave leaves a multi-member group MultiMemberGroupLeave(context.Context, *bertytypes.MultiMemberGroupLeave_Request) (*bertytypes.MultiMemberGroupLeave_Reply, error) // MultiMemberGroupAliasResolverDisclose discloses your alias resolver key MultiMemberGroupAliasResolverDisclose(context.Context, *bertytypes.MultiMemberGroupAliasResolverDisclose_Request) (*bertytypes.MultiMemberGroupAliasResolverDisclose_Reply, error) // MultiMemberGroupAdminRoleGrant grants an admin role to a group member MultiMemberGroupAdminRoleGrant(context.Context, *bertytypes.MultiMemberGroupAdminRoleGrant_Request) (*bertytypes.MultiMemberGroupAdminRoleGrant_Reply, error) // MultiMemberGroupInvitationCreate creates an invitation to a multi-member group MultiMemberGroupInvitationCreate(context.Context, *bertytypes.MultiMemberGroupInvitationCreate_Request) (*bertytypes.MultiMemberGroupInvitationCreate_Reply, error) // AppMetadataSend adds an app event to the metadata store, the message is encrypted using a symmetric key and readable by future group members AppMetadataSend(context.Context, *bertytypes.AppMetadataSend_Request) (*bertytypes.AppMetadataSend_Reply, error) // AppMessageSend adds an app event to the message store, the message is encrypted using a derived key and readable by current group members AppMessageSend(context.Context, *bertytypes.AppMessageSend_Request) (*bertytypes.AppMessageSend_Reply, error) // GroupMetadataSubscribe subscribes to a group metadata updates (types.or it can also retrieve the history) GroupMetadataSubscribe(*bertytypes.GroupMetadataSubscribe_Request, ProtocolService_GroupMetadataSubscribeServer) error // GroupMessageSubscribe subscribes to a group message updates (types.or it can also retrieve the history) GroupMessageSubscribe(*bertytypes.GroupMessageSubscribe_Request, ProtocolService_GroupMessageSubscribeServer) error // GroupMetadataList replays metadata events from the group GroupMetadataList(*bertytypes.GroupMetadataList_Request, ProtocolService_GroupMetadataListServer) error // GroupMessageList replays message events from the group GroupMessageList(*bertytypes.GroupMessageList_Request, ProtocolService_GroupMessageListServer) error // GroupInfo retrieves information about a group GroupInfo(context.Context, *bertytypes.GroupInfo_Request) (*bertytypes.GroupInfo_Reply, error) // ActivateGroup explicitly opens a group, groups are automatically enabled when actions are performed on them ActivateGroup(context.Context, *bertytypes.ActivateGroup_Request) (*bertytypes.ActivateGroup_Reply, error) // DeactivateGroup closes a group DeactivateGroup(context.Context, *bertytypes.DeactivateGroup_Request) (*bertytypes.DeactivateGroup_Reply, error) DebugListGroups(*bertytypes.DebugListGroups_Request, ProtocolService_DebugListGroupsServer) error DebugInspectGroupStore(*bertytypes.DebugInspectGroupStore_Request, ProtocolService_DebugInspectGroupStoreServer) error DebugGroup(context.Context, *bertytypes.DebugGroup_Request) (*bertytypes.DebugGroup_Reply, error) }
ProtocolServiceServer is the server API for ProtocolService service.
type ProtocolService_DebugInspectGroupStoreClient ¶ added in v2.61.0
type ProtocolService_DebugInspectGroupStoreClient interface { Recv() (*bertytypes.DebugInspectGroupStore_Reply, error) grpc.ClientStream }
type ProtocolService_DebugInspectGroupStoreServer ¶ added in v2.61.0
type ProtocolService_DebugInspectGroupStoreServer interface { Send(*bertytypes.DebugInspectGroupStore_Reply) error grpc.ServerStream }
type ProtocolService_DebugListGroupsClient ¶ added in v2.61.0
type ProtocolService_DebugListGroupsClient interface { Recv() (*bertytypes.DebugListGroups_Reply, error) grpc.ClientStream }
type ProtocolService_DebugListGroupsServer ¶ added in v2.61.0
type ProtocolService_DebugListGroupsServer interface { Send(*bertytypes.DebugListGroups_Reply) error grpc.ServerStream }
type ProtocolService_GroupMessageListClient ¶
type ProtocolService_GroupMessageListClient interface { Recv() (*bertytypes.GroupMessageEvent, error) grpc.ClientStream }
type ProtocolService_GroupMessageListServer ¶
type ProtocolService_GroupMessageListServer interface { Send(*bertytypes.GroupMessageEvent) error grpc.ServerStream }
type ProtocolService_GroupMessageSubscribeClient ¶
type ProtocolService_GroupMessageSubscribeClient interface { Recv() (*bertytypes.GroupMessageEvent, error) grpc.ClientStream }
type ProtocolService_GroupMessageSubscribeServer ¶
type ProtocolService_GroupMessageSubscribeServer interface { Send(*bertytypes.GroupMessageEvent) error grpc.ServerStream }
type ProtocolService_GroupMetadataListClient ¶
type ProtocolService_GroupMetadataListClient interface { Recv() (*bertytypes.GroupMetadataEvent, error) grpc.ClientStream }
type ProtocolService_GroupMetadataListServer ¶
type ProtocolService_GroupMetadataListServer interface { Send(*bertytypes.GroupMetadataEvent) error grpc.ServerStream }
type ProtocolService_GroupMetadataSubscribeClient ¶
type ProtocolService_GroupMetadataSubscribeClient interface { Recv() (*bertytypes.GroupMetadataEvent, error) grpc.ClientStream }
type ProtocolService_GroupMetadataSubscribeServer ¶
type ProtocolService_GroupMetadataSubscribeServer interface { Send(*bertytypes.GroupMetadataEvent) error grpc.ServerStream }
type Service ¶ added in v2.35.0
type Service interface { ProtocolServiceServer Close() error Status() Status }
Service is the main Berty Protocol interface
func New ¶
New initializes a new Service
Example (Basic) ¶
package main import ( "context" "fmt" "berty.tech/berty/v2/go/pkg/bertyprotocol" "berty.tech/berty/v2/go/pkg/bertytypes" ) func main() { client, err := bertyprotocol.New(bertyprotocol.Opts{}) if err != nil { panic(err) } ret, err := client.InstanceGetConfiguration(context.Background(), &bertytypes.InstanceGetConfiguration_Request{}) if err != nil { panic(err) } for _, listener := range ret.Listeners { if listener == "/p2p-circuit" { fmt.Println(listener) } } }
Output: /p2p-circuit
type TestingOpts ¶ added in v2.39.0
type TestingProtocol ¶ added in v2.39.0
type TestingProtocol struct { Opts *Opts Service Service Client Client IPFS ipfsutil.CoreAPIMock }
func NewTestingProtocol ¶ added in v2.39.0
func NewTestingProtocol(ctx context.Context, t *testing.T, opts *TestingOpts) (*TestingProtocol, func())
type UnimplementedProtocolServiceServer ¶
type UnimplementedProtocolServiceServer struct { }
UnimplementedProtocolServiceServer can be embedded to have forward compatible implementations.
func (*UnimplementedProtocolServiceServer) ActivateGroup ¶
func (*UnimplementedProtocolServiceServer) ActivateGroup(ctx context.Context, req *bertytypes.ActivateGroup_Request) (*bertytypes.ActivateGroup_Reply, error)
func (*UnimplementedProtocolServiceServer) AppMessageSend ¶
func (*UnimplementedProtocolServiceServer) AppMessageSend(ctx context.Context, req *bertytypes.AppMessageSend_Request) (*bertytypes.AppMessageSend_Reply, error)
func (*UnimplementedProtocolServiceServer) AppMetadataSend ¶
func (*UnimplementedProtocolServiceServer) AppMetadataSend(ctx context.Context, req *bertytypes.AppMetadataSend_Request) (*bertytypes.AppMetadataSend_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactAliasKeySend ¶
func (*UnimplementedProtocolServiceServer) ContactAliasKeySend(ctx context.Context, req *bertytypes.ContactAliasKeySend_Request) (*bertytypes.ContactAliasKeySend_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactBlock ¶
func (*UnimplementedProtocolServiceServer) ContactBlock(ctx context.Context, req *bertytypes.ContactBlock_Request) (*bertytypes.ContactBlock_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactRequestAccept ¶
func (*UnimplementedProtocolServiceServer) ContactRequestAccept(ctx context.Context, req *bertytypes.ContactRequestAccept_Request) (*bertytypes.ContactRequestAccept_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactRequestDisable ¶
func (*UnimplementedProtocolServiceServer) ContactRequestDisable(ctx context.Context, req *bertytypes.ContactRequestDisable_Request) (*bertytypes.ContactRequestDisable_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactRequestDiscard ¶
func (*UnimplementedProtocolServiceServer) ContactRequestDiscard(ctx context.Context, req *bertytypes.ContactRequestDiscard_Request) (*bertytypes.ContactRequestDiscard_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactRequestEnable ¶
func (*UnimplementedProtocolServiceServer) ContactRequestEnable(ctx context.Context, req *bertytypes.ContactRequestEnable_Request) (*bertytypes.ContactRequestEnable_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactRequestReference ¶
func (*UnimplementedProtocolServiceServer) ContactRequestReference(ctx context.Context, req *bertytypes.ContactRequestReference_Request) (*bertytypes.ContactRequestReference_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactRequestResetReference ¶
func (*UnimplementedProtocolServiceServer) ContactRequestResetReference(ctx context.Context, req *bertytypes.ContactRequestResetReference_Request) (*bertytypes.ContactRequestResetReference_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactRequestSend ¶
func (*UnimplementedProtocolServiceServer) ContactRequestSend(ctx context.Context, req *bertytypes.ContactRequestSend_Request) (*bertytypes.ContactRequestSend_Reply, error)
func (*UnimplementedProtocolServiceServer) ContactUnblock ¶
func (*UnimplementedProtocolServiceServer) ContactUnblock(ctx context.Context, req *bertytypes.ContactUnblock_Request) (*bertytypes.ContactUnblock_Reply, error)
func (*UnimplementedProtocolServiceServer) DeactivateGroup ¶
func (*UnimplementedProtocolServiceServer) DeactivateGroup(ctx context.Context, req *bertytypes.DeactivateGroup_Request) (*bertytypes.DeactivateGroup_Reply, error)
func (*UnimplementedProtocolServiceServer) DebugGroup ¶ added in v2.92.0
func (*UnimplementedProtocolServiceServer) DebugGroup(ctx context.Context, req *bertytypes.DebugGroup_Request) (*bertytypes.DebugGroup_Reply, error)
func (*UnimplementedProtocolServiceServer) DebugInspectGroupStore ¶ added in v2.61.0
func (*UnimplementedProtocolServiceServer) DebugInspectGroupStore(req *bertytypes.DebugInspectGroupStore_Request, srv ProtocolService_DebugInspectGroupStoreServer) error
func (*UnimplementedProtocolServiceServer) DebugListGroups ¶ added in v2.61.0
func (*UnimplementedProtocolServiceServer) DebugListGroups(req *bertytypes.DebugListGroups_Request, srv ProtocolService_DebugListGroupsServer) error
func (*UnimplementedProtocolServiceServer) GroupInfo ¶
func (*UnimplementedProtocolServiceServer) GroupInfo(ctx context.Context, req *bertytypes.GroupInfo_Request) (*bertytypes.GroupInfo_Reply, error)
func (*UnimplementedProtocolServiceServer) GroupMessageList ¶
func (*UnimplementedProtocolServiceServer) GroupMessageList(req *bertytypes.GroupMessageList_Request, srv ProtocolService_GroupMessageListServer) error
func (*UnimplementedProtocolServiceServer) GroupMessageSubscribe ¶
func (*UnimplementedProtocolServiceServer) GroupMessageSubscribe(req *bertytypes.GroupMessageSubscribe_Request, srv ProtocolService_GroupMessageSubscribeServer) error
func (*UnimplementedProtocolServiceServer) GroupMetadataList ¶
func (*UnimplementedProtocolServiceServer) GroupMetadataList(req *bertytypes.GroupMetadataList_Request, srv ProtocolService_GroupMetadataListServer) error
func (*UnimplementedProtocolServiceServer) GroupMetadataSubscribe ¶
func (*UnimplementedProtocolServiceServer) GroupMetadataSubscribe(req *bertytypes.GroupMetadataSubscribe_Request, srv ProtocolService_GroupMetadataSubscribeServer) error
func (*UnimplementedProtocolServiceServer) InstanceExportData ¶
func (*UnimplementedProtocolServiceServer) InstanceExportData(ctx context.Context, req *bertytypes.InstanceExportData_Request) (*bertytypes.InstanceExportData_Reply, error)
func (*UnimplementedProtocolServiceServer) InstanceGetConfiguration ¶
func (*UnimplementedProtocolServiceServer) InstanceGetConfiguration(ctx context.Context, req *bertytypes.InstanceGetConfiguration_Request) (*bertytypes.InstanceGetConfiguration_Reply, error)
func (*UnimplementedProtocolServiceServer) MultiMemberGroupAdminRoleGrant ¶
func (*UnimplementedProtocolServiceServer) MultiMemberGroupAdminRoleGrant(ctx context.Context, req *bertytypes.MultiMemberGroupAdminRoleGrant_Request) (*bertytypes.MultiMemberGroupAdminRoleGrant_Reply, error)
func (*UnimplementedProtocolServiceServer) MultiMemberGroupAliasResolverDisclose ¶
func (*UnimplementedProtocolServiceServer) MultiMemberGroupAliasResolverDisclose(ctx context.Context, req *bertytypes.MultiMemberGroupAliasResolverDisclose_Request) (*bertytypes.MultiMemberGroupAliasResolverDisclose_Reply, error)
func (*UnimplementedProtocolServiceServer) MultiMemberGroupCreate ¶
func (*UnimplementedProtocolServiceServer) MultiMemberGroupCreate(ctx context.Context, req *bertytypes.MultiMemberGroupCreate_Request) (*bertytypes.MultiMemberGroupCreate_Reply, error)
func (*UnimplementedProtocolServiceServer) MultiMemberGroupInvitationCreate ¶
func (*UnimplementedProtocolServiceServer) MultiMemberGroupInvitationCreate(ctx context.Context, req *bertytypes.MultiMemberGroupInvitationCreate_Request) (*bertytypes.MultiMemberGroupInvitationCreate_Reply, error)
func (*UnimplementedProtocolServiceServer) MultiMemberGroupJoin ¶
func (*UnimplementedProtocolServiceServer) MultiMemberGroupJoin(ctx context.Context, req *bertytypes.MultiMemberGroupJoin_Request) (*bertytypes.MultiMemberGroupJoin_Reply, error)
func (*UnimplementedProtocolServiceServer) MultiMemberGroupLeave ¶
func (*UnimplementedProtocolServiceServer) MultiMemberGroupLeave(ctx context.Context, req *bertytypes.MultiMemberGroupLeave_Request) (*bertytypes.MultiMemberGroupLeave_Reply, error)
Source Files ¶
- api_app.go
- api_client.go
- api_contact.go
- api_contactrequest.go
- api_debug.go
- api_event.go
- api_group.go
- api_multimember.go
- bertyprotocol.pb.go
- bertyprotocol.pb.gw.go
- client.go
- contact_request_manager.go
- doc.go
- events.go
- events_sig_checkers.go
- group.go
- group_context.go
- iface_account.go
- keystore_device.go
- keystore_message.go
- keystore_message_utils.go
- orbitdb.go
- orbitdb_datastore_cache.go
- orbitdb_signed_entry_accesscontroller.go
- orbitdb_signed_entry_identity_provider.go
- orbitdb_signed_entry_keystore.go
- service.go
- service_group.go
- store_message.go
- store_metadata.go
- store_metadata_index.go
- store_options.go
- testing.go
- tinder_swiper.go