matterbridge/vendor/go.mau.fi/whatsmeow/socket/constants.go

44 lines
1.2 KiB
Go

// Copyright (c) 2021 Tulir Asokan
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
// Package socket implements a subset of the Noise protocol framework on top of websockets as used by WhatsApp.
//
// There shouldn't be any need to manually interact with this package.
// The Client struct in the top-level whatsmeow package handles everything.
package socket
import (
"errors"
"go.mau.fi/whatsmeow/binary/token"
)
const (
// Origin is the Origin header for all WhatsApp websocket connections
Origin = "https://web.whatsapp.com"
// URL is the websocket URL for the new multidevice protocol
URL = "wss://web.whatsapp.com/ws/chat"
)
const (
NoiseStartPattern = "Noise_XX_25519_AESGCM_SHA256\x00\x00\x00\x00"
WAMagicValue = 5
)
var WAConnHeader = []byte{'W', 'A', WAMagicValue, token.DictVersion}
const (
FrameMaxSize = 2 << 23
FrameLengthSize = 3
)
var (
ErrFrameTooLarge = errors.New("frame too large")
ErrSocketClosed = errors.New("frame socket is closed")
ErrSocketAlreadyOpen = errors.New("frame socket is already open")
)