Documentation
¶
Overview ¶
Package telegram contains the Telegram network experiment.
See https://github.com/ooni/spec/blob/master/nettests/ts-020-telegram.md.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var DatacenterIPAddrs = []string{
"149.154.175.50",
"149.154.167.51",
"149.154.175.100",
"149.154.167.91",
"149.154.171.5",
"95.161.76.100",
}
DatacenterIPAddrs contains the list of Telegram data centers IP addresses to measure.
Functions ¶
func NewExperimentMeasurer ¶
func NewExperimentMeasurer(config Config) model.ExperimentMeasurer
NewExperimentMeasurer creates a new ExperimentMeasurer.
Types ¶
type Measurer ¶
type Measurer struct {
// Config contains the experiment settings. If empty we
// will be using default settings.
Config Config
// Getter is an optional getter to be used for testing.
Getter urlgetter.MultiGetter
}
Measurer performs the measurement
func (Measurer) ExperimentName ¶
ExperimentName implements ExperimentMeasurer.ExperimentName
func (Measurer) ExperimentVersion ¶
ExperimentVersion implements ExperimentMeasurer.ExperimentVersion
type SummaryKeys ¶
type SummaryKeys struct {
HTTPBlocking bool `json:"telegram_http_blocking"`
TCPBlocking bool `json:"telegram_tcp_blocking"`
WebBlocking bool `json:"telegram_web_blocking"`
IsAnomaly bool `json:"-"`
}
SummaryKeys contains summary keys for this experiment.
func (*SummaryKeys) Anomaly ¶ added in v0.28.0
func (sk *SummaryKeys) Anomaly() bool
Anomaly implements model.MeasurementSummaryKeys.
type TestKeys ¶
type TestKeys struct {
urlgetter.TestKeys
TelegramHTTPBlocking bool `json:"telegram_http_blocking"`
TelegramTCPBlocking bool `json:"telegram_tcp_blocking"`
TelegramWebFailure *string `json:"telegram_web_failure"`
TelegramWebStatus string `json:"telegram_web_status"`
}
TestKeys contains telegram test keys.
func (*TestKeys) MeasurementSummaryKeys ¶ added in v0.28.0
func (tk *TestKeys) MeasurementSummaryKeys() model.MeasurementSummaryKeys
MeasurementSummaryKeys implements model.MeasurementSummaryKeysProvider.
func (*TestKeys) Update ¶
func (tk *TestKeys) Update(v urlgetter.MultiOutput)
Update updates the TestKeys using the given MultiOutput result.