···130- `CommitMessage` (`#commit`) - represents a change in a user's repo; most messages are of this type
131- `IdentityMessage` (`#identity`) - notifies about a change in user's DID document, e.g. a handle change or a migration to a new PDS
132- `AccountMessage` (`#account`) - notifies about a change of an account's status (de/activation, suspension, deletion)
133-- `HandleMessage` (`#handle` - deprecated) - when a different handle is assigned to a user's DID
134-- `TombstoneMessage` (`#tombstone` - deprecated) - when an account is deleted
135- `LabelsMessage` (`#labels`) - only used in `subscribe_labels` endpoint
136- `InfoMessage` (`#info`) - a protocol error message, e.g. about an invalid cursor parameter
137- `UnknownMessage` is used for other unrecognized message types
138-139-`#handle` and `#tombstone` events are considered deprecated, replaced by `#identity` and `#account` respectively. They are still being emitted at the moment (in parallel with the newer event types), but they might stop being sent at any moment, so it's recommended that you don't rely on those.
140141`Skyfall::Firehose::Message` and `Skyfall::Jetstream::Message` variants of message classes should have more or less the same interface, except when a given field is not included in one of the formats.
142
···130- `CommitMessage` (`#commit`) - represents a change in a user's repo; most messages are of this type
131- `IdentityMessage` (`#identity`) - notifies about a change in user's DID document, e.g. a handle change or a migration to a new PDS
132- `AccountMessage` (`#account`) - notifies about a change of an account's status (de/activation, suspension, deletion)
00133- `LabelsMessage` (`#labels`) - only used in `subscribe_labels` endpoint
134- `InfoMessage` (`#info`) - a protocol error message, e.g. about an invalid cursor parameter
135- `UnknownMessage` is used for other unrecognized message types
00136137`Skyfall::Firehose::Message` and `Skyfall::Jetstream::Message` variants of message classes should have more or less the same interface, except when a given field is not included in one of the formats.
138
-14
lib/skyfall/firehose/handle_message.rb
···1-require_relative '../firehose'
2-3-module Skyfall
4-5- #
6- # Note: this event type is deprecated and will stop being emitted at some point.
7- # You should instead listen for 'identity' events (Skyfall::Firehose::IdentityMessage).
8- #
9- class Firehose::HandleMessage < Firehose::Message
10- def handle
11- @data_object['handle']
12- end
13- end
14-end
···00000000000000
-4
lib/skyfall/firehose/message.rb
···1112 require_relative 'account_message'
13 require_relative 'commit_message'
14- require_relative 'handle_message'
15 require_relative 'identity_message'
16 require_relative 'info_message'
17 require_relative 'labels_message'
18 require_relative 'sync_message'
19- require_relative 'tombstone_message'
20 require_relative 'unknown_message'
2122 attr_reader :type, :did, :seq
···31 message_class = case type_object['t']
32 when '#account' then Firehose::AccountMessage
33 when '#commit' then Firehose::CommitMessage
34- when '#handle' then Firehose::HandleMessage
35 when '#identity' then Firehose::IdentityMessage
36 when '#info' then Firehose::InfoMessage
37 when '#labels' then Firehose::LabelsMessage
38 when '#sync' then Firehose::SyncMessage
39- when '#tombstone' then Firehose::TombstoneMessage
40 else Firehose::UnknownMessage
41 end
42
···1112 require_relative 'account_message'
13 require_relative 'commit_message'
014 require_relative 'identity_message'
15 require_relative 'info_message'
16 require_relative 'labels_message'
17 require_relative 'sync_message'
018 require_relative 'unknown_message'
1920 attr_reader :type, :did, :seq
···29 message_class = case type_object['t']
30 when '#account' then Firehose::AccountMessage
31 when '#commit' then Firehose::CommitMessage
032 when '#identity' then Firehose::IdentityMessage
33 when '#info' then Firehose::InfoMessage
34 when '#labels' then Firehose::LabelsMessage
35 when '#sync' then Firehose::SyncMessage
036 else Firehose::UnknownMessage
37 end
38
-11
lib/skyfall/firehose/tombstone_message.rb
···1-require_relative '../firehose'
2-3-module Skyfall
4-5- #
6- # Note: this event type is deprecated and will stop being emitted at some point.
7- # You should instead listen for 'account' events (Skyfall::Firehose::AccountMessage).
8- #
9- class Firehose::TombstoneMessage < Firehose::Message
10- end
11-end