Current section

Files

Jump to
discord_gleam src discord_gleam@ws@packets@identify.erl
Raw

src/discord_gleam@ws@packets@identify.erl

-module(discord_gleam@ws@packets@identify).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([create_packet/2]).
-export_type([identify_properties/0, indentify_data/0, identify_packet/0]).
-type identify_properties() :: {identify_properties,
binary(),
binary(),
binary()}.
-type indentify_data() :: {indentify_data,
binary(),
integer(),
identify_properties()}.
-type identify_packet() :: {identify_packet, integer(), indentify_data()}.
-file("/home/kristian/Desktop/SideProjects/discord_gleam/src/discord_gleam/ws/packets/identify.gleam", 16).
-spec create_packet(binary(), discord_gleam@discord@intents:intents()) -> binary().
create_packet(Token, Intents) ->
Raw_packet = {identify_packet,
2,
{indentify_data,
Token,
discord_gleam@discord@intents:intents_to_bitfield(Intents),
{identify_properties,
<<"unix"/utf8>>,
<<"discord_gleam"/utf8>>,
<<"discord_gleam"/utf8>>}}},
_pipe = gleam@json:object(
[{<<"op"/utf8>>, gleam@json:int(erlang:element(2, Raw_packet))},
{<<"d"/utf8>>,
gleam@json:object(
[{<<"token"/utf8>>,
gleam@json:string(
erlang:element(2, erlang:element(3, Raw_packet))
)},
{<<"intents"/utf8>>,
gleam@json:int(
erlang:element(3, erlang:element(3, Raw_packet))
)},
{<<"properties"/utf8>>,
gleam@json:object(
[{<<"os"/utf8>>,
gleam@json:string(
erlang:element(
2,
erlang:element(
4,
erlang:element(
3,
Raw_packet
)
)
)
)},
{<<"browser"/utf8>>,
gleam@json:string(
erlang:element(
3,
erlang:element(
4,
erlang:element(
3,
Raw_packet
)
)
)
)},
{<<"device"/utf8>>,
gleam@json:string(
erlang:element(
4,
erlang:element(
4,
erlang:element(
3,
Raw_packet
)
)
)
)}]
)}]
)}]
),
gleam@json:to_string(_pipe).